@using OSS.Models @model ProjectProfileExternal @{ Layout = "~/Views/Shared/_Layout.cshtml"; } @functions { public bool HasErrorFor(String FieldName) { if (TempData != null) { var messages = TempData["validation_errors"] as Dictionary; return messages != null && messages.ContainsKey(FieldName) && messages[FieldName].Length > 0; } return false; } public string GetErrorFor(String FieldName, string errorMessage = "Invalid input") { if (TempData != null) { var messages = TempData["validation_errors"] as Dictionary; var error = messages != null && messages.ContainsKey(FieldName) ? messages[FieldName] : null; if(error != null && error.Length > 0) { errorMessage = error[0]; } } return errorMessage; } }

  PROJECTS New Certificate

@using (Html.BeginForm("PostProjectProfile", "NewCOI", FormMethod.Post, new { id = "social", @novalidate = "novalidate", @class = "needs-validation text-left section social" })) { @Html.AntiForgeryToken()
@ViewBag.Error
      Details of the Project

@Html.TextBoxFor(m => m.ProjectName, new { @name = "ProjectName", @class = HasErrorFor("ProjectName")? "form-control is-invalid":"form-control", @id = "ProjectName", @type = "text", @required = "true", @pattern = "^[a-zA-Z0-9 &'\\(\\)\\-\\/_.,]+", @placeholder="Enter the name of your project" })
@GetErrorFor("ProjectName", "Only non-empty input with words, numbers and [&'()-/_.,] is allowed")
@Html.TextBoxFor(m => m.MainActivity, new { @pattern = "^[a-zA-Z0-9 &'\\(\\)\\-\\/_.,]+", @class = HasErrorFor("MainActivity")? "form-control is-invalid":"form-control", @name = "MainActivity", @id = "MainActivity", @type = "text", @required = "true", @placeholder="Enter the description of your project" })
@GetErrorFor("MainActivity", "Only non-empty input with words, numbers and [&'()-/_.,] is allowed")
@Html.DropDownListFor(m => m.Sector, new SelectList(Model.ListofSectors, "Value", "Text"), new { @class = "selectpicker form-control", @id = "Sector", @name = "Sector" })
@GetErrorFor("Sector", "Invalid Input")
@Html.DropDownListFor(m => m.SubSector, new SelectList(Model.ListofSubectors, "Value", "Text"), new { @class = "selectpicker form-control", @id = "SubSector", @name = "SubSector" })
@GetErrorFor("SubSector", "Invalid Input")
@Html.TextBoxFor(m => m.ProductionCapacity, new { @name = "ProductionCapacity", @class = HasErrorFor("ProductionCapacity")? "form-control is-invalid":"form-control", @id = "LastName", @type = "number", @required = "true" })
@GetErrorFor("ProductionCapacity", "Enter numbers only")
@Html.DropDownListFor(m => m.UnitMeasure, new List{ new SelectListItem{ Text="tones/year", Value = "tones/year" }, new SelectListItem{ Text="liters/year", Value = "liters/year" }, new SelectListItem{ Text="grams/year", Value = "grams/year" }, new SelectListItem{ Text="kilograms/year", Value = "kilograms/year" }, new SelectListItem{ Text="numbers of units/year", Value = "numbers of units/year" }, new SelectListItem{ Text="acreages/year", Value = "acreages/year" }, new SelectListItem{ Text="Hectors/year", Value = "Hectors/year" }, }, new { @class = "selectpicker form-control", @id = "UnitMeasure", @name = "UnitMeasure", @placeholder = "Unit of measure", @required = "true", @value = "Please Select" })
Invalid Input
@Html.DropDownListFor(m => m.TypeofOwnership, new List{ new SelectListItem{ Text="Foreigners Only", Value = "Foreign" }, new SelectListItem{ Text="Tanzanians Only", Value = "Local" }, new SelectListItem{ Text="Mixed (Foreigners & Tanzanians)", Value = "JV" }, }, new { @class = "selectpicker form-control", @id = "CompanyType", @name = "TypeofOwnership", @placeholder = "Sex Type", @required = "true", @value = "Please Select" })
Invalid Input

      Employment Details

@Html.TextBoxFor(m => m.MenForeign, new { @name = "MenForeign", @class = HasErrorFor("MenForeign")? "form-control is-invalid":"form-control", @id = "LastName", @type = "number", @required = "true", @placeholder = "Enter foreign men" })
@GetErrorFor("MenForeign", "Enter numbers only")
@Html.TextBoxFor(m => m.WomenForeign, new { @name = "WomenForeign", @class = HasErrorFor("WomenForeign")? "form-control is-invalid":"form-control", @id = "LastName", @type = "number", @required = "true", @placeholder = "Enter foreign women" })
@GetErrorFor("WomenForeign", "Enter numbers only")
@Html.TextBoxFor(m => m.MenLocal, new { @name = "MenLocal", @class = HasErrorFor("MenLocal")? "form-control is-invalid":"form-control", @id = "LastName", @type = "number", @required = "true", @placeholder = "Enter local men" })
@GetErrorFor("MenLocal", "Enter numbers only")
@Html.TextBoxFor(m => m.WomenLocal, new { @name = "WomenLocal", @class = HasErrorFor("WomenLocal")? "form-control is-invalid":"form-control", @id = "LastName", @type = "number", @required = "true", @placeholder = "Enter local women" })
@GetErrorFor("WomenLocal", "Enter numbers only")
      Project Location

@Html.DropDownListFor(m => m.Region, new SelectList(Model.ListofRegions , "Value", "Text"), new { @class = "selectpicker form-control", @id = "Region", @name = "Region", @Required = "true" })
Enter Region.
@Html.TextBoxFor(m => m.Telephone, new { @name = "Telephone", @class = HasErrorFor("Telephone")? "form-control is-invalid":"form-control", @id = "Telephone", @type = "text", @required = "true" })
@GetErrorFor("Telephone", "Invalid telephone number")
@Html.TextBoxFor(m => m.Street, new { @pattern = "^[a-zA-Z0-9 &'\\-\\/.,]+", @name = "Street", @class = HasErrorFor("Street")? "form-control is-invalid":"form-control", @id = "LastName", @type = "text", @required = "true", @placeholder="Enter street name" })
@GetErrorFor("Street", "Invalid street name")
@Html.TextBoxFor(m => m.PostalAddress, new { @name = "PostalAddress", @class = HasErrorFor("PostalAddress")? "form-control is-invalid":"form-control", @id = "PostalAddress", @type = "number", @required = "true", @placeholder="Enter postal address" })
@GetErrorFor("PostalAddress", "Invalid postal address")
@Html.DropDownListFor(m => m.AreaType, new List{ new SelectListItem{ Text="Select Area Type", Value = "" }, new SelectListItem{ Text="Surveyed", Value = "Surveyed" }, new SelectListItem{ Text="UnSurveyed", Value = "UnSurveyed" }, }, new { @class = "selectpicker form-control", @id = "AreaType", @name = "AreaType", @placeholder = "Sex Type", @required = "true", @value = "Please Select" })
Invalid Input
@Html.TextBoxFor(m => m.Area, new { @maxlenght = "20", @pattern = "^[a-zA-Z0-9-'\\(\\)&._\\/ ]+", @name = "Area", @class = HasErrorFor("Area")? "form-control is-invalid":"form-control", @id = "Area", @type = "text" })
@GetErrorFor("Area", "Invalid area description")
@Html.DropDownListFor(m => m.LandMarkType, new List{ new SelectListItem{ Text="Near By", Value = "Near By" }, new SelectListItem{ Text="Opposite to", Value = "Opposite to" }, }, new { @class = "selectpicker form-control", @id = "LandMarkType", @name = "LandMarkType", @placeholder = "Sex Type", @value = "Please Select" })
Invalid Input
@Html.TextBoxFor(m => m.LandMarkDescription, new { @maxlenght = "20", @pattern = "^[a-zA-Z0-9-'\\(\\)&._\\/ ]+", @name = "LandMarkDescription", @class = HasErrorFor("LandMarkDescription")? "form-control is-invalid":"form-control", @id = "LandMarkDescription", @type = "text" })
@GetErrorFor("LandMarkDescription", "Invalid landmark description")
@Html.TextBoxFor(m => m.PlotNumber, new { @maxlenght = "10", @pattern = "^[a-zA-Z0-9-\\/]+", @name = "PlotNumber", @class = HasErrorFor("PlotNumber")? "form-control is-invalid":"form-control", @id = "PlotNumber", @type = "text" })
@GetErrorFor("PlotNumber", "Invalid plot number")
@Html.TextBoxFor(m => m.BlockPlotNumber, new { @maxlenght = "10", @pattern = "^[a-zA-Z0-9-\\/]+", @name = "BlockPlotNumber", @class = HasErrorFor("BlockPlotNumber")? "form-control is-invalid":"form-control", @id = "BlockPlotNumber", @type = "text" })
@GetErrorFor("BlockPlotNumber", "Invalid block number")
@Html.TextBoxFor(m => m.HouseNo, new { @maxlenght = "10", @pattern = "^[a-zA-Z0-9-\\/]+", @name = "HouseNo", @class = HasErrorFor("HouseNo")? "form-control is-invalid":"form-control", @id = "HouseNo", @type = "text" })
@GetErrorFor("HouseNo", "Invalid house number")
      Contact Person

@Html.TextBoxFor(m => m.ContactPerson, new { @maxlenght = "30", @name = "ContactPerson", @class = HasErrorFor("ContactPerson")? "form-control is-invalid":"form-control", @id = "ContactPerson", @pattern = "^[a-zA-Z-' ]+$", @type = "text", @required = "true", @placeholder="Enter person name" })
@GetErrorFor("ContactPerson", "Invalid person name")
@Html.DropDownListFor(m => m.Title, new List{ new SelectListItem{ Text="Select Position", Value = "" }, new SelectListItem{ Text="CEO", Value = "CEO" }, new SelectListItem{ Text="Director", Value = "Director" }, new SelectListItem{ Text="Shareholder", Value = "Shareholder" }, new SelectListItem{ Text="HR Manager", Value = "HR Manager" }, new SelectListItem{ Text="Finance Manager", Value = "Finance Manager" }, new SelectListItem{ Text="Auditor", Value = "Auditor" }, new SelectListItem{ Text="Agent", Value = "Agent" }, }, new { @class = "selectpicker form-control", @id = "Position", @name = "Title", @placeholder = "", @required = "true", @value = "Please Select" })
@Html.TextBoxFor(m => m.ContactMobile, new { @name = "ContactMobile", @class = HasErrorFor("ContactMobile")? "form-control is-invalid":"form-control", @id = "ContactMobile", @type = "text", @required = "true", @placeholder="Enter mobile number" })
@GetErrorFor("ContactMobile", "Invalid mobile number")
@Html.TextBoxFor(m => m.ContactEmail, new { @name = "ContactEmail", @class = HasErrorFor("LastName")? "form-control is-invalid":"form-control", @id = "LastName", @type = "email", @required = "true", @placeholder="Enter email address" })
@GetErrorFor("ContactEmail", "Invalid email address")

}