diff --git a/.vs/FinalProject/DesignTimeBuild/.dtbcache.v2 b/.vs/FinalProject/DesignTimeBuild/.dtbcache.v2 index b813a0e..c60f508 100644 Binary files a/.vs/FinalProject/DesignTimeBuild/.dtbcache.v2 and b/.vs/FinalProject/DesignTimeBuild/.dtbcache.v2 differ diff --git a/.vs/FinalProject/v17/.suo b/.vs/FinalProject/v17/.suo index 0803a98..2d5d245 100644 Binary files a/.vs/FinalProject/v17/.suo and b/.vs/FinalProject/v17/.suo differ diff --git a/.vs/FinalProject/v17/DocumentLayout.backup.json b/.vs/FinalProject/v17/DocumentLayout.backup.json index f55d39b..3a585bd 100644 --- a/.vs/FinalProject/v17/DocumentLayout.backup.json +++ b/.vs/FinalProject/v17/DocumentLayout.backup.json @@ -3,97 +3,16 @@ "WorkspaceRootPath": "E:\\Github\\Group-25\\", "Documents": [ { -<<<<<<< HEAD - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\account\\register.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\register.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" + "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\reservation\\confirmation.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", + "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\reservation\\confirmation.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" }, { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\viewmodels\\accountviewmodels.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\viewmodels\\accountviewmodels.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\accountcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\accountcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\reservation\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\reservation\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\reservation.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\reservation.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\property\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\property\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\property\\editproperty.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\property\\editproperty.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\account\\reports.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\reports.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\viewreviews.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\viewreviews.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\rolehostcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\rolehostcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\managereservations.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\managereservations.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\account\\hostsummary.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\hostsummary.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\unavailability.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\unavailability.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\reservationcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\controllers\\reservationcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\reservationcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\unvdates.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\unvdates.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\unvdetails.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\unvdetails.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\review.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\review.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" -======= - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\property\\manageproperties.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\property\\manageproperties.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\controllers\\homecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\homecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 + "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\reservation\\cart.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", + "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\reservation\\cart.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" } ], "DocumentGroupContainers": [ @@ -102,315 +21,47 @@ "VerticalTabListWidth": 256, "DocumentGroups": [ { -<<<<<<< HEAD - "DockedHeight": 75, - "SelectedChildIndex": -1, - "Children": [ - { - "$type": "Bookmark", - "Name": "ST:0:0:{d78612c7-9962-4b83-95d9-268046dad23a}" - } - ] - }, - { - "DockedHeight": 589, - "SelectedChildIndex": 2, - "Children": [ - { - "$type": "Document", - "DocumentIndex": 9, - "Title": "Reports.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Reports.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\Reports.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Reports.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\Reports.cshtml", - "ViewState": "AgIAAAwAAAAAAAAAAAAAABwAAAAAAAAAAAAAAA==", -======= "DockedHeight": 37, "SelectedChildIndex": 0, "Children": [ { "$type": "Document", "DocumentIndex": 0, - "Title": "ManageProperties.cshtml", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Property\\ManageProperties.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Property\\ManageProperties.cshtml", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Property\\ManageProperties.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Property\\ManageProperties.cshtml", - "ViewState": "AgIAADAAAAAAAAAAAAAAAEsAAAAlAAAAAAAAAA==", ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 + "Title": "Confirmation.cshtml", + "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "RelativeDocumentMoniker": "FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "RelativeToolTip": "FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T17:02:56.271Z", - "IsPinned": true, - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "PropertyController.cs", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Controllers\\PropertyController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\PropertyController.cs", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Controllers\\PropertyController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\PropertyController.cs", - "ViewState": "AgIAAEkAAAAAAAAAAAAuwEUBAAAJAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T17:03:03.041Z", + "WhenOpened": "2024-12-08T22:39:36.277Z", "IsPinned": true, "EditorCaption": "" }, { "$type": "Document", "DocumentIndex": 2, - "Title": "HomeController.cs", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Controllers\\HomeController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\HomeController.cs", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Controllers\\HomeController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\HomeController.cs", - "ViewState": "AgIAABMAAAAAAAAAAAAYwBUAAAAJAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T17:25:19.642Z", - "IsPinned": true, - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 3, -<<<<<<< HEAD - "Title": "Create.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Reservation\\Create.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Reservation\\Create.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Reservation\\Create.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Reservation\\Create.cshtml", - "ViewState": "AgIAAB4AAAAAAAAAAAAAAEcAAAAmAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T17:00:27.651Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 0, - "Title": "Register.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Register.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\Register.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Register.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\Register.cshtml", - "ViewState": "AgIAAA8AAAAAAAAAAAAAABsAAAArAAAAAAAAAA==", + "Title": "Cart.cshtml", + "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Cart.cshtml", + "RelativeDocumentMoniker": "FinalProject\\Views\\Reservation\\Cart.cshtml", + "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Cart.cshtml", + "RelativeToolTip": "FinalProject\\Views\\Reservation\\Cart.cshtml", + "ViewState": "AgIAADoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T16:50:48.11Z", + "WhenOpened": "2024-12-08T22:34:53.989Z", "EditorCaption": "" }, { "$type": "Document", "DocumentIndex": 1, - "Title": "AccountViewModels.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "RelativeToolTip": "FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T06:02:33.412Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 8, - "Title": "EditProperty.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\EditProperty.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Property\\EditProperty.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\EditProperty.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Property\\EditProperty.cshtml", - "ViewState": "AgIAAAAAAAAAAAAAAAAAABkAAAAyAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T06:00:19.636Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 10, - "Title": "ViewReviews.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "ViewState": "AgIAAEsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T07:43:20.433Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 7, - "Title": "PropertyController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\PropertyController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\PropertyController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\PropertyController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\PropertyController.cs", - "ViewState": "AgIAACEBAAAAAAAAAAAcwLQAAAAjAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T07:34:33.3Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 6, - "Title": "Create.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\Create.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Property\\Create.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\Create.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Property\\Create.cshtml", - "ViewState": "AgIAAAQAAAAAAAAAAAAzwBEAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T07:05:15.874Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 12, - "Title": "ManageReservations.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "ViewState": "AgIAABIAAAAAAAAAAAAAAB4AAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T07:01:41.073Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 17, - "Title": "UnvDetails.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "ViewState": "AgIAAAYAAAAAAAAAAAAAABUAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T06:45:54.316Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 13, - "Title": "HostSummary.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\HostSummary.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\HostSummary.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\HostSummary.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\HostSummary.cshtml", - "ViewState": "AgIAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T06:25:28.443Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 4, - "Title": "Reservation.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\Reservation.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Reservation.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\Reservation.cs", - "RelativeToolTip": "FinalProject\\Models\\Reservation.cs", - "ViewState": "AgIAAA8AAAAAAAAAAAAAABgAAAAuAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:24:03.099Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 15, "Title": "ReservationController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\ReservationController.cs", + "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Controllers\\ReservationController.cs", "RelativeDocumentMoniker": "FinalProject\\Controllers\\ReservationController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\ReservationController.cs", + "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Controllers\\ReservationController.cs", "RelativeToolTip": "FinalProject\\Controllers\\ReservationController.cs", - "ViewState": "AgIAAGYAAAAAAAAAAAAAAHAAAAAMAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:23:17.003Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 14, - "Title": "Unavailability.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\Unavailability.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Unavailability.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\Unavailability.cs", - "RelativeToolTip": "FinalProject\\Models\\Unavailability.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAhAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:16:21.118Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 2, - "Title": "AccountController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\AccountController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\AccountController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\AccountController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\AccountController.cs", - "ViewState": "AgIAADkAAAAAAAAAAAAAAEEAAAAQAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:05:31.564Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 16, - "Title": "UnvDates.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "ViewState": "AgIAAAMAAAAAAAAAAAAAAAsAAAAlAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T05:56:17.045Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 11, - "Title": "RoleHostController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\RoleHostController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\RoleHostController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\RoleHostController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\RoleHostController.cs", - "ViewState": "AgIAAGoAAAAAAAAAAAAuwIIAAAA6AAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T05:51:20.273Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 18, - "Title": "Review.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\Review.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Review.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\Review.cs", - "RelativeToolTip": "FinalProject\\Models\\Review.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T05:15:20.089Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 5, -======= ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "Title": "Property.cs", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Models\\Property.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Property.cs", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Models\\Property.cs", - "RelativeToolTip": "FinalProject\\Models\\Property.cs", -<<<<<<< HEAD - "ViewState": "AgIAAD8AAAAAAAAAAAAAAGYAAAAyAAAAAAAAAA==", -======= - "ViewState": "AgIAAEkAAAAAAAAAAAAgwGYAAAAAAAAAAAAAAA==", ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 + "ViewState": "AgIAAK0BAAAAAAAAAAAswMwBAAApAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T17:23:53.522Z", + "WhenOpened": "2024-12-08T22:34:44.116Z", "EditorCaption": "" } ] diff --git a/.vs/FinalProject/v17/DocumentLayout.json b/.vs/FinalProject/v17/DocumentLayout.json index 4fc6063..0ca1216 100644 --- a/.vs/FinalProject/v17/DocumentLayout.json +++ b/.vs/FinalProject/v17/DocumentLayout.json @@ -3,97 +3,16 @@ "WorkspaceRootPath": "E:\\Github\\Group-25\\", "Documents": [ { -<<<<<<< HEAD - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\account\\register.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\register.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" + "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\reservation\\confirmation.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", + "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\reservation\\confirmation.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" }, { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\viewmodels\\accountviewmodels.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\viewmodels\\accountviewmodels.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\accountcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\accountcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\reservation\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\reservation\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\reservation.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\reservation.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\property\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\property\\create.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\property\\editproperty.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\property\\editproperty.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\account\\reports.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\reports.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\viewreviews.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\viewreviews.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\rolehostcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\rolehostcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\managereservations.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\managereservations.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\account\\hostsummary.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\hostsummary.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\unavailability.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\unavailability.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\controllers\\reservationcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\controllers\\reservationcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\reservationcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\unvdates.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\unvdates.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\views\\rolehost\\unvdetails.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\rolehost\\unvdetails.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|c:\\mis333k\\final\\finalproject\\models\\review.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\review.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" -======= - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\account\\reports.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\account\\reports.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\property\\manageproperties.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\property\\manageproperties.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\controllers\\propertycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\models\\property.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 + "AbsoluteMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|e:\\github\\group-25\\finalproject\\views\\reservation\\cart.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}", + "RelativeMoniker": "D:0:0:{F8FD7FEB-B09B-4A83-AD90-3D54038C0352}|FinalProject\\FinalProject.csproj|solutionrelative:finalproject\\views\\reservation\\cart.cshtml||{40D31677-CBC0-4297-A9EF-89D907823A98}" } ], "DocumentGroupContainers": [ @@ -102,306 +21,47 @@ "VerticalTabListWidth": 256, "DocumentGroups": [ { -<<<<<<< HEAD - "DockedHeight": 75, - "SelectedChildIndex": -1, - "Children": [ - { - "$type": "Bookmark", - "Name": "ST:0:0:{d78612c7-9962-4b83-95d9-268046dad23a}" - } - ] - }, - { - "DockedHeight": 589, -======= "DockedHeight": 37, ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "SelectedChildIndex": 2, + "SelectedChildIndex": 0, "Children": [ { "$type": "Document", -<<<<<<< HEAD - "DocumentIndex": 9, - "Title": "Reports.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Reports.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\Reports.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Reports.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\Reports.cshtml", - "ViewState": "AgIAAAwAAAAAAAAAAAAAABwAAAAAAAAAAAAAAA==", -======= - "DocumentIndex": 1, - "Title": "ManageProperties.cshtml", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Property\\ManageProperties.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Property\\ManageProperties.cshtml", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Property\\ManageProperties.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Property\\ManageProperties.cshtml", - "ViewState": "AgIAADAAAAAAAAAAAAAAAE0AAAAAAAAAAAAAAA==", ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T17:02:56.271Z", - "IsPinned": true, - "EditorCaption": "" - }, - { - "$type": "Document", -<<<<<<< HEAD - "DocumentIndex": 3, - "Title": "Create.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Reservation\\Create.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Reservation\\Create.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Reservation\\Create.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Reservation\\Create.cshtml", - "ViewState": "AgIAAB4AAAAAAAAAAAAAAEcAAAAmAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T17:00:27.651Z", - "EditorCaption": "" - }, - { - "$type": "Document", "DocumentIndex": 0, - "Title": "Register.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Register.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\Register.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\Register.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\Register.cshtml", - "ViewState": "AgIAAA8AAAAAAAAAAAAAABsAAAArAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T16:50:48.11Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "AccountViewModels.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "RelativeToolTip": "FinalProject\\Models\\ViewModels\\AccountViewModels.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T06:02:33.412Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 8, - "Title": "EditProperty.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\EditProperty.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Property\\EditProperty.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\EditProperty.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Property\\EditProperty.cshtml", - "ViewState": "AgIAAAAAAAAAAAAAAAAAABkAAAAyAAAAAAAAAA==", + "Title": "Confirmation.cshtml", + "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "RelativeDocumentMoniker": "FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "RelativeToolTip": "FinalProject\\Views\\Reservation\\Confirmation.cshtml", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T06:00:19.636Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 10, - "Title": "ViewReviews.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\ViewReviews.cshtml", - "ViewState": "AgIAAEsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T07:43:20.433Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 7, -======= - "DocumentIndex": 2, ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "Title": "PropertyController.cs", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Controllers\\PropertyController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\PropertyController.cs", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Controllers\\PropertyController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\PropertyController.cs", -<<<<<<< HEAD - "ViewState": "AgIAACEBAAAAAAAAAAAcwLQAAAAjAAAAAAAAAA==", -======= - "ViewState": "AgIAAEkAAAAAAAAAAAAuwEUBAAAJAAAAAAAAAA==", ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T17:03:03.041Z", + "WhenOpened": "2024-12-08T22:39:36.277Z", "IsPinned": true, "EditorCaption": "" }, { "$type": "Document", -<<<<<<< HEAD - "DocumentIndex": 6, - "Title": "Create.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\Create.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Property\\Create.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Property\\Create.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Property\\Create.cshtml", - "ViewState": "AgIAAAQAAAAAAAAAAAAzwBEAAAAAAAAAAAAAAA==", -======= - "DocumentIndex": 0, - "Title": "Reports.cshtml", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Account\\Reports.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\Reports.cshtml", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Account\\Reports.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\Reports.cshtml", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAAAPAAAAAAAAAA==", ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-08T17:50:08.665Z", - "EditorCaption": "" - }, - { - "$type": "Document", -<<<<<<< HEAD - "DocumentIndex": 12, - "Title": "ManageReservations.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\ManageReservations.cshtml", - "ViewState": "AgIAABIAAAAAAAAAAAAAAB4AAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T07:01:41.073Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 17, - "Title": "UnvDetails.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\UnvDetails.cshtml", - "ViewState": "AgIAAAYAAAAAAAAAAAAAABUAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T06:45:54.316Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 13, - "Title": "HostSummary.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\HostSummary.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\Account\\HostSummary.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\Account\\HostSummary.cshtml", - "RelativeToolTip": "FinalProject\\Views\\Account\\HostSummary.cshtml", - "ViewState": "AgIAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "DocumentIndex": 2, + "Title": "Cart.cshtml", + "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Cart.cshtml", + "RelativeDocumentMoniker": "FinalProject\\Views\\Reservation\\Cart.cshtml", + "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Views\\Reservation\\Cart.cshtml", + "RelativeToolTip": "FinalProject\\Views\\Reservation\\Cart.cshtml", + "ViewState": "AgIAAAAAAAAAAAAAAAAAADQAAAAAAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T06:25:28.443Z", + "WhenOpened": "2024-12-08T22:34:53.989Z", "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 4, - "Title": "Reservation.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\Reservation.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Reservation.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\Reservation.cs", - "RelativeToolTip": "FinalProject\\Models\\Reservation.cs", - "ViewState": "AgIAAA8AAAAAAAAAAAAAABgAAAAuAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:24:03.099Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 15, + "DocumentIndex": 1, "Title": "ReservationController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\ReservationController.cs", + "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Controllers\\ReservationController.cs", "RelativeDocumentMoniker": "FinalProject\\Controllers\\ReservationController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\ReservationController.cs", + "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Controllers\\ReservationController.cs", "RelativeToolTip": "FinalProject\\Controllers\\ReservationController.cs", - "ViewState": "AgIAAGYAAAAAAAAAAAAAAHAAAAAMAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:23:17.003Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 14, - "Title": "Unavailability.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\Unavailability.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Unavailability.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\Unavailability.cs", - "RelativeToolTip": "FinalProject\\Models\\Unavailability.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAhAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:16:21.118Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 2, - "Title": "AccountController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\AccountController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\AccountController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\AccountController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\AccountController.cs", - "ViewState": "AgIAADkAAAAAAAAAAAAAAEEAAAAQAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T06:05:31.564Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 16, - "Title": "UnvDates.cshtml", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "RelativeDocumentMoniker": "FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "RelativeToolTip": "FinalProject\\Views\\RoleHost\\UnvDates.cshtml", - "ViewState": "AgIAAAMAAAAAAAAAAAAAAAsAAAAlAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|", - "WhenOpened": "2024-12-07T05:56:17.045Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 11, - "Title": "RoleHostController.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Controllers\\RoleHostController.cs", - "RelativeDocumentMoniker": "FinalProject\\Controllers\\RoleHostController.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Controllers\\RoleHostController.cs", - "RelativeToolTip": "FinalProject\\Controllers\\RoleHostController.cs", - "ViewState": "AgIAAGoAAAAAAAAAAAAuwIIAAAA6AAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T05:51:20.273Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 18, - "Title": "Review.cs", - "DocumentMoniker": "C:\\mis333k\\final\\FinalProject\\Models\\Review.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Review.cs", - "ToolTip": "C:\\mis333k\\final\\FinalProject\\Models\\Review.cs", - "RelativeToolTip": "FinalProject\\Models\\Review.cs", - "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-07T05:15:20.089Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 5, -======= - "DocumentIndex": 3, ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 - "Title": "Property.cs", - "DocumentMoniker": "E:\\Github\\Group-25\\FinalProject\\Models\\Property.cs", - "RelativeDocumentMoniker": "FinalProject\\Models\\Property.cs", - "ToolTip": "E:\\Github\\Group-25\\FinalProject\\Models\\Property.cs", - "RelativeToolTip": "FinalProject\\Models\\Property.cs", -<<<<<<< HEAD - "ViewState": "AgIAAD8AAAAAAAAAAAAAAGYAAAAyAAAAAAAAAA==", -======= - "ViewState": "AgIAAEkAAAAAAAAAAAAgwGYAAAAAAAAAAAAAAA==", ->>>>>>> 9776cbead51da88e6ac5db324d1ff2afcf999f80 + "ViewState": "AgIAAK0BAAAAAAAAAAAswMEBAAArAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-12-08T17:23:53.522Z", + "WhenOpened": "2024-12-08T22:34:44.116Z", "EditorCaption": "" } ] diff --git a/FinalProject/Controllers/AccountController.cs b/FinalProject/Controllers/AccountController.cs index 5a57a92..01cf1de 100644 --- a/FinalProject/Controllers/AccountController.cs +++ b/FinalProject/Controllers/AccountController.cs @@ -41,7 +41,7 @@ public async Task Register(RegisterViewModel rvm) { if (!ModelState.IsValid) { - return BadRequest(ModelState); + return View(rvm); } // Check if user is at least 18 years old @@ -61,6 +61,7 @@ public async Task Register(RegisterViewModel rvm) return View(rvm); } + // Create the user AppUser newUser = new AppUser { UserName = rvm.Email, @@ -72,27 +73,44 @@ public async Task Register(RegisterViewModel rvm) Birthday = rvm.Birthday }; - AddUserModel aum = new AddUserModel() - { - User = newUser, - Password = rvm.Password, - RoleName = rvm.Role - }; - - IdentityResult result = await AddUser.AddUserWithRoleAsync(aum, _userManager, _context); + IdentityResult userResult = await _userManager.CreateAsync(newUser, rvm.Password); - if (result.Succeeded) + if (!userResult.Succeeded) { - await _signInManager.SignInAsync(newUser, isPersistent: false); - return RedirectToAction("Index", "Home"); + foreach (var error in userResult.Errors) + { + ModelState.AddModelError("", error.Description); + } + return View(rvm); } - foreach (IdentityError error in result.Errors) + // Check and assign role + if (!string.IsNullOrEmpty(rvm.Role)) { - ModelState.AddModelError("", error.Description); + var roleExists = await _context.Roles.AnyAsync(r => r.Name == rvm.Role); + if (!roleExists) + { + _context.Roles.Add(new IdentityRole { Name = rvm.Role }); + await _context.SaveChangesAsync(); + } + + IdentityResult roleResult = await _userManager.AddToRoleAsync(newUser, rvm.Role); + if (!roleResult.Succeeded) + { + // If role assignment fails, delete the user to maintain consistency + await _userManager.DeleteAsync(newUser); + + foreach (var error in roleResult.Errors) + { + ModelState.AddModelError("", error.Description); + } + return View(rvm); + } } - return View(rvm); + // Sign in the user + await _signInManager.SignInAsync(newUser, isPersistent: false); + return RedirectToAction("Index", "Home"); } [AllowAnonymous] diff --git a/FinalProject/Controllers/HomeController.cs b/FinalProject/Controllers/HomeController.cs index 6b6932b..1cb50d7 100644 --- a/FinalProject/Controllers/HomeController.cs +++ b/FinalProject/Controllers/HomeController.cs @@ -25,10 +25,14 @@ public async Task Index() .Include(p => p.Category) .Include(p => p.Reviews) .Include(p => p.Host) - .Where(p => p.PropertyStatus && p.IsActive) + .Where(p => p.PropertyStatus && p.IsActive) .ToListAsync(); + // Get total count of only approved and active properties + ViewBag.TotalCount = await _context.Properties + .CountAsync(p => p.PropertyStatus && p.IsActive); + ViewBag.FilteredCount = properties.Count; // Get all categories for the search filters ViewBag.Categories = await _context.Categories.ToListAsync(); @@ -56,15 +60,20 @@ public async Task Details(int? id) // GET: /Home/ public async Task Search( string location = null, + string propertyNumber = null, + string state = null, DateTime? checkIn = null, DateTime? checkOut = null, int? guests = null, - int? categoryId = null, + int[] categories = null, decimal? minPrice = null, decimal? maxPrice = null, int? minBedrooms = null, + int? maxBedrooms = null, int? minBathrooms = null, + int? maxBathrooms = null, decimal? minRating = null, + decimal? maxRating = null, bool? petsAllowed = null, bool? freeParking = null) { @@ -72,73 +81,68 @@ public async Task Search( .Include(p => p.Category) .Include(p => p.Reviews) .Include(p => p.Host) - .Where(p => p.PropertyStatus); + .Include(p => p.Reservations) + .Include(p => p.UnavailableDates) + .Where(p => p.PropertyStatus && p.IsActive); // Only show active and approved properties + // Apply filters one by one + if (!string.IsNullOrEmpty(location)) + { + query = ApplyLocationFilter(query, location); + } + // Property Number filter + if (!string.IsNullOrEmpty(propertyNumber)) + { + query = query.Where(p => p.PropertyNumber.ToString().Contains(propertyNumber)); + } - // Apply search filters function - if (!string.IsNullOrEmpty(location)) + // State filter + if (!string.IsNullOrEmpty(state)) { - var searchTerms = location.ToLower() - .Split(',') - .SelectMany(term => term.Trim().Split(' ')) - .Where(term => !string.IsNullOrWhiteSpace(term)) - .ToArray(); - - // If single search term, use original logic - if (searchTerms.Length == 1) - { - var singleTerm = searchTerms[0]; - query = query.Where(p => - p.City.ToLower().Contains(singleTerm) || - p.State.ToLower().Contains(singleTerm) || - p.Street.ToLower().Contains(singleTerm) || - p.Zip.Contains(singleTerm) - ); - } - // If multiple terms, check each part separately - else - { - query = query.Where(p => - searchTerms.All(term => - p.Street.ToLower().Contains(term) || - p.City.ToLower().Contains(term) || - p.State.ToLower().Contains(term) || - p.Zip.Contains(term) - ) - ); - } + query = query.Where(p => p.State.ToLower().Contains(state.ToLower())); } - if (guests.HasValue) + // Multiple Categories filter + if (categories != null && categories.Length > 0) { - query = query.Where(p => p.GuestsAllowed >= guests.Value); + query = query.Where(p => categories.Contains(p.CategoryID)); } - if (categoryId.HasValue) + if (guests.HasValue) { - query = query.Where(p => p.Category.CategoryID == categoryId.Value); + query = query.Where(p => p.GuestsAllowed >= guests.Value); } if (minPrice.HasValue) { - query = query.Where(p => p.WeekdayPrice >= minPrice.Value); + query = query.Where(p => p.WeekdayPrice >= minPrice.Value || p.WeekendPrice >= minPrice.Value); } if (maxPrice.HasValue) { - query = query.Where(p => p.WeekdayPrice <= maxPrice.Value); + query = query.Where(p => p.WeekdayPrice <= maxPrice.Value && p.WeekendPrice <= maxPrice.Value); } + // Bedroom range if (minBedrooms.HasValue) { query = query.Where(p => p.Bedrooms >= minBedrooms.Value); } + if (maxBedrooms.HasValue) + { + query = query.Where(p => p.Bedrooms <= maxBedrooms.Value); + } + // Bathroom range if (minBathrooms.HasValue) { query = query.Where(p => p.Bathrooms >= minBathrooms.Value); } + if (maxBathrooms.HasValue) + { + query = query.Where(p => p.Bathrooms <= maxBathrooms.Value); + } if (petsAllowed.HasValue) { @@ -150,38 +154,62 @@ public async Task Search( query = query.Where(p => p.FreeParking == freeParking.Value); } - // Check availability if dates are provided + // Handle date availability if (checkIn.HasValue && checkOut.HasValue) { - query = query.Where(p => !p.Reservations.Any(r => - r.ReservationStatus && // Only consider active reservations - ((checkIn >= r.CheckIn && checkIn < r.CheckOut) || // Check-in during existing reservation - (checkOut > r.CheckIn && checkOut <= r.CheckOut) || // Check-out during existing reservation - (checkIn <= r.CheckIn && checkOut >= r.CheckOut)))); // Existing reservation within requested dates + query = query.Where(p => + // No overlapping reservations + !p.Reservations.Any(r => + r.ReservationStatus == true && + ( + (checkIn >= r.CheckIn && checkIn < r.CheckOut) || + (checkOut > r.CheckIn && checkOut <= r.CheckOut) || + (checkIn <= r.CheckIn && checkOut >= r.CheckOut) + ) + ) && + // No unavailable dates + !p.UnavailableDates.Any(ud => + ud.Date >= checkIn && ud.Date < checkOut + ) + ); } - // Apply rating filter if specified - if (minRating.HasValue) + // Apply rating filter with range + if (minRating.HasValue || maxRating.HasValue) { query = query.Where(p => p.Reviews.Any() && - p.Reviews.Where(r => r.DisputeStatus != DisputeStatus.ValidDispute) - .Average(r => (decimal)r.Rating) >= minRating.Value); + (!minRating.HasValue || p.Reviews.Where(r => r.DisputeStatus != DisputeStatus.ValidDispute) + .Average(r => (decimal)r.Rating) >= minRating.Value) && + (!maxRating.HasValue || p.Reviews.Where(r => r.DisputeStatus != DisputeStatus.ValidDispute) + .Average(r => (decimal)r.Rating) <= maxRating.Value)); } var properties = await query.ToListAsync(); - - - // Populate ViewBag data for the view - ViewBag.TotalCount = await _context.Properties.CountAsync(); + // Set ViewBag data for the view + ViewBag.TotalCount = await _context.Properties.CountAsync(p => p.PropertyStatus && p.IsActive); ViewBag.FilteredCount = properties.Count; ViewBag.Categories = await _context.Categories.ToListAsync(); - // Return the search view with results return View("Index", properties); } + private IQueryable ApplyLocationFilter(IQueryable query, string location) + { + var searchTerms = location.ToLower() + .Split(new[] { ' ', ',' }, StringSplitOptions.RemoveEmptyEntries) + .Select(term => term.Trim()) + .Where(term => !string.IsNullOrWhiteSpace(term)) + .ToArray(); + + return query.Where(p => searchTerms.All(term => + p.Street.ToLower().Contains(term) || + p.City.ToLower().Contains(term) || + p.State.ToLower().Contains(term) || + p.Zip.Contains(term))); + } + public IActionResult Privacy() { return View(); diff --git a/FinalProject/Controllers/ReservationController.cs b/FinalProject/Controllers/ReservationController.cs index 0b5f4f9..7c04420 100644 --- a/FinalProject/Controllers/ReservationController.cs +++ b/FinalProject/Controllers/ReservationController.cs @@ -76,7 +76,7 @@ public async Task Create(int? id) } var reservedDates = _context.Reservations - .Where(r => r.PropertyID == id) + .Where(r => r.PropertyID == id && r.ReservationStatus == true) // Include only active reservations .Select(r => new { start = r.CheckIn, end = r.CheckOut }) .ToList(); @@ -146,7 +146,6 @@ public async Task Create([Bind("PropertyID,CheckIn,CheckOut,NumOf .ToListAsync(); - if (overlappingReservations.Any()) { TempData["ErrorMessage"] = "The selected dates overlap with a reservation you already made. Please choose different dates."; @@ -248,13 +247,11 @@ public async Task Checkout() return RedirectToAction(nameof(Cart)); } - // Check for overlaps within the cart itself for (int i = 0; i < cart.Count; i++) { for (int j = i + 1; j < cart.Count; j++) { - // Check for overlapping dates between reservations in the cart if (cart[i].CheckOut > cart[j].CheckIn && cart[i].CheckIn < cart[j].CheckOut) { TempData["ErrorMessage"] = "The selected dates for your stays overlap. Please modify your cart."; @@ -263,78 +260,117 @@ public async Task Checkout() } } - decimal subtotal = 0; + decimal stayprice = 0; + decimal staydiscounted = 0; decimal cleaningFees = 0; + decimal subtotal = 0; const decimal TAX_RATE = 0.07m; decimal tax = 0; decimal totaltax = 0; - decimal grandtotal = 0; decimal totaldiscountamount = 0; + decimal reservationsubtotal = 0; + decimal grandTotal = 0; + decimal subafterdis = 0; - // Final validation - foreach (var reservation in cart) - { - decimal discountamount = 0; - - // Check for existing reservation - bool exists = await _context.Reservations - .AnyAsync(r => r.ConfirmationNumber == reservation.ConfirmationNumber); + // Get current user + var currentUser = await _userManager.GetUserAsync(User); + if (currentUser == null) return Unauthorized(); - if (exists) + try + { + foreach (var reservation in cart) { - ModelState.AddModelError("", - $"Reservation with Confirmation Number {reservation.ConfirmationNumber} already exists."); - return RedirectToAction(nameof(Cart)); // Redirect back to cart for correction - } + decimal discountamount = 0; - var nights = (reservation.CheckOut - reservation.CheckIn).Days; - var weekdayNights = Enumerable.Range(0, nights) - .Count(offset => !new[] { DayOfWeek.Friday, DayOfWeek.Saturday } - .Contains(reservation.CheckIn.AddDays(offset).DayOfWeek)); - var weekendNights = nights - weekdayNights; + // Check for existing reservation + bool exists = await _context.Reservations + .AnyAsync(r => r.ConfirmationNumber == reservation.ConfirmationNumber); - decimal stayPrice = (weekdayNights * reservation.WeekdayPrice) + - (weekendNights * reservation.WeekendPrice); + if (exists) + { + ModelState.AddModelError("", + $"Reservation with Confirmation Number {reservation.ConfirmationNumber} already exists."); + return RedirectToAction(nameof(Cart)); + } - if (nights >= reservation.Property.MinNightsForDiscount) - { - decimal discountRate = reservation.Property.DiscountRate ?? 0; - discountamount = stayPrice * discountRate; - } + // Fetch the property once and reuse it + var property = await _context.Properties + .FirstOrDefaultAsync(p => p.PropertyID == reservation.PropertyID); + if (property == null) + { + TempData["ErrorMessage"] = $"Property with ID {reservation.PropertyID} not found."; + return RedirectToAction(nameof(Cart)); + } - subtotal += stayPrice; - cleaningFees += reservation.CleaningFee; - tax = (stayPrice + reservation.CleaningFee - discountamount) * TAX_RATE; - totaldiscountamount += discountamount; - totaltax = (subtotal + cleaningFees) * TAX_RATE; - grandtotal = subtotal - discountamount + cleaningFees + tax; + var nights = (reservation.CheckOut - reservation.CheckIn).Days; + var weekdayNights = Enumerable.Range(0, nights) + .Count(offset => !new[] { DayOfWeek.Friday, DayOfWeek.Saturday } + .Contains(reservation.CheckIn.AddDays(offset).DayOfWeek)); + var weekendNights = nights - weekdayNights; - decimal reservationTax = (stayPrice + reservation.CleaningFee) * TAX_RATE; - decimal reservationTotal = stayPrice - discountamount + reservation.CleaningFee + tax; + decimal reservationStayPrice = (weekdayNights * property.WeekdayPrice) + + (weekendNights * property.WeekendPrice); - // Attach existing entities to avoid duplication - _context.Attach(reservation.Property); - _context.Attach(reservation.Customer); + if (nights >= property.MinNightsForDiscount) + { + decimal discountRate = property.DiscountRate / 100m ?? 0; + discountamount = reservationStayPrice * discountRate; + } - reservation.ReservationStatus = true; - _context.Reservations.Add(reservation); - } + // Create new reservation entity + var newReservation = new Reservation + { + CustomerID = currentUser.Id, + PropertyID = property.PropertyID, + CheckIn = reservation.CheckIn, + CheckOut = reservation.CheckOut, + NumOfGuests = reservation.NumOfGuests, + WeekdayPrice = property.WeekdayPrice, + WeekendPrice = property.WeekendPrice, + CleaningFee = property.CleaningFee, + ConfirmationNumber = reservation.ConfirmationNumber, + ReservationStatus = true + }; + + _context.Reservations.Add(newReservation); + + // Update totals + stayprice += reservationStayPrice; + totaldiscountamount += discountamount; + subtotal += reservationStayPrice; + cleaningFees += property.CleaningFee; + staydiscounted = subtotal - totaldiscountamount; + tax = (reservationStayPrice - discountamount + property.CleaningFee) * TAX_RATE; + reservationsubtotal = reservationStayPrice - discountamount + property.CleaningFee; + subafterdis = staydiscounted + cleaningFees; + totaltax += tax; + grandTotal = subtotal - totaldiscountamount + cleaningFees + totaltax; + } - await _context.SaveChangesAsync(); - HttpContext.Session.Remove("Cart"); + await _context.SaveChangesAsync(); + HttpContext.Session.Remove("Cart"); - TempData["Subtotal"] = subtotal.ToString("C"); - if (totaldiscountamount > 0) + // Set TempData values + TempData["Subtotal"] = subtotal.ToString("C"); + if (totaldiscountamount > 0) + { + TempData["TotalDiscount"] = totaldiscountamount.ToString("C"); + } + TempData["PriceAfterDis"] = staydiscounted.ToString("C"); + TempData["CleaningFee"] = cleaningFees.ToString("C"); + TempData["SubAfterDis"] = subafterdis.ToString("C"); + TempData["Tax"] = tax.ToString("C"); + TempData["GrandTotal"] = grandTotal.ToString("C"); + + return RedirectToAction(nameof(Confirmation), new { id = cart.First().ConfirmationNumber }); + } + catch (Exception ex) { - TempData["TotalDiscount"] = totaldiscountamount.ToString("C"); + // Log the exception + TempData["ErrorMessage"] = "An error occurred while processing your reservation."; + return RedirectToAction(nameof(Cart)); } - TempData["CleaningFee"] = cleaningFees.ToString("C"); - TempData["Tax"] = tax.ToString("C"); - TempData["GrandTotal"] = grandtotal.ToString("C"); - - // Redirect to confirmation view - return RedirectToAction(nameof(Confirmation), new { id = cart.First().ConfirmationNumber }); } @@ -385,7 +421,27 @@ public async Task CancelConfirmed(int id) // Mark the reservation as cancelled reservation.ReservationStatus = false; // Assuming false indicates cancellation _context.Reservations.Update(reservation); - await _context.SaveChangesAsync(); + + // Clear unavailable dates linked to the reservation + var unavailableDates = await _context.Unavailabilities + .Where(u => u.PropertyID == reservation.PropertyID) + .Where(u => u.Date >= reservation.CheckIn && u.Date < reservation.CheckOut) + .ToListAsync(); + + if (unavailableDates.Any()) + { + _context.Unavailabilities.RemoveRange(unavailableDates); + } + + try + { + await _context.SaveChangesAsync(); + TempData["SuccessMessage"] = "Reservation has been canceled successfully."; + } + catch (Exception) + { + TempData["ErrorMessage"] = "An error occurred while canceling the reservation. Please try again."; + } // Redirect back to the index page to show all reservations return RedirectToAction(nameof(Index)); @@ -399,17 +455,20 @@ public async Task Confirmation(int? id) return NotFound(); } - var reservation = await _context.Reservations + // Get the customer's most recent reservations that share the same confirmation time + var reservations = await _context.Reservations .Include(r => r.Property) .Include(r => r.Customer) - .FirstOrDefaultAsync(r => r.ConfirmationNumber == id); + .Where(r => r.ConfirmationNumber == id) + .ToListAsync(); - if (reservation == null) + if (!reservations.Any()) { return NotFound(); } - return View(reservation); + ViewBag.Reservations = reservations; + return View(reservations); } } diff --git a/FinalProject/Controllers/RoleHostController.cs b/FinalProject/Controllers/RoleHostController.cs index b238232..2971b39 100644 --- a/FinalProject/Controllers/RoleHostController.cs +++ b/FinalProject/Controllers/RoleHostController.cs @@ -25,6 +25,8 @@ public IActionResult Index() { return View(); } + + [Authorize(Roles = "Host")] public ActionResult ViewReviews(int hostId) { @@ -51,6 +53,7 @@ public ActionResult ViewReviews(int hostId) return View(reviews); } + [Authorize(Roles = "Host")] [HttpPost] public IActionResult DisputeReview(int reviewId, string reason) { @@ -141,7 +144,7 @@ public async Task CancelReservation(int reservationId) return RedirectToAction("ManageReservations"); } - + [Authorize(Roles = "Host")] [HttpGet] public IActionResult UnvDates(int id) { @@ -155,7 +158,7 @@ public IActionResult UnvDates(int id) } - + [Authorize(Roles = "Host")] [HttpPost] public IActionResult UnvDates(Unavailability model) { @@ -174,6 +177,7 @@ public IActionResult UnvDates(Unavailability model) return RedirectToAction("Reports", "Account"); } + [Authorize(Roles = "Host")] public IActionResult UnvDetails(int id) { var property = _context.Properties diff --git a/FinalProject/Views/Account/Register.cshtml b/FinalProject/Views/Account/Register.cshtml index 06c45e3..2ff806d 100644 --- a/FinalProject/Views/Account/Register.cshtml +++ b/FinalProject/Views/Account/Register.cshtml @@ -21,50 +21,63 @@

Register

-
-
- - - + @if (ViewData["SuccessMessage"] != null) + { +
+ @ViewData["SuccessMessage"]
+ } + + @if (!ViewData.ModelState.IsValid) + { +
+
    + @foreach (var modelState in ViewData.ModelState.Values) + { + foreach (var error in modelState.Errors) + { +
  • @error.ErrorMessage
  • + } + } +
+
+ } +
- - First Name + - + placeholder="Enter your First Name" /> +
- - Last Name + - + placeholder="Enter your Last Name" /> +
- - Email + - + placeholder="Enter your email" /> +
- - Phone Number + - + placeholder="Enter your Phone Number" /> +
@@ -73,7 +86,7 @@ class="form-control" style="margin-bottom: 15px; padding: 12px; font-size: 14px; border: none; border-radius: 8px; width: 100%;" placeholder="Enter your Address" /> - +
@@ -83,7 +96,7 @@ class="form-control" style="margin-bottom: 15px; padding: 12px; font-size: 14px; border: none; border-radius: 8px; width: 100%;" placeholder="Enter your Birthday" /> - +
@@ -93,7 +106,7 @@ class="form-control" style="margin-bottom: 15px; padding: 12px; font-size: 14px; border: none; border-radius: 8px; width: 100%;" placeholder="Enter your password" /> - +
@@ -103,19 +116,19 @@ class="form-control" style="margin-bottom: 30px; padding: 12px; font-size: 14px; border: none; border-radius: 8px; width: 100%;" placeholder="Confirm your password" /> - +
- + - +
- +
- + \ No newline at end of file diff --git a/FinalProject/Views/Home/Index.cshtml b/FinalProject/Views/Home/Index.cshtml index ebf32cf..4fbea57 100644 --- a/FinalProject/Views/Home/Index.cshtml +++ b/FinalProject/Views/Home/Index.cshtml @@ -13,26 +13,30 @@
- +
- - + +
- - + +
- - + +
@@ -40,20 +44,25 @@ Search -
- - + + - +
@@ -101,9 +114,28 @@