Via dit formulier kunt u een veulen registreren bij het KWPN, controleer de ingevulde gegevens en vul de gevraagde gegevens in, pas eventueel eerst uw (adres)gegevens aan in Mijn profiel. Na het opslaan van dit formulier wordt uw veulen geregistreerd en ontvangt u een bevestigingsmail. Met deze aanmelding tot registratie verbindt de aanvrager zich ertoe dit paard uitsluitend in te schrijven bij het KWPN. Op de afgifte van een paardenpaspoort is de EG Verordening nr. 2015/262 van toepassing. Meer informatie over de Europese paardenpaspoort regelgeving vindt u op de RVO-website.
Chippen
Uw veulen wordt gechipt door een KWPN-paspoortconsulent. Dit is alleen mogelijk als het veulen in Nederland gestald staat. In België is het mogelijk om het veulen op de veulenkeuring te laten schetsen en chippen. Indien u het chippen niet door de KWPN-paspoortconsulent wilt laten doen, vervalt de korting. U kunt uw voorkeur hieronder aangeven.
Error executing template "Designs/Kwpn/DataManagement/Forms/Form/FormRegisterFoal.cshtml" System.NullReferenceException: Object reference not set to an instance of an object. at CompiledRazorTemplates.Dynamic.RazorEngine_3bc5f736824942ba87a0d63aa5dbe7f0.Execute() in D:\inetpub\wwwroot\www.kwpn.nl\Files\Templates\Designs\Kwpn\DataManagement\Forms\Form\FormRegisterFoal.cshtml:line 12 at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader) at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer) at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter) at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template) at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template) at Dynamicweb.Rendering.Template.RenderRazorTemplate()
1 @using Dynamicweb.Ecommerce.Products 2 @using Kwpn.Models.ApiModels 3 @using Kwpn.Models.Constants 4 @using Kwpn.Models.Enumerations 5 @using Kwpn.Repository.Repositories 6 @using Kwpn.Repository.Helpers 7 @using Kwpn.Core.Services.Abstract; 8 @using System.Web.Mvc; 9 10 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 11 @{ 12 var user = Kwpn.Repository.Repositories.KwpnUsers.CurrentUser().DwUser; 13 14 bool isLoggedIn = LoginHelper.CurrentUserIsLoggedIn(); 15 if (isLoggedIn) 16 { 17 // get culture 18 string culture = GetGlobalValue("Global:Area.LongLang"); 19 // get mare 20 string animalCode = System.Web.HttpContext.Current.Request.QueryString.Get(Translate("Horse", "Horse")); 21 if (string.IsNullOrEmpty(animalCode)) 22 { 23 animalCode = System.Web.HttpContext.Current.Request.Form.Get(Translate("Horse", "Horse")); 24 } 25 var showMemberContent = LoginHelper.HasAccessToExtendedHorseData(); // todo: KWPN-472 26 27 // try to get cached version if exists (database page caches the horse before calling the form data) else get minimal version 28 AnimalModel mare = HorseHelper.GetDatabasePageHorse(culture, animalCode, showMemberContent, true) ?? Horses.Get(animalCode, culture, false, false, false, false, false, false, false, false, false); 29 30 if (mare != null && HorseHelper.CheckIfMyHorse(animalCode) && !KwpnUsers.CurrentUser().IsBlocked) 31 { 32 // form date 33 DateTime currentDateTime = DateTime.Now; 34 35 // get user 36 var dwUser = KwpnUsers.CurrentUser().DwUser; 37 string membershipNumber = "", userId = "", userName = "", userEmail = "", authorizationName = "", authorizationResidence = ""; 38 membershipNumber = dwUser.UserName; 39 userId = dwUser.ID.ToString(); 40 userName = dwUser.Name; 41 userEmail = dwUser.Email; 42 authorizationName = dwUser.Name; 43 authorizationResidence = dwUser.City; 44 45 var ubn = string.Equals(dwUser.Country, "NL") 46 ? dwUser.CustomFieldValues.Find(cf => cf.CustomField.Name.Equals(StringConstants.Profile.UBNCode, StringComparison.InvariantCultureIgnoreCase)).Value?.ToString() ?? "" 47 : ""; 48 49 // get breeding 50 AnimalBreedingModel knownBreeding = null; 51 string actionIdParameter = "actionid"; 52 if (culture.Equals("nl-nl", System.StringComparison.InvariantCultureIgnoreCase)) 53 { 54 actionIdParameter = "actieid"; 55 } 56 string actionId = System.Web.HttpContext.Current.Request.QueryString.Get(actionIdParameter); 57 if (string.IsNullOrEmpty(actionId)) 58 { 59 actionId = System.Web.HttpContext.Current.Request.Form.Get(actionIdParameter); 60 } 61 if (!string.IsNullOrEmpty(actionId) && actionId.Contains("_")) 62 { 63 //actionid is expected in the format: date_studanimalcode 64 knownBreeding = HorseHelper.GetBreedingValues(culture, mare.AnimalCode, actionId); 65 66 } 67 bool isKnownBreeding = knownBreeding != null; 68 bool isUnknownBreeding = knownBreeding == null; 69 70 71 // mare info 72 string mareName = HorseHelper.GetHorseName(mare.SportsName, mare.AnimalName, null); 73 74 // breeding info 75 string studName = ""; 76 string studAnimalCode = ""; 77 string breedingDate = ""; 78 79 string buttonText = Translate("Pay", "Pay"); 80 81 // get product 82 Product registerFoalProduct = null; 83 var productService = new ProductService(); 84 var ecomLanguageId = Dynamicweb.Frontend.PageView.Current().Area.EcomLanguageId; 85 if (isKnownBreeding) 86 { 87 registerFoalProduct = productService.GetProductByNumber(StringConstants.ProductNumbers.RegisterFoalKnownBreeding, ecomLanguageId); 88 studName = knownBreeding.StallionName; 89 studAnimalCode = knownBreeding.AnimalcodeStallion; 90 breedingDate = knownBreeding.Date.ToShortDateString(); 91 } 92 else 93 { 94 registerFoalProduct = productService.GetProductByNumber(StringConstants.ProductNumbers.RegisterFoalUnknownBreeding, ecomLanguageId); 95 buttonText = Translate("Submit", "Submit"); 96 } 97 Product deceasedHorseProduct = productService.GetProductByNumber(StringConstants.ProductNumbers.RegisterDeceasedFoal, ecomLanguageId); 98 Product genomicBreedingValueResearchProduct = productService.GetProductByNumber(StringConstants.ProductNumbers.DNAResearch, ecomLanguageId); 99 Product wffsTestProduct = productService.GetProductByNumber(StringConstants.ProductNumbers.WFFSTest, ecomLanguageId); 100 Product wFFSTestWhenDNAResearchSelectedProduct = productService.GetProductByNumber(StringConstants.ProductNumbers.WFFSTestWhenDNAResearchSelected, ecomLanguageId); 101 if (wFFSTestWhenDNAResearchSelectedProduct == null) 102 { 103 wFFSTestWhenDNAResearchSelectedProduct = wffsTestProduct; 104 } 105 106 // product registerFoalPassportProduct removed: KWPN-1195 107 // product noChippingDiscountProduct removed: KWPN-1195 108 109 List<Kwpn.Repository.Kwpn_Colors> colors = HorseHelper.HorseColors(culture); 110 111 if (registerFoalProduct != null) 112 { 113 114 List<CountryModel> countries = Kwpn.Repository.EquisApi.Countries.GetCountries(); 115 116 var iban = Kwpn.Repository.Repositories.KwpnUsers.CurrentUser().IBAN; 117 var bic = Kwpn.Repository.Repositories.KwpnUsers.CurrentUser().BIC; 118 119 if (string.IsNullOrWhiteSpace(iban) && string.IsNullOrWhiteSpace(bic)) 120 { 121 var equisUser = UserHelper.GetEquisUser(); 122 iban = equisUser.Iban; 123 bic = equisUser.Bic; 124 } 125 126 <div class="w-section inverse"> 127 <div class="w-box sign-in-wr bg-5"> 128 <div id="FormRegisterHorse" class="form-body"> 129 @GetValue("Form.Start") 130 @GetValue("Form.Hidden") @*Hidden fields are filled with jquery*@ 131 132 @if (isKnownBreeding) 133 { 134 // add date unknown breeding fields as hidden, orelse the form will crash on post ... 135 <input type="hidden" id="Kwpn_Form_RegisterFoal_InseminationDate" name="Kwpn_Form_RegisterFoal_InseminationDate" value="" /> 136 <input type="hidden" id="Kwpn_Form_RegisterFoal_RinseDate" name="Kwpn_Form_RegisterFoal_RinseDate" value="" /> 137 <input type="hidden" id="Kwpn_Form_RegisterFoal_TransplantDate" name="Kwpn_Form_RegisterFoal_TransplantDate" value="" /> 138 } 139 140 <div class="col-xs-12"> 141 <p> 142 <i class="fa fa-asterisk" aria-hidden="true"></i> <small>@Translate("RequiredField", "Required field")</small> <i class="fa fa-asterisk" aria-hidden="true"></i><i class="fa fa-asterisk" aria-hidden="true"></i> <small>@Translate("RequiredFieldOfTwo", "At least one is required")</small> 143 </p> 144 </div> 145 146 <div class="row" id="breeding-data-panel"> 147 <div class="col-xs-12"> 148 <div id="Kwpn_Form_RegisterHorse_BreedingData"> 149 150 <h3>@Translate("FoalRegistrationBreedingData", "Breeding data")</h3> 151 152 @*MOTHER*@ 153 <div class="form-inline"> 154 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_MareName">@Translate("FoalMotherName", "Mare name")</label> 155 <input type="text" 156 class="form-control hide-hints" 157 id="Kwpn_Form_RegisterFoal_MareName" 158 name="Kwpn_Form_RegisterFoal_MareName" 159 value="@mareName" 160 maxlength="50" 161 required 162 readonly /> 163 </div> 164 165 @if (isUnknownBreeding) 166 { 167 <div class="form-inline"> 168 <label class="control-label col-sm-4" for="SearchFather">@Translate("SearchFather", "Search father")</label> 169 <div class="input-group form-control"> 170 <input type="text" id="SearchFather" name="SearchFather" placeholder="@Translate("SearchByNameOrLifenumber", "Search by name or lifenumber")" value="" required="required" /> 171 <span class="input-group-btn"> 172 <button class="btn btn-default" onclick="SearchAvailableStuds(); return false;" type="button"><i class="fa fa-search"></i></button> 173 </span> 174 <div id="StudSearchResults"></div> 175 </div> 176 <div id="StudSelected"></div> 177 </div> 178 179 <div id="addfathermanually"> 180 <div id="fatherinfo" class="hidden"> 181 182 @*Naam vader*@ 183 <div class="form-inline"> 184 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StudAnimalName">@Translate("FoalFatherManualName", "Stud name")</label> 185 <input type="text" 186 class="form-control hide-hints" 187 id="Kwpn_Form_RegisterFoal_StudAnimalName" 188 name="Kwpn_Form_RegisterFoal_StudAnimalName" 189 maxlength="50" 190 value="" /> 191 </div> 192 193 @*Levensnummer vader -- is gewijzigd naar Afstamming vader via translations*@ 194 <div class="form-inline"> 195 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StudLifeNumber">@Translate("FoalFatherLifenumber", "Stud life number")</label> 196 <input type="text" 197 class="form-control hide-hints" 198 id="Kwpn_Form_RegisterFoal_StudLifeNumber" 199 name="Kwpn_Form_RegisterFoal_StudLifeNumber" 200 maxlength="50" 201 value="" /> 202 </div> 203 204 @*Stamboek vader*@ 205 <div class="form-inline"> 206 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_FathersStudbook">@Translate("FoalFathersStudbook", "Fathers studbook")</label> 207 <input type="text" 208 class="form-control hide-hints" 209 id="Kwpn_Form_RegisterFoal_FathersStudbook" 210 name="Kwpn_Form_RegisterFoal_FathersStudbook" 211 maxlength="150" 212 value="" /> 213 </div> 214 215 </div> 216 </div> 217 218 <div id="extrafather"> 219 <div id="extrafatherinfo" class="hidden"> 220 221 @*Via dekstation/ hengstenhouder*@ 222 <div class="form-inline"> 223 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_ViaStation">@Translate("ViaStation", "Via station / stallionholder")</label> 224 <input type="text" 225 class="form-control hide-hints" 226 id="Kwpn_Form_RegisterFoal_ViaStation" 227 name="Kwpn_Form_RegisterFoal_ViaStation" 228 maxlength="50" 229 value="" /> 230 </div> 231 232 </div> 233 </div> 234 } 235 236 @if (isKnownBreeding) 237 { 238 @*FATHER*@ 239 <div class="form-inline"> 240 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StudAnimalName">@Translate("FoalFatherName", "Stud name")</label> 241 <input type="text" 242 class="form-control hide-hints text-uppercase" 243 id="Kwpn_Form_RegisterFoal_StudAnimalName" 244 name="Kwpn_Form_RegisterFoal_StudAnimalName" 245 value="@studName" 246 maxlength="50" 247 @if (!string.IsNullOrEmpty(studName)) { <text> readonly="readonly" </text> } 248 required /> 249 </div> 250 251 @*BREEDING DATE*@ 252 <div class="form-inline"> 253 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_BreedingDate_Visible">@Translate("BreedingDate", "Breeding date")</label> 254 <input type="text" 255 class="form-control hide-hints" 256 id="Kwpn_Form_RegisterFoal_BreedingDate_Visible" 257 name="Kwpn_Form_RegisterFoal_BreedingDate_Visible" 258 value="@breedingDate" 259 maxlength="50" 260 disabled /> 261 </div> 262 } 263 264 <div id="GestationPeriodWarning" class="warning hidden"> 265 @Translate("GestationPeriodWarning", "Gestation period too long or too short") 266 </div> 267 268 <div class="col-xs-12 col-md-8 col-md-offset-4 navigation-next"> 269 <button class="panelbutton panelbutton--next" id="btn-next-breeding-data" type="button" defaultText="@Translate("FoalRegistration_BtnToRegistrationData", "To registration data").JsEncode()" disabled="disabled">@Translate("FoalRegistration_BtnToRegistrationData", "To registration data")</button> 270 </div> 271 272 </div> 273 </div> 274 </div> 275 276 <div class="row hidden" id="registration-data-panel"> 277 <div class="col-xs-12"> 278 279 <div id="Kwpn_Form_RegisterHorse_FoalData"> 280 281 <h3>@Translate("FoalRegistration", "Registration")</h3> 282 283 <div class="form-group"> 284 <div class="form-inline" id="birthDateInfo"> 285 <label class="control-label col-sm-4"> </label> 286 <label class="control-label">@Translate("FirstSelectADate", "First select a date of birth")</label> 287 </div> 288 @*DATE OF BIRTH*@ 289 <div class="form-inline"> 290 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_FoalDateOfBirth">@Translate("FoalDateOfBirth", "Date of birth")</label> 291 <input type="text" 292 class="form-control hide-hints" 293 id="Kwpn_Form_RegisterFoal_FoalDateOfBirth" 294 name="Kwpn_Form_RegisterFoal_FoalDateOfBirth" 295 value="" 296 required /> 297 </div> 298 <div id="form-content-base-info" class="hidden"> 299 300 @*DECEASED*@ 301 <div class="form-inline"> 302 <label class="control-label col-sm-4">@Translate("FoalDeceased", "Foal deceased")</label> 303 <input type="checkbox" 304 id="Kwpn_Form_RegisterFoal_FoalDeceased" 305 name="Kwpn_Form_RegisterFoal_FoalDeceased" 306 value="true" /> 307 <label class="normal" for="Kwpn_Form_RegisterFoal_FoalDeceased">@Translate("YesNo", "yes/no")</label> 308 </div> 309 310 @*MOTHER DECEASED*@ 311 <div class="form-inline"> 312 <label class="control-label col-sm-4">@Translate("MareDeceased", "Mare deceased")</label> 313 <input type="checkbox" 314 id="Kwpn_Form_RegisterFoal_MareDeceased" 315 name="Kwpn_Form_RegisterFoal_MareDeceased" 316 value="true" /> 317 <label class="normal" for="Kwpn_Form_RegisterFoal_MareDeceased">@Translate("YesNo", "yes/no")</label> 318 </div> 319 @*NAME*@ 320 <div class="form-inline"> 321 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_FoalName">@Translate("FoalName", "Foal name")</label> 322 <input type="text" 323 class="form-control hide-hints text-uppercase" 324 id="Kwpn_Form_RegisterFoal_FoalName" 325 name="Kwpn_Form_RegisterFoal_FoalName" 326 value="" 327 required 328 maxlength="35" /> 329 </div> 330 @*GENDER: Required for deceased foals*@ 331 <div class="form-inline"> 332 <label class="control-label col-sm-4">@Translate("FoalGender", "Foal gender")</label> 333 <div class="checkboxList"> 334 <input type="radio" 335 id="@string.Format("Kwpn_Form_RegisterFoal_FoalGender_{0}", Kwpn.Models.Enumerations.Gender.HENGST.ToString())" 336 name="Kwpn_Form_RegisterFoal_FoalGender" 337 value="@Kwpn.Models.Enumerations.Gender.HENGST.ToString()" 338 checked="checked" /> 339 <label class="normal radio-label" 340 for="@string.Format("Kwpn_Form_RegisterFoal_FoalGender_{0}", Kwpn.Models.Enumerations.Gender.HENGST.ToString())">@Translate("FoalGenderMale", "Male / Colt")</label> 341 <br /> 342 <input type="radio" 343 id="@string.Format("Kwpn_Form_RegisterFoal_FoalGender_{0}", Kwpn.Models.Enumerations.Gender.MERRIE.ToString())" 344 name="Kwpn_Form_RegisterFoal_FoalGender" 345 value="@Kwpn.Models.Enumerations.Gender.MERRIE.ToString()" /> 346 <label class="normal radio-label" 347 for="@string.Format("Kwpn_Form_RegisterFoal_FoalGender_{0}", Kwpn.Models.Enumerations.Gender.MERRIE.ToString())">@Translate("FoalGenderFemale", "Female / Filly")</label> 348 </div> 349 </div> 350 351 @if (isUnknownBreeding) 352 { 353 <div class="form-inline"> 354 <label class="control-label col-sm-4">@Translate("BreedingType", "Breeding type")</label> 355 <div class="radiodiv"> 356 <input type="radio" id="Kwpn_Form_RegisterFoal_BreedingType_None" name="Kwpn_Form_RegisterFoal_BreedingType" value='@Kwpn.Models.Enumerations.BreedingType.None.ToString("G")' checked="checked" /> 357 <label for="Kwpn_Form_RegisterFoal_BreedingType_None" class="radio-label">@Translate("BreedingType_None", "not applicable")</label> 358 <br /> 359 <input type="radio" id="Kwpn_Form_RegisterFoal_BreedingType_ET" name="Kwpn_Form_RegisterFoal_BreedingType" value='@Kwpn.Models.Enumerations.BreedingType.ET.ToString("G")' /> 360 <label for="Kwpn_Form_RegisterFoal_BreedingType_ET" class="radio-label">@Translate("BreedingType_ET", "ET")</label> 361 <br /> 362 <input type="radio" id="Kwpn_Form_RegisterFoal_BreedingType_ICSI" name="Kwpn_Form_RegisterFoal_BreedingType" value='@Kwpn.Models.Enumerations.BreedingType.ICSI.ToString("G")' /> 363 <label for="Kwpn_Form_RegisterFoal_BreedingType_ICSI" class="radio-label">@Translate("BreedingType_ICSI", "ICSI")</label> 364 </div> 365 </div> 366 } 367 368 </div> 369 370 @if (isUnknownBreeding) 371 { 372 <div id="breedingdata"> 373 <div id="breedinginfo-insemination" class="hidden"> 374 @*Datum insemineren*@ 375 <div class="form-inline"> 376 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_InseminationDate">@Translate("InseminationDate", "Insemination date")</label> 377 <input type="text" 378 class="form-control hide-hints" 379 id="Kwpn_Form_RegisterFoal_InseminationDate" 380 name="Kwpn_Form_RegisterFoal_InseminationDate" 381 value="" 382 required="required" /> 383 </div> 384 </div> 385 <div id="breedinginfo" class="hidden"> 386 @*Datum spoelen*@ 387 <div class="form-inline"> 388 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_RinseDate">@Translate("RinseDate", "Rinse date")</label> 389 <input type="text" 390 class="form-control hide-hints" 391 id="Kwpn_Form_RegisterFoal_RinseDate" 392 name="Kwpn_Form_RegisterFoal_RinseDate" 393 value="" 394 required="required" /> 395 </div> 396 397 @*Datum transplanteren*@ 398 <div class="form-inline"> 399 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_TransplantDate">@Translate("TransplantDate", "Transplant date")</label> 400 <input type="text" 401 class="form-control hide-hints" 402 id="Kwpn_Form_RegisterFoal_TransplantDate" 403 name="Kwpn_Form_RegisterFoal_TransplantDate" 404 value="" 405 required="required" /> 406 </div> 407 408 @*Draagmerrie*@ 409 <div class="form-inline"> 410 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_SurrogateMother">@Translate("SurrogateMother", "Surrogate mother")</label> 411 <input type="text" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_SurrogateMother" name="Kwpn_Form_RegisterFoal_SurrogateMother" value="" maxlength="50" required="required" /> 412 </div> 413 414 </div> 415 </div> 416 417 @*BREEDING DIRECTION*@ 418 <div class="form-inline hidden" id="unknown-breedingdirection"> 419 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_BreedingDirection">@Translate("BreedingDirection", "Breeding direction")</label> 420 <select class="form-control hide-hints unknown" id="Kwpn_Form_RegisterFoal_BreedingDirection" name="Kwpn_Form_RegisterFoal_BreedingDirection" required> 421 @*filled by javascript*@ 422 </select> 423 </div> 424 } 425 </div> 426 427 <div id="form-content-foal-deceased" class="hidden"> 428 <div class="form-group"> 429 @*DECEASED REASON *@ 430 <div class="form-inline"> 431 <label class="control-label col-sm-4">@Translate("FoalDeceasedReason", "Reason of death")</label> 432 <div class="checkboxList"> 433 @foreach (LoopItem f in GetLoop("Form.Fields").Where(f => f.GetString("Field.Systemname") == "Kwpn_Form_RegisterFoal_FoalDeceasedReason")) 434 { 435 foreach (LoopItem fo in f.GetLoop("FieldOptions")) 436 { 437 string id = string.Format("Kwpn_Form_RegisterFoal_FoalDeceasedReason_{0}", fo.GetString("Field.Option.Value")); 438 string value = Translate(string.Format("FoalDeceasedReason_Value_{0}", fo.GetString("Field.Option.Value")), fo.GetString("Field.Option.Value")); 439 string text = Translate(string.Format("FoalDeceasedReason_Text_{0}", fo.GetString("Field.Option.Text")), fo.GetString("Field.Option.Text")); 440 string checkedIndicator = ""; 441 if (fo.GetInteger("FieldOptions.LoopCounter") == 1) 442 { 443 checkedIndicator = "checked=\"checked\""; 444 } 445 <input type="radio" id="@id" name="Kwpn_Form_RegisterFoal_FoalDeceasedReason" value="@value" @checkedIndicator /> 446 <label for="@id" class="radio-label">@text</label> 447 <br /> 448 } 449 } 450 </div> 451 </div> 452 </div> 453 </div> 454 455 <div id="form-content-foal-alive" class="hidden"> 456 457 <div class="form-group"> 458 459 @*COLOR*@ 460 <div class="form-inline"> 461 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_FoalColor">@Translate("FoalColor", "Color")</label> 462 <select class="form-control hide-hints" 463 id="Kwpn_Form_RegisterFoal_FoalColor" 464 name="Kwpn_Form_RegisterFoal_FoalColor" 465 required> 466 <option value="">@Translate("Select", "Select")</option> 467 @foreach (Kwpn.Repository.Kwpn_Colors foalColor in colors) 468 { 469 <option value="@foalColor.ColorCode">@foalColor.Color</option> 470 } 471 </select> 472 @*todo: select with values from equis?*@ 473 </div> 474 475 @*CHIP*@ 476 <div class="form-inline"> 477 <label class="control-label col-sm-4">@Translate("ChipFoal", "Chip")</label> 478 <input type="checkbox" 479 id="Kwpn_Form_RegisterFoal_Chip" 480 name="Kwpn_Form_RegisterFoal_Chip" 481 value="true" checked="checked" /> 482 <label class="normal" for="Kwpn_Form_RegisterFoal_Chip">@Translate("YesNo", "yes/no")</label> 483 </div> 484 485 @*SEND PASSPORT TO STABLE OPTION FOR FOREIGN USERS*@ 486 @if (!string.Equals(dwUser.CountryCode, "NL") && !string.Equals(dwUser.Country, "NL")) 487 { 488 <div class="form-inline"> 489 <label class="control-label col-sm-4">@Translate("PassportViaStableAddress", "Passport via stable address")</label> 490 <input type="checkbox" 491 id="Kwpn_Form_RegisterFoal_PassportViaStabbleAddress" 492 name="Kwpn_Form_RegisterFoal_PassportViaStabbleAddress" 493 value="true" /> 494 <label class="normal" for="Kwpn_Form_RegisterFoal_PassportViaStabbleAddress">@Translate("YesNo", "yes/no")</label> 495 </div> 496 } 497 498 @if (isKnownBreeding) 499 { 500 @*BREEDING DIRECTION*@ 501 <div class="form-inline"> 502 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_BreedingDirection">@Translate("BreedingDirection", "Breeding direction")</label> 503 <select class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_BreedingDirection" name="Kwpn_Form_RegisterFoal_BreedingDirection" required> 504 @*filled by javascript*@ 505 </select> 506 </div> 507 } 508 509 </div> 510 511 @*GENOMIC BREEDING VALUE RESEARCH*@ 512 <div class="genome-box"> 513 <div class="form-inline"> 514 515 <h3>@Translate("RegisterFoal_GenomicBreedingValueResearchHeader", "Request genome breeding value OC")</h3> 516 517 <p>@Translate("RegisterFoal_GenomicBreedingValueResearchInfoIntro", "")</p> 518 519 <label class="control-label col-sm-4 no-asterisk" for="Kwpn_Form_RegisterFoal_RequestForDnaResearch">@Translate("RegisterFoal_GenomicBreedingValueResearchLabel", "Request direct genome breeding value OC")</label> 520 521 <input type="checkbox" 522 id="Kwpn_Form_RegisterFoal_RequestForDnaResearch" 523 name="Kwpn_Form_RegisterFoal_RequestForDnaResearch" 524 value="true" /><div id="DisabledByBreedingType">@Translate("GenomeBreedingValueTest_DisabledText", "Genome breeding value OC is not available for Dressage- and Geldinghorses")</div> 525 </div> 526 </div> 527 528 @*WFFS-TEST*@ 529 <div class="wffs-box"> 530 <div class="form-inline"> 531 532 <h3>@Translate("RegisterFoal_WFFSTestHeader", "Request WFFS-test")</h3> 533 <p>@Translate("RegisterFoal_WFFSTestIntro", "")</p> 534 535 <label class="control-label col-sm-4 no-asterisk" for="Kwpn_Form_RegisterFoal_RequestWffsTest">@Translate("RegisterFoal_WFFSTestAcceptance", "Request WFFS-test")</label> 536 <input type="checkbox" 537 id="Kwpn_Form_RegisterFoal_RequestWffsTest" 538 name="Kwpn_Form_RegisterFoal_RequestWffsTest" 539 value="true" /> 540 </div> 541 </div> 542 543 @if (isKnownBreeding) 544 { 545 // unknown breeding > owner = breeder 546 547 <br /> 548 <h3>@Translate("BreederData", "Breeder data")</h3> 549 <div class="form-group"> 550 @*BREEDER MEMBERSHIP NUMBER*@ 551 <div class="form-inline"> 552 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_BreederMembershipNumber">@Translate("BreederMembershipNumber", "BreederMembershipNumber")</label> 553 <input type="text" 554 class="form-control hide-hints" 555 id="Kwpn_Form_RegisterFoal_BreederMembershipNumber" 556 name="Kwpn_Form_RegisterFoal_BreederMembershipNumber" 557 value="" 558 maxlength="50" 559 required /> 560 </div> 561 @*BREEDER NAME*@ 562 <div class="form-inline"> 563 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_BreederName">@Translate("BreederName", "Breeder name")</label> 564 <input type="text" 565 class="form-control hide-hints" 566 id="Kwpn_Form_RegisterFoal_BreederName" 567 name="Kwpn_Form_RegisterFoal_BreederName" 568 value="" 569 maxlength="50" 570 required /> 571 </div> 572 @*BREEDER NAME*@ 573 <div class="form-inline"> 574 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_CoBreederMembershipNumbers">@Translate("Co-Breeders", "Co-breeders")</label> 575 <input type="text" 576 class="form-control hide-hints" 577 id="Kwpn_Form_RegisterFoal_CoBreederMembershipNumbers" 578 name="Kwpn_Form_RegisterFoal_CoBreederMembershipNumbers" 579 value="" 580 maxlength="255" /> 581 </div> 582 </div> 583 } 584 585 </div> 586 </div> 587 588 <div class="col-xs-12 col-md-8 col-md-push-4 navigation-next"> 589 <button class="panelbutton panelbutton--next" id="btn-next-owner-data" type="button" defaultText="@Translate("FoalRegistration_BtnToOwnerData", "To registered info").JsEncode()" disabled="disabled">@Translate("FoalRegistration_BtnToOwnerData", "To registered info")</button> 590 </div> 591 <div class="col-xs-12 col-md-4 col-md-pull-8 navigation-prev"> 592 <button class="panelbutton panelbutton--previous" id="btn-prev-beeding-data" type="button" defaultText="@Translate("FoalRegistration_BtnBackToBreedingData", "Back").JsEncode()">@Translate("FoalRegistration_BtnBackToBreedingData", "Back")</button> 593 </div> 594 595 </div> 596 </div> 597 598 <div class="row hidden" id="owner-data-panel"> 599 <div class="col-xs-12"> 600 <h3>@Translate("OwnerData", "Owner data")</h3> 601 <div class="form-group"> 602 @*OWNER NAME*@ 603 <div class="form-inline"> 604 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerName">@Translate("OwnerName", "Owner name")</label> 605 <input type="text" 606 class="form-control hide-hints" 607 id="Kwpn_Form_RegisterFoal_OwnerName" 608 name="Kwpn_Form_RegisterFoal_OwnerName" 609 value="@KwpnUsers.CurrentUser().DwUser.Name" 610 maxlength="50" 611 required 612 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.Name)) { <text> readonly="readonly" </text> } /> 613 </div> 614 @*OWNER ADDRESS*@ 615 <div class="form-inline"> 616 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerAddress">@Translate("OwnerAddress", "Owner address")</label> 617 <input type="text" 618 class="form-control hide-hints" 619 id="Kwpn_Form_RegisterFoal_OwnerAddress" 620 name="Kwpn_Form_RegisterFoal_OwnerAddress" 621 value="@KwpnUsers.CurrentUser().DwUser.Address" 622 maxlength="50" 623 required 624 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.Address)) { <text> readonly="readonly" </text> } /> 625 </div> @*OWNER HOUSE NUMBER*@ 626 <div class="form-inline"> 627 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerHouseNumber">@Translate("OwnerHouseNumber", "Owner house number")</label> 628 <input type="text" 629 class="form-control hide-hints" 630 id="Kwpn_Form_RegisterFoal_OwnerHouseNumber" 631 name="Kwpn_Form_RegisterFoal_OwnerHouseNumber" 632 value="@KwpnUsers.CurrentUser().DwUser.HouseNumber" 633 maxlength="10" 634 @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)) { <text> required</text>} 635 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.HouseNumber)) { <text> readonly="readonly" </text> } /> 636 </div> 637 @*OWNER POSTAL CODE*@ 638 <div class="form-inline"> 639 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerPostalCode">@Translate("OwnerPostalCode", "Owner postal code")</label> 640 <input type="text" 641 class="form-control hide-hints" 642 id="Kwpn_Form_RegisterFoal_OwnerPostalCode" 643 name="Kwpn_Form_RegisterFoal_OwnerPostalCode" 644 value="@KwpnUsers.CurrentUser().DwUser.Zip" 645 maxlength="10" 646 required 647 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.Zip)) { <text> readonly="readonly" </text> } /> 648 </div> 649 @*OWNER CITY*@ 650 <div class="form-inline"> 651 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerCity">@Translate("OwnerCity", "Owner city")</label> 652 <input type="text" 653 class="form-control hide-hints" 654 id="Kwpn_Form_RegisterFoal_OwnerCity" 655 name="Kwpn_Form_RegisterFoal_OwnerCity" 656 value="@KwpnUsers.CurrentUser().DwUser.City" 657 maxlength="50" 658 required 659 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.City)) { <text> readonly="readonly" </text> } /> 660 </div> 661 @*OWNER COUNTRY*@ 662 <div class="form-inline"> 663 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerCountry">@Translate("OwnerCountry", "Owner country")</label> 664 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.Country)) 665 { 666 <input type="hidden" name="Kwpn_Form_RegisterFoal_OwnerCountry" id="Kwpn_Form_RegisterFoal_OwnerCountry" value="@KwpnUsers.CurrentUser().DwUser.Country" /> 667 <input type="text" class="form-control" readonly="readonly" name="Kwpn_Form_RegisterFoal_OwnerCountryVisible" id="Kwpn_Form_RegisterFoal_OwnerCountryVisible" value="@countries.FirstOrDefault(c => c.CountryCode.Equals(KwpnUsers.CurrentUser().DwUser.Country) || c.CountryName.Equals(KwpnUsers.CurrentUser().DwUser.Country)).CountryName" /> 668 } 669 else 670 { 671 <select class="form-control hide-hints capitalize" name="Kwpn_Form_RegisterFoal_OwnerCountry" id="Kwpn_Form_RegisterFoal_OwnerCountry" required> 672 <option value="" selected>@Translate("Select")</option> 673 @foreach (var country in countries.OrderBy(c => c.CountryName)) 674 { 675 <option value="@country.CountryCode" data-code="@country.CountryCode" class="capitalize" @if (KwpnUsers.CurrentUser().DwUser.Country.Equals(country.CountryCode, StringComparison.InvariantCultureIgnoreCase) || KwpnUsers.CurrentUser().DwUser.Country.Equals(country.CountryName, StringComparison.InvariantCultureIgnoreCase)) { <text> selected="selected" </text> }>@country.CountryName</option> 676 } 677 </select> 678 } 679 680 681 682 </div> @*OWNER EMAIL*@ 683 <div class="form-inline"> 684 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerEmailAddress">@Translate("OwnerEmail", "Owner email address")</label> 685 <input type="email" 686 class="form-control hide-hints" 687 id="Kwpn_Form_RegisterFoal_OwnerEmailAddress" 688 name="Kwpn_Form_RegisterFoal_OwnerEmailAddress" 689 value="@KwpnUsers.CurrentUser().DwUser.Email" 690 maxlength="255" 691 required 692 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.Email)) { <text> readonly="readonly" </text> } /> 693 </div> 694 @*OWNER PHONE1*@ 695 <div class="form-inline"> 696 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerPhone1">@Translate("OwnerPhone1", "Owner phone 1")<span class="fa fa-asterisk" aria-hidden="true"></span></label> 697 <input type="tel" 698 class="form-control hide-hints" 699 id="Kwpn_Form_RegisterFoal_OwnerPhone1" 700 name="Kwpn_Form_RegisterFoal_OwnerPhone1" 701 value="@KwpnUsers.CurrentUser().DwUser.Phone" 702 maxlength="50" 703 required 704 @if (!string.IsNullOrWhiteSpace(KwpnUsers.CurrentUser().DwUser.Phone)) { <text> readonly="readonly" </text> } 705 onchange="ValidatePanelOwnerData(this)" /> 706 </div> 707 708 @*OWNER PHONE2*@ 709 <div class="form-inline"> 710 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_OwnerPhone2">@Translate("OwnerPhone2", "Owner phone 2")</label> 711 <input type="tel" 712 class="form-control hide-hints" 713 id="Kwpn_Form_RegisterFoal_OwnerPhone2" 714 name="Kwpn_Form_RegisterFoal_OwnerPhone2" 715 value="@KwpnUsers.CurrentUser().DwUser.PhoneMobile" 716 maxlength="50" 717 required 718 onchange="ValidatePanelOwnerData(this)" /> 719 </div> 720 721 <div class="form-inline not-in-form"> 722 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers">@Translate("Co-Registered", "(Co-)Registered")</label> 723 <input type="hidden" id="Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers" name="Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers" value="" /> 724 <div class="radiodiv"> 725 <div id="selectedCoRegistered"></div> 726 <button id="btnAddCoRegistered"><i class="fa fa-plus"></i> @Translate("AddCoRegistered", "Add a co-registered")</button> 727 </div> 728 </div> 729 730 </div> 731 732 <div class="col-xs-12 col-md-8 col-md-push-4 navigation-next"> 733 <button class="panelbutton panelbutton--next" id="btn-next-barn-data" type="button" defaultText="@Translate("FoalRegistration_BtnToBarnData", "To stable info").JsEncode()" disabled="disabled">@Translate("FoalRegistration_BtnToBarnData", "To stable info")</button> 734 </div> 735 <div class="col-xs-12 col-md-4 col-md-pull-8 navigation-prev"> 736 <button class="panelbutton panelbutton--previous" id="btn-prev-registration-data" type="button" defaultText="@Translate("FoalRegistration_BtnBackToRegistrationData", "Back").JsEncode()">@Translate("FoalRegistration_BtnBackToRegistrationData", "Back")</button> 737 </div> 738 739 </div> 740 </div> 741 742 743 <div class="row hidden" id="barn-data-panel"> 744 <div class="col-xs-12"> 745 746 <h3>@Translate("StableData", "Stable data")</h3> 747 <div class="form-group"> 748 @*STABLE ADDRESS*@ 749 <div class="form-inline"> 750 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StableAddress">@Translate("StableAddress", "Address")</label> 751 <input type="text" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_StableAddress" name="Kwpn_Form_RegisterFoal_StableAddress" value="" required /> 752 </div> 753 @*STABLE HOUSE NUMBER*@ 754 <div class="form-inline"> 755 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StableHouseNumber">@Translate("StableHouseNumber", "House number")</label> 756 <input type="text" class="form-control hide-hints" maxlength="10" id="Kwpn_Form_RegisterFoal_StableHouseNumber" name="Kwpn_Form_RegisterFoal_StableHouseNumber" value="" @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)) { <text> required</text>} /> 757 </div> 758 @*STABLE POSTAL CODE*@ 759 <div class="form-inline"> 760 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StablePostalCode">@Translate("StablePostalCode", "Postal code")</label> 761 <input type="text" class="form-control hide-hints" maxlength="10" id="Kwpn_Form_RegisterFoal_StablePostalCode" name="Kwpn_Form_RegisterFoal_StablePostalCode" value="" required /> 762 </div> 763 @*STABLE CITY*@ 764 <div class="form-inline"> 765 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StableCity">@Translate("StableCity", "City")</label> 766 <input type="text" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_StableCity" name="Kwpn_Form_RegisterFoal_StableCity" value="" required /> 767 </div> 768 @*STABLE COUNTRY*@ 769 <div class="form-inline"> 770 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_StableCountry">@Translate("StableCountry", "Country")</label> 771 <select class="form-control hide-hints capitalize" name="Kwpn_Form_RegisterFoal_StableCountry" id="Kwpn_Form_RegisterFoal_StableCountry" onchange="ShowCountrySpecificFields($(this).val())" required> 772 <option value="" selected>@Translate("Select")</option> 773 @foreach (var country in countries.OrderBy(c => c.CountryName)) 774 { 775 <option value="@country.CountryCode" data-code="@country.CountryCode" class="capitalize" @if (KwpnUsers.CurrentUser().DwUser.Country.Equals(country.CountryCode, StringComparison.InvariantCultureIgnoreCase) || KwpnUsers.CurrentUser().DwUser.Country.Equals(country.CountryName, StringComparison.InvariantCultureIgnoreCase)) { <text> selected="selected" </text> }>@country.CountryName</option> 776 } 777 </select> 778 </div> 779 780 781 @* UBN Code *@ 782 783 <div id="panel-ubn-code" class="form-inline"> 784 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_UBNCode">@Translate("UbnCode", "UBN Code")<i class="fa fa-asterisk" aria-hidden="true"></i></label> 785 <input type="text" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_UBNCode" name="Kwpn_Form_RegisterFoal_UBNCode" value="@ubn" /> 786 <div id="validateUbnError" class="errortext col-sm-4 col-sm-offset-4 small uppercase" style="display:none;"> 787 <p class="errortext">@Translate("FoalRegistrationUbnInvalid", "Not a valid UBN")</p> 788 </div> 789 <div class="form-inline"> 790 <p> 791 @Translate("Kwpn_Form_RegisterFoal_UBNCode_Information", "Vanaf 1-1-2025 is het KWPN verplicht om tijdens de registratie van uw veulen, de UBN-nummer van het adres waarop uw veulen gestald is, bij de geboortemelding te melden naar het RVO (Rijksdienst voor Ondernemend Nederland). Zonder het UBN-nummer is het voor het KWPN niet mogelijk om een databasemelding bij het RVO te kunnen doen en mag er geen paspoort verstrekt worden voor uw veulen.") 792 </p> 793 </div> 794 795 </div> 796 797 @*EXTRA FOAL AMOUNT*@ 798 <div class="form-inline"> 799 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_ExtraAmountOfRegistrations">@Translate("ExtraFoalAmount", "Are there any more foals submitted for registration on this stable address?")</label> 800 <input type="number" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_ExtraAmountOfRegistrations" name="Kwpn_Form_RegisterFoal_ExtraAmountOfRegistrations" value="0" min="0" required /> 801 802 </div> 803 </div> 804 805 @if (!isKnownBreeding || ProductHelper.GetProductPrice(registerFoalProduct) > 0) 806 { 807 <br /><hr /> 808 } 809 810 @if (!isKnownBreeding) 811 { 812 <br /> 813 <h3>@Translate("Remarks", "Remarks")</h3> 814 <div class="form-group"> 815 @*REMARKS*@ 816 <div class="form-inline"> 817 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_Remarks">@Translate("YourRemarks", "Your remarks")</label> 818 <textarea class="form-control hide-hints" 819 id="Kwpn_Form_RegisterFoal_Remarks" 820 name="Kwpn_Form_RegisterFoal_Remarks"></textarea> 821 </div> 822 </div> 823 } 824 825 @if (ProductHelper.GetProductPrice(registerFoalProduct) > 0) 826 { 827 <div id="payment-data"> 828 <br /> 829 <h3>@Translate("PaymentData", "Payment data")</h3> 830 <div class="form-group"> 831 <div class="form-inline"> 832 <label class="control-label col-sm-4">@Translate("PaymentMethod", "Payment method")</label> 833 @foreach (var f in GetLoop("Form.Fields").Where(f => f.GetString("Field.Systemname") == "Kwpn_Form_RegisterFoal_PaymentMethod")) 834 { 835 var fieldOptions = f.GetLoop("FieldOptions"); 836 837 var checkedCounter = isKnownBreeding ? fieldOptions.Count : 1; // KWPN-1326 iDeal default bij known, per factuur bij unknown 838 839 // filter payment options 840 if (isUnknownBreeding) 841 { 842 fieldOptions = fieldOptions.Where(fo => fo.GetString("Field.Option.Value").Equals("OnAccount") || fo.GetString("Field.Option.Value").Equals("Authorization")).ToList(); 843 } 844 845 foreach (var fo in fieldOptions) 846 { 847 var id = string.Format("Kwpn_Form_RegisterFoal_PaymentMethod_{0}", fo.GetString("Field.Option.Value")); 848 var value = Translate(string.Format("PaymentMethod_Value_{0}", fo.GetString("Field.Option.Value")), fo.GetString("Field.Option.Value")); 849 var text = Translate(string.Format("PaymentMethod_Text_{0}", fo.GetString("Field.Option.Text")), fo.GetString("Field.Option.Text")); 850 var checkedIndicator = ""; 851 if (fo.GetInteger("FieldOptions.LoopCounter") == checkedCounter) 852 { 853 checkedIndicator = "checked=\"checked\""; 854 } 855 856 <input type="radio" id="@id" name="Kwpn_Form_RegisterFoal_PaymentMethod" value="@value" @checkedIndicator /> 857 <input type="hidden" id="@id" name="Kwpn_Form_RegisterFoal_PaymentMethod_FieldOptionId" value="@fo.GetInteger("Field.Option.ParentSystemname")" /> 858 <label for="@id" class="radio-label">@text</label> 859 } 860 } 861 </div> 862 </div> 863 864 <div class="row hidden" id="payment-container"> 865 <div class="col-xs-12"> 866 <div class="form-group"> 867 <br /> 868 <br /> 869 <h3>@Translate("AuthorizationData", "Authorization data")</h3> 870 <div class="form-inline"> 871 <label class="control-label col-sm-4">@Translate("Authorization", "Authorization")</label> 872 <input type="checkbox" id="Kwpn_Form_RegisterFoal_AgreedWithAuthorization" name="Kwpn_Form_RegisterFoal_AgreedWithAuthorization" required /> <label for="Kwpn_Form_RegisterFoal_AgreedWithAuthorization" class="checkbox-label no-asterisk">@Translate("AuthorizationApproved", "Approved")</label> 873 </div> 874 <div class="form-inline" id="iban-wrapper"> 875 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_IBAN">@Translate("IBAN", "IBAN")</label> 876 <input type="text" 877 class="form-control text-uppercase" 878 id="Kwpn_Form_RegisterFoal_IBAN" 879 name="Kwpn_Form_RegisterFoal_IBAN" 880 value="" 881 data-default="@iban" 882 title="@Translate("UseValidIBAN")" required /> 883 <br style="clear:both;" /> 884 <label class="control-label col-sm-4 hidden-xs no-asterisk"> </label> 885 <small class="nowrap">@Translate("IBAN_PatternInfo", "Pattern: NL12 BANK 3456 7890 12")</small> 886 </div> 887 <div class="form-inline"> 888 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_AuthorizationName">@Translate("AuthorizationName", "Name")</label> 889 <input type="text" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_AuthorizationName" name="Kwpn_Form_RegisterFoal_AuthorizationName" value="@authorizationName" required /> 890 </div> 891 <div class="form-inline"> 892 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_AuthorizationResidence">@Translate("AuthorizationResidence", "Residence")</label> 893 <input type="text" class="form-control hide-hints" id="Kwpn_Form_RegisterFoal_AuthorizationResidence" name="Kwpn_Form_RegisterFoal_AuthorizationResidence" value="@authorizationResidence" required /> 894 </div> 895 <div class="form-inline"> 896 <label class="control-label col-sm-4" for="Kwpn_Form_RegisterFoal_BIC">@Translate("BIC", "BIC")</label> 897 <div class="inner-addon right-addon col-sm-4"> 898 <i class="fa fa-question" id="bicinfo" data-toggle="tooltip" title="@Translate("BICTooltip", "Visitors from outside the Netherlands have to enter their Business Identifier Code (BIC)")"></i> 899 <input type="text" 900 class="form-control text-uppercase" 901 id="Kwpn_Form_RegisterFoal_BIC" 902 name="Kwpn_Form_RegisterFoal_BIC" 903 value="" 904 data-default="@bic" 905 pattern="([a-zA-Z]{4}[a-zA-Z]{2}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?)" 906 title="@Translate("UseValidBIC")" /> 907 </div> 908 909 </div> 910 <br /> 911 <br /> 912 </div> 913 </div> 914 </div> 915 </div> 916 917 } 918 else 919 { 920 // no payment for foals of unknown breeding. 921 <input type="hidden" 922 name="Kwpn_Form_RegisterFoal_PaymentMethod" 923 id="Kwpn_Form_RegisterFoal_PaymentMethod" 924 value="@PaymentMethod.Unknown" /> 925 } 926 927 </div> 928 </div> 929 930 931 <button class="hidden" type="submit" id="kwpn_Form_RegisterFoal_FormSubmitter">@Translate("Submit", "Submit")</button> 932 933 <div class="row hidden" id="panel-order-overview"> 934 <div class="col-xs-12 form-order-overview"> 935 <h2>@Translate("OrderOverview", "Order overview")</h2> 936 <table> 937 <colgroup> 938 <col width="30" /> 939 <col /> 940 </colgroup> 941 <tr class="head"> 942 <th><i class="fa fa-info"></i></th> 943 <th>@Translate("Product", "Product")</th> 944 </tr> 945 <tr> 946 <td> </td> 947 <td><span id="foalRegisterOverviewProductName"></span></td> 948 </tr> 949 <tr class="head"> 950 <th><i class="fa fa-eur"></i></th> 951 <th>@Translate("Price", "Price")</th> 952 </tr> 953 <tr> 954 <td> </td> 955 <td><span id="foalRegisterOverviewProductPriceFormatted"></span></td> 956 </tr> 957 <tr class="conditions"> 958 <td><input type="checkbox" class="form-control agreement-checkbox" id="Kwpn_Form_RegisterFoal_AgreedWithConditions" name="Kwpn_Form_RegisterFoal_AgreedWithConditions" required="required" /></td> 959 <td><label for="Kwpn_Form_RegisterFoal_AgreedWithConditions">@FormHelper.GetAgreeWithConditionsText(Kwpn.Models.Enumerations.FormType.RegisterFoal)</label></td> 960 </tr> 961 <tr class="conditions"> 962 <td><input type="checkbox" class="form-control agreement-checkbox" id="Kwpn_Form_RegisterFoal_AgreedWithPrivacy" name="Kwpn_Form_RegisterFoal_AgreedWithPrivacy" required="required" /></td> 963 <td><label for="Kwpn_Form_RegisterFoal_AgreedWithPrivacy">@Translate("AgreeWithPrivacyStatement", "I agree with the conditions stated in the privacy statement page")</label></td> 964 </tr> 965 </table> 966 967 <div class="col-xs-12 navigation-next"> 968 <button class="submitBtn" type="button" defaultText="@buttonText.JsEncode()" disabled="disabled">@buttonText</button> 969 </div> 970 </div> 971 972 973 <div class="col-xs-12 navigation-prev"> 974 <button class="panelbutton panelbutton--previous" id="btn-prev-owner-data" type="button" defaultText="@Translate("FoalRegistration_BtnBackToOwnerData", "Back").JsEncode()">@Translate("FoalRegistration_BtnBackToOwnerData", "Back")</button> 975 </div> 976 </div> 977 978 @GetValue("Form.End") 979 980 </div> 981 </div> 982 </div> 983 984 @SnippetStart("JavascriptsBottom") 985 986 <div class="modal fade" id="select-co-registered" tabindex="-1" role="dialog" aria-labelledby="select-co-registered-modal" aria-hidden="true"> 987 <div class="modal-dialog"> 988 <div class="modal-content"> 989 <div class="modal-header"> 990 @Translate("FoalRegistration_SelectCoRegistered", "Select a co-registered") 991 </div> 992 <div class="modal-body"> 993 <form name="form-select-new-owner" class="form-body"> 994 <div class="form-group"> 995 <div class="form-inline"> 996 <label class="control-label col-sm-4" for="SearchCoRegisteredMemberNumber">@Translate("FoalRegistration_SearchCoRegisteredMemberNumber", "Membership number")</label> 997 <input type="text" class="form-control" maxlength="50" name="SearchCoRegisteredMemberNumber" id="SearchCoRegisteredMemberNumber" placeholder="@Translate("FoalRegistration_SearchCoRegisteredMemberNumberPlaceholder", "Membership number")" /> 998 </div> 999 <div class="form-inline"> 1000 <label class="control-label col-sm-4" for="ButtonSearchCoRegistered"> </label> 1001 <button class="btn btn-default" id="ButtonSearchCoRegistered" name="ButtonSearchCoRegistered">@Translate("FoalRegistration_SearchCoRegisteredButtonText", "Search")</button> 1002 </div> 1003 <div id="SearchCoRegisteredResult"></div> 1004 </div> 1005 </form> 1006 </div> 1007 <div class="modal-footer"> 1008 <a class="orange_arrow_link" data-dismiss="modal" href="javascript:void(0);">@Translate("FoalRegistration_SearchCoRegisteredCancel", "Cancel")</a> 1009 <a class="orange_balloon_link modal-ok hidden" href="javascript:void(0);">@Translate("FoalRegistration_SearchCoRegisteredSelectCoRegistered", "Select co-registered")</a> 1010 </div> 1011 </div> 1012 </div> 1013 </div> 1014 1015 <script> 1016 var nameStartingLetters = ""; 1017 1018 1019 1020 @if (isUnknownBreeding) { 1021 <text> 1022 1023 function ShowOrHideEtIcsiBreedingInfoFields() { 1024 if ($("input[name=Kwpn_Form_RegisterFoal_BreedingType]").is(":visible")) { 1025 var selectedBreedingType = $("input[name=Kwpn_Form_RegisterFoal_BreedingType]:checked").val(); 1026 if (selectedBreedingType === '@Kwpn.Models.Enumerations.BreedingType.None.ToString("G")') { 1027 HideEtIcsiBreedingInfoFields(); 1028 ShowInseminationBreedingInfoFields(); 1029 } else { 1030 HideInseminationBreedingInfoFields(); 1031 ShowEtIcsiBreedingInfoFields(); 1032 } 1033 } else { 1034 HideEtIcsiBreedingInfoFields(); 1035 HideInseminationBreedingInfoFields(); 1036 } 1037 } 1038 1039 function HideInseminationBreedingInfoFields() { 1040 1041 // hide all breeding info fields 1042 $("#breedinginfo-insemination").addClass("hidden"); 1043 1044 // clear all breeding info fields 1045 // unrequire all breeding info fields 1046 $("#breedinginfo-insemination").find(":input").each(function () { 1047 $(this).val(""); 1048 $(this).removeAttr("required"); 1049 }); 1050 1051 SetAsterisken(); 1052 } 1053 1054 function ShowInseminationBreedingInfoFields() { 1055 1056 // show new fields form 1057 $("#breedinginfo-insemination").removeClass("hidden");// make fields required 1058 $("#Kwpn_Form_RegisterFoal_InseminationDate", "#breedinginfo-insemination").attr("required", "required"); 1059 SetAsterisken(); 1060 1061 $("input[name=Kwpn_Form_RegisterFoal_BreedingType]").off("change").on("change", function () { 1062 ShowOrHideEtIcsiBreedingInfoFields(); 1063 }); 1064 } 1065 1066 function HideEtIcsiBreedingInfoFields() { 1067 1068 // hide all breeding info fields 1069 $("#breedinginfo").addClass("hidden"); 1070 1071 // clear all breeding info fields 1072 // unrequire all breeding info fields 1073 $("#breedinginfo").find(":input").each(function () { 1074 $(this).val(""); 1075 $(this).removeAttr("required"); 1076 }); 1077 1078 SetAsterisken(); 1079 } 1080 1081 function ShowEtIcsiBreedingInfoFields() { 1082 1083 // show new fields form 1084 $("#breedinginfo").removeClass("hidden"); 1085 1086 // make fields required 1087 $("#Kwpn_Form_RegisterFoal_RinseDate", "#breedinginfo").attr("required", "required"); 1088 $("#Kwpn_Form_RegisterFoal_TransplantDate", "#breedinginfo").attr("required", "required"); 1089 $("#Kwpn_Form_RegisterFoal_SurrogateMother", "#breedinginfo").attr("required", "required"); 1090 $("#Kwpn_Form_RegisterFoal_BreedingDirection.unknown").attr("required", "required"); 1091 SetAsterisken(); 1092 1093 $("input[name=Kwpn_Form_RegisterFoal_BreedingType]").off("change").on("change", function () { 1094 ShowOrHideEtIcsiBreedingInfoFields(); 1095 }); 1096 1097 } 1098 1099 function HideAddFatherManuallyFields() { 1100 1101 // make father required 1102 $("#SearchFather").attr("required", "required"); 1103 1104 // hide all add father manually fields 1105 $("#fatherinfo").addClass("hidden"); 1106 1107 // clear all add father manually fields 1108 // unrequire all add father manually fields 1109 $("#addfathermanually").find(":input").each(function () { 1110 $(this).val(""); 1111 $(this).removeAttr("required"); 1112 }); 1113 1114 SetAsterisken(); 1115 } 1116 1117 function ShowAddFatherManuallyFields() { 1118 1119 // clear previous 1120 ClearPreviousStudResults() 1121 1122 $addfathermanually = $("#addfathermanually"); 1123 1124 // clear input 1125 $("#SearchFather").val(""); 1126 $("label[for=SearchFather]").find("i").remove(); 1127 1128 // show new fields form 1129 $("#fatherinfo").removeClass("hidden"); 1130 1131 // make father search unrequired and father fields required 1132 $("#SearchFather").removeAttr("required"); 1133 $("#Kwpn_Form_RegisterFoal_StudAnimalName", $addfathermanually).attr("required", "required"); 1134 $("#Kwpn_Form_RegisterFoal_StudLifeNumber", $addfathermanually).attr("required", "required"); 1135 SetAsterisken(); 1136 1137 // focus on first field 1138 $("#addfathermanually input:text").first().focus(); 1139 1140 ShowExtraFatherFields(); 1141 } 1142 1143 function HideExtraFatherFields() { 1144 // hide all add father manually fields 1145 $("#extrafatherinfo").addClass("hidden"); 1146 1147 // clear all add father manually fields 1148 // unrequire all add father manually fields 1149 $("#extrafather > input").each(function () { 1150 $(this).val(""); 1151 $(this).removeAttr("required"); 1152 }); 1153 } 1154 1155 function ShowExtraFatherFields() { 1156 $extrafather = $("#extrafather"); 1157 1158 // show new fields form 1159 $("#extrafatherinfo").removeClass("hidden"); 1160 1161 // make fields required 1162 $("#Kwpn_Form_RegisterFoal_ViaStation", $extrafather).attr("required", "required"); 1163 SetAsterisken(); 1164 } 1165 1166 function SearchAvailableStuds() { 1167 1168 // clear previous 1169 ClearPreviousStudResults() 1170 1171 // hide add father manually form fields 1172 HideAddFatherManuallyFields(); 1173 1174 1175 // Hide registration fields 1176 $("#Kwpn_Form_RegisterFoal_FoalDateOfBirth").val(""); 1177 HideRegistration(); 1178 1179 var searchValue = $("#SearchFather").val(); 1180 if (searchValue === "") { 1181 return; 1182 } 1183 1184 var spinner = $('span.input-group-btn i'); 1185 var resultContainer = $("#StudSearchResults"); 1186 1187 if (searchValue.length !== 0) spinner.removeClass('fa-search').addClass('fa-spinner fa-spin'); 1188 1189 var getStudsUrl = "/kwpnwebapi/horses/findfather/@culture/" + searchValue; 1190 $.getJSON(getStudsUrl).done(function (result) { 1191 1192 // clear previous 1193 ClearPreviousStudResults(); 1194 1195 var addNewStudOption = "<p><hr/>@Translate("Stud_CreateNewText", "If you can not find the stud, you can create a new one bij pushing the link below. Extra fields will appear in the form.")<br /><a href=\"javascript:void(0);\" onclick=\"javascript:ShowAddFatherManuallyFields();\" id=\"create-new-stud\">@Translate("Father_CreateNewButtonText", "Add father manually")</a></p>"; 1196 1197 if (result == null || result.Top100 == null || result.Top100.length == 0) { 1198 resultContainer.append("<p>@Translate("NoFatherFound", "No optional father found") @Translate("PleaseRefineYourSearch", "Please refine your search")</p>" + addNewStudOption); 1199 $('div.input-group.form-control').height(resultContainer.height() + 24); 1200 $("#SearchFather").val(""); 1201 spinner.removeClass('fa-spinner fa-spin').addClass('fa-search'); 1202 } else { 1203 var studs = result.Top100; 1204 if (studs.length == 1) { 1205 // immediate select 1206 var stud = studs[0]; 1207 var lifeNumber = (stud.LifenumberComplete !== "") ? stud.LifenumberComplete : stud.Lifenumber; 1208 SelectFather(stud.HorseCode, stud.AnimalName, lifeNumber); 1209 spinner.removeClass('fa-spinner fa-spin').addClass('fa-search'); 1210 ShowExtraFatherFields(); 1211 } else { 1212 // create list 1213 resultContainer.append('<b>@Translate("SelectFather", "Select the father")</b><br />'); 1214 $.each(studs, function (i, stud) { 1215 var lifeNumber = (stud.LifenumberComplete !== "") ? stud.LifenumberComplete : stud.Lifenumber; 1216 var approved = (stud.IsApprovedStud) ? "<div class='fa-approved-stud'></div> " : ""; 1217 resultContainer.append("<div class='studoption' data-horsecode='" + stud.HorseCode + "' data-lifenumber='" + lifeNumber + "'>" + approved + stud.AnimalName + " <span class='small'>(" + stud.Father + " x " + stud.MothersFather + ")</span></div>"); 1218 }); 1219 resultContainer.append(addNewStudOption); 1220 1221 $(".studoption").click(function () { 1222 SelectFather($(this).attr("data-horsecode"), $(this).text(), $(this).attr("data-lifenumber")); 1223 ShowExtraFatherFields(); 1224 ValidatePanelBreedingData(true); 1225 }); 1226 1227 $('div.input-group.form-control').height(resultContainer.height() + 24); 1228 spinner.removeClass('fa-spinner fa-spin').addClass('fa-search'); 1229 } 1230 } 1231 }).fail(function (jqxhr, textStatus, error) { 1232 1233 // clear previous 1234 ClearPreviousStudResults() 1235 1236 var err = textStatus + ", " + error; 1237 console.error("Request SearchAvailableStuds Failed: " + err); 1238 spinner.removeClass('fa-spinner fa-spin').addClass('fa-search'); 1239 1240 }); 1241 } 1242 1243 function ClearPreviousStudResults() { 1244 var resultContainer = $("#StudSearchResults"); 1245 var selectedFather = $("#StudSelected"); 1246 resultContainer.html(""); 1247 selectedFather.html(""); 1248 1249 // clear father code 1250 var selectedFatherCode = $("#Kwpn_Form_RegisterFoal_StudAnimalCode"); 1251 selectedFatherCode.val(""); 1252 1253 // clear father name 1254 var selectedFatherName = $("#Kwpn_Form_RegisterFoal_StudAnimalName"); 1255 selectedFatherName.val(""); 1256 1257 // clear father lifenumber 1258 var selectedFatherLifenumber = $("#Kwpn_Form_RegisterFoal_StudLifeNumber"); 1259 selectedFatherLifenumber.val(""); 1260 1261 $('div.input-group.form-control').css('height', '40px'); 1262 // make searchfield required required 1263 $("#SearchFather").attr("required", "required"); 1264 } 1265 1266 function SelectFather(animalCode, animalName, animalLifenumber) { 1267 1268 $('div.input-group.form-control').css('height', '40px'); 1269 // get selected value and fill hiddenfiled and person balloon 1270 1271 // fill father code 1272 var selectedFatherCode = $("#Kwpn_Form_RegisterFoal_StudAnimalCode"); 1273 selectedFatherCode.val(animalCode); 1274 1275 // fill father name 1276 var selectedFatherName = $("#Kwpn_Form_RegisterFoal_StudAnimalName"); 1277 selectedFatherName.val(animalName); 1278 1279 // fill father lifenumber 1280 var selectedFatherLifenumber = $("#Kwpn_Form_RegisterFoal_StudLifeNumber"); 1281 selectedFatherLifenumber.val(animalLifenumber); 1282 1283 var selectedFather = $("#StudSelected"); 1284 selectedFather.append("<div class='form-inline'><label class='control-label col-sm-4'>@Translate("SelectedFather", "Selected father")</label><div class='selectedFather'><i class='fa fa-close delete-selected-father'></i> " + animalName + " (" + animalLifenumber + ")</div></div>"); 1285 1286 $("#StudSearchResults").html(""); 1287 $("#SearchFather").val(""); 1288 $("label[for=SearchFather]").find("i").remove(); 1289 1290 $(".delete-selected-father").click(function () { 1291 ClearPreviousStudResults(); 1292 HideExtraFatherFields(); 1293 $("#Kwpn_Form_RegisterFoal_FoalDateOfBirth").val(""); 1294 HideRegistration(); 1295 ValidatePanelBreedingData(true); 1296 SetAsterisken(); 1297 }); 1298 1299 // unrequire the search field and focus 1300 $("#SearchFather").removeAttr("required"); 1301 $("#SearchFather").focus(); 1302 1303 } 1304 1305 </text> 1306 } 1307 1308 function ShowCountrySpecificFields(value) { 1309 1310 $("#Kwpn_Form_RegisterFoal_UBNCode").removeAttr("required"); 1311 $('#panel-ubn-code').hide(); 1312 1313 if (value === undefined || value === '') { 1314 value = '@KwpnUsers.CurrentUser().DwUser.Country'; 1315 } 1316 1317 if (value === 'NL') { 1318 $("#Kwpn_Form_RegisterFoal_UBNCode").attr("required", "required"); 1319 $('#panel-ubn-code').show(); 1320 } 1321 } 1322 1323 // check if form is valid 1324 function FormIsHtml5Valid() { 1325 return $("#FormRegisterHorse .form-control:invalid").length == 0; 1326 } 1327 1328 function ibanIsForeign(iban) { 1329 return !iban.toLowerCase().match("^nl"); 1330 } 1331 1332 function makeBicRequired() { 1333 $("#Kwpn_Form_RegisterFoal_BIC").prop("required", true); 1334 var asterisk = "<i class=\"fa fa-asterisk\" aria-hidden=\"true\"></i>"; 1335 $("#Kwpn_Form_RegisterFoal_BIC") 1336 .closest(".form-inline") 1337 .children("label") 1338 .not(":has(> i)") 1339 .append(asterisk); 1340 } 1341 1342 function makeBicUnRequired() { 1343 $("#Kwpn_Form_RegisterFoal_BIC").prop("required", false); 1344 $("#Kwpn_Form_RegisterFoal_BIC") 1345 .closest(".form-inline") 1346 .children("label") 1347 .find("i") 1348 .remove(); 1349 } 1350 1351 // Validate name 1352 function validateName() { 1353 var name = $("#Kwpn_Form_RegisterFoal_FoalName").val(); 1354 1355 // validate starting letter 1356 if (nameStartingLetters != "") { 1357 if (name != "") { 1358 if (!name.toUpperCase().match("^" + nameStartingLetters.toUpperCase())) { 1359 Swal.fire({ title: "@Translate("InvalidInputTitle", "Invalid input")" ,text: "@Translate("FoalNameValidation_StartingLetter", "De naam moet beginnen met") '" + nameStartingLetters.toUpperCase() + "'.", customClass: layout.notifyCopyrightMessageClass }); 1360 $("#Kwpn_Form_RegisterFoal_FoalName").val(""); 1361 } 1362 } 1363 } else { 1364 // wat dan? breeding info ophalen wellicht niet geslaagd ... 1365 } 1366 1367 // validate syntax 1368 name = $("#Kwpn_Form_RegisterFoal_FoalName").val(); 1369 if (name != "") { 1370 1371 // accepts alphanumeric (plus diacritics), spaces, dots, apostrophe 1372 var myReg = new RegExp("^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .'&-]*$"); 1373 if (!myReg.test(name)) { 1374 Swal.fire({ title: "@Translate("InvalidInputTitle", "Invalid input")" ,text: "@Translate("FoalNameValidation_CharCheck", "De naam bevat ongeldige karakters. Alleen letters, cijfers en spaties zijn toegestaan.")", customClass: layout.notifyCopyrightMessageClass }); 1375 $("#Kwpn_Form_RegisterFoal_FoalName").val(""); 1376 } 1377 } 1378 1379 ValidatePanelRegistrationData(true); 1380 } 1381 1382 function equisOffline() { 1383 $(".modal-body", "#equis-offline") // set alert text 1384 .html('@Translate("EquisOffline_Modal_BodyText_RegisterFoal", "Our back office is currently unavailable.<br />Most of the website is viewable.<br/>For the parts we need to communicate with our back office, we ask you to try again soon.<br />Sorry for the inconvenience.")'); 1385 $("#equis-offline").modal("show"); // show alert to user by showing modal (in master) 1386 $(".submitBtn").text("@Translate("EquisOffline_FormButtonReplaceText", "Back office offline")"); // change button text 1387 $("#kwpn_Form_RegisterFoal_FormSubmitter").prop("disabled", true); // disable hidden button 1388 $("#FormRegisterHorse :input").prop("disabled", true); // disable all input/textarea/select/checkbox/radio/button 1389 } 1390 1391 function setCoRegistered(personCode, personInfo) { 1392 var coRegistered = "<span class='coregisterred' data-personcode='" + personCode + "'><a href='#' class='pull-right removecoregistered' data-personcode='" + personCode + "'><i class='fa fa-trash'></i></a><span>" + personInfo + "</span></span>"; 1393 if ($("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val().length > 1) { 1394 //add co-registered 1395 $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val(function (idx, curr) { return curr + "," + personCode }); 1396 $("#selectedCoRegistered").html(function (idx, curr) { return curr + coRegistered }); 1397 } else { 1398 //set first co-registered 1399 $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val(personCode); 1400 $("#selectedCoRegistered").html(coRegistered); 1401 } 1402 $("#SearchCoRegisteredResult").html(""); 1403 $("#select-co-registered").modal("hide"); 1404 1405 $(".removecoregistered") 1406 .off("click") 1407 .on("click", function (e) { 1408 1409 e.preventDefault(); 1410 var removePersonCode = $(this).attr("data-personcode"); 1411 1412 // remove from hidden field 1413 var currentCoRegistered = $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val().split(','); 1414 var index = currentCoRegistered.indexOf(removePersonCode); 1415 if (index >= 0) { currentCoRegistered.splice(index, 1); } 1416 $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val(currentCoRegistered.join(",")); 1417 1418 // remove from list 1419 $("span[data-personcode=" + removePersonCode + "]", "#selectedCoRegistered").remove(); 1420 1421 }); 1422 } 1423 1424 function GetExVat(incVat) { 1425 return incVat / 1.21; // extract 21% VAT 1426 } 1427 1428 // shows or hides the iban and bic fields based on payment method selection 1429 function ValidateAuthorizationFields() { 1430 var toggleDiv = $("#payment-container"); 1431 var selectedValue = $("input[name=Kwpn_Form_RegisterFoal_PaymentMethod]:checked").val(); 1432 if (selectedValue == '@Kwpn.Models.Enumerations.PaymentMethod.Authorization.ToString()') { 1433 // show 1434 var userIban = $("#Kwpn_Form_RegisterFoal_IBAN").attr("data-default"); 1435 var userBic = $("#Kwpn_Form_RegisterFoal_BIC").attr("data-default"); 1436 $("#Kwpn_Form_RegisterFoal_IBAN").val(userIban); 1437 $("#Kwpn_Form_RegisterFoal_AuthorizationName").val("@KwpnUsers.CurrentUser().DwUser.Name.JsEscapeDoubleQuotes().FixAutoInputStringValue(50)"); 1438 $("#Kwpn_Form_RegisterFoal_AuthorizationResidence").val("@KwpnUsers.CurrentUser().DwUser.City.JsEscapeDoubleQuotes().FixAutoInputStringValue(50)"); 1439 $("#Kwpn_Form_RegisterFoal_BIC").val(userBic); 1440 1441 if (ibanIsForeign(userIban)) { 1442 makeBicRequired(); 1443 } else { 1444 makeBicUnRequired(); 1445 } 1446 1447 toggleDiv.removeClass("hidden"); 1448 } else { 1449 // clear fields 1450 $("#Kwpn_Form_RegisterFoal_AgreedWithAuthorization").prop('checked', false); 1451 $("#Kwpn_Form_RegisterFoal_IBAN").val(""); 1452 $("#Kwpn_Form_RegisterFoal_AuthorizationName").val(""); 1453 $("#Kwpn_Form_RegisterFoal_AuthorizationResidence").val(""); 1454 $("#Kwpn_Form_RegisterFoal_BIC").val(""); 1455 makeBicUnRequired(); 1456 // hide 1457 if (!toggleDiv.hasClass("hidden")) {toggleDiv.addClass("hidden");} 1458 } 1459 SetRequiredFields(); 1460 ValidatePanelBarnData(true); 1461 } 1462 1463 function SetBreedingInfo(breedingInfo) { 1464 1465 var breedingCode = breedingInfo.BreedingCode; // DEK-0000000 1466 //var dioNumber = breedingInfo.Dionumber; // 0 1467 var breedingDate = breedingInfo.DateOfBreeding; // 2015-07-27T00:00:00 1468 //var mareCode = breedingInfo.MareCode; // P-000000 (is current animalcode) 1469 var studCode = breedingInfo.StallionCode; // P-000000 1470 var studNumber = breedingInfo.StallionNumber; // 1234567890 1471 var studName = breedingInfo.StallionName; // HENKIE 1472 var breedingDirectionAdvice = breedingInfo.AdvicedBreedingDirection; // FOKR-000000 - not used anymore. if more than 1 user needs to select manually 1473 var dnaMessage = breedingInfo.DNAMessage; // DRAAGTIJD LANG 1474 //var dnaNumberMare = breedingInfo.DNANumberMare; // VHL_ID 155916 1475 //var dnaNumberStud = breedingInfo.DnaNumberStallion; // VHL_ID 252047 1476 var startingLetters = breedingInfo.StartingLetters; // P 1477 //var breedingDirectionEnabled = breedingInfo.blnEnableBreedingDirection; // true, if false there should only be 1 required option 1478 var breedingDirections = breedingInfo.lstBreedingDirection; // array of string: FOKR-000000, FOKR-000000, FOKR-000000 1479 var breeders = breedingInfo.lstBreeder; // array of PersonModel 1480 var owners = breedingInfo.lstOwner; // array of PersonModel 1481 var fathersName = breedingInfo.FathersName; // HENKIE 1482 var formattedDateOfBreeding = breedingInfo.FormattedDateOfBreeding; // empty sting when unknown breeding, short date pattern is is known breeding 1483 1484 1485 //var stableName = ""; // not used 1486 var stableAddress = ""; 1487 var stableHouseNumber = ""; 1488 var stablePostalCode = ""; 1489 var stableCity = ""; 1490 var stableCountryCode = ""; 1491 1492 if (breedingInfo.StableaddressPlace != "" && breedingInfo.StableaddressPostalcode != "") { 1493 // use stable info 1494 // stableName = breedingInfo.Stablename; // not used 1495 stableAddress = breedingInfo.StableaddressStreetname; 1496 stableHouseNumber = breedingInfo.StableaddressHouseno; 1497 stablePostalCode = breedingInfo.StableaddressPostalcode; 1498 stableCity = breedingInfo.StableaddressPlace; 1499 stableCountryCode = breedingInfo.StableaddressCountrycode; 1500 } else { 1501 // use prio 1 owner info 1502 if (owners.length > 0) { 1503 var prio1Owner = owners[0]; 1504 stableAddress = prio1Owner.Streetname; 1505 stableHouseNumber = prio1Owner.Houseno; 1506 stablePostalCode = prio1Owner.Postalcode; 1507 stableCity = prio1Owner.Place; 1508 stableCountryCode = prio1Owner.Countrycode; 1509 } 1510 } 1511 1512 // update fathersName and dateofbreeding, is possible the selected breeding has changed depending on submitted birthdate 1513 if (formattedDateOfBreeding && formattedDateOfBreeding !== null && formattedDateOfBreeding.length !== 0) { 1514 $("#Kwpn_Form_RegisterFoal_BreedingDate_Visible").val(formattedDateOfBreeding); 1515 } 1516 if (breedingDate && breedingDate !== null && breedingDate.length !== 0) { 1517 $("#Kwpn_Form_RegisterFoal_BreedingDate").val(breedingDate); 1518 } 1519 if (fathersName && fathersName !== null && fathersName.length !== 0) { 1520 $("#Kwpn_Form_RegisterFoal_StudAnimalName").val(fathersName); 1521 } 1522 1523 @if (isKnownBreeding) { 1524 <text> 1525 if (studCode > '') { 1526 $("#Kwpn_Form_RegisterFoal_StudAnimalCode").val(studCode); 1527 } 1528 1529 // if dnaMessage = "DRAAGTIJD LANG" dan is de draagtijd te kort OF te lang, waarschuwing tonen 1530 if (dnaMessage === "DRAAGTIJD LANG") { 1531 $("#GestationPeriodWarning").removeClass("hidden"); 1532 } else { 1533 $("#GestationPeriodWarning").addClass("hidden"); 1534 } 1535 if (dnaMessage > "") { // als dnaMessage gevuld is dan meesturen 1536 $("#Kwpn_Form_RegisterFoal_GestationPeriodInfo").val(dnaMessage); 1537 } 1538 // fill breeding code? 1539 $("#Kwpn_Form_RegisterFoal_BreedingCode").val(breedingCode); 1540 </text> 1541 } else { 1542 <text> 1543 if (studCode > '' && studCode !== $("#Kwpn_Form_RegisterFoal_StudAnimalCode").val()) { 1544 var alertText = "@Translate("BreedingWarning", "Waarschuwing! Controleer de vader gegevens zorgvuldig. Er is bij ons een dekking met hengst {paardcode} bekend.")"; 1545 alertText = alertText.replace("{paardcode}", studName + " (" + studNumber + ")"); 1546 Swal.fire({ title: "@Translate("WarningTitle", "Watch out!")" ,text: alertText, customClass: layout.notifyCopyrightMessageClass }); 1547 1548 } 1549 </text> 1550 } 1551 1552 // set starting letter for horse name 1553 nameStartingLetters = startingLetters; 1554 1555 // fill breeding directions and set adviced breeding direction 1556 try { 1557 1558 // set breeding direction default 1559 $("#Kwpn_Form_RegisterFoal_BreedingDirection").find('option') 1560 .remove() 1561 .end() 1562 .append('<option value="">@Translate("Select")</option>') 1563 .append('<option value="FOKR-000001">@Translate("Fokrichting_DP", "Dressage horse")</option>') 1564 .append('<option value="FOKR-000002">@Translate("Fokrichting_GP", "Gelderlander")</option>') 1565 .append('<option value="FOKR-000006">@Translate("Fokrichting_SP", "Jumping horse")</option>') 1566 .append(' <option value="FOKR-000007">@Translate("Fokrichting_TP", "Harness horse")</option>') 1567 .val(''); 1568 1569 if (breedingDirections.length > 0) { 1570 1571 // remove options with value and value not in breedingDirections array 1572 $("#Kwpn_Form_RegisterFoal_BreedingDirection").find('option').each(function() { 1573 var option = $(this); 1574 var optionValue = option.val(); 1575 if (optionValue != "" && jQuery.inArray(optionValue, breedingDirections) === -1) { 1576 option.remove(); 1577 } 1578 }); 1579 1580 // if only 1 breeding direction option, preselect it - KWPN-1390 1581 var remainingOptions = $("#Kwpn_Form_RegisterFoal_BreedingDirection").find('option'); 1582 if (remainingOptions.length == 2) { // not 1 because the empty 'select' option is also present 1583 $('#Kwpn_Form_RegisterFoal_BreedingDirection option:last-child').prop('selected', true); 1584 } 1585 } 1586 } catch (err) { 1587 console.error("Fill breeding directions failed: " + err.message); 1588 } 1589 1590 // fill breeder data 1591 try { 1592 if (breeders.length > 0) { 1593 1594 // breeder 1595 var primaryBreeder = breeders[0]; 1596 $("#Kwpn_Form_RegisterFoal_BreederMembershipNumber").val(primaryBreeder.Personcode); 1597 $("#Kwpn_Form_RegisterFoal_BreederMembershipNumber").attr("readonly", "readonly"); // readonly 1598 $("#Kwpn_Form_RegisterFoal_BreederName").val(primaryBreeder.Personname); 1599 $("#Kwpn_Form_RegisterFoal_BreederName").attr("readonly", "readonly"); // readonly 1600 1601 // co-breeders 1602 var coBreeders = ""; 1603 if (breeders.length > 1) { 1604 1605 for (i = 0; i < breeders.length; i++) { 1606 if (i > 0) { 1607 if (coBreeders != "") { 1608 coBreeders += ","; 1609 } 1610 coBreeders += breeders[i].Personname; 1611 } 1612 } 1613 } 1614 $("#Kwpn_Form_RegisterFoal_CoBreederMembershipNumbers").val(coBreeders); 1615 $("#Kwpn_Form_RegisterFoal_CoBreederMembershipNumbers").attr("readonly", "readonly"); // readonly 1616 1617 // list of breeder personcodes 1618 } 1619 } catch (err) { 1620 console.error("Fill breeder data failed: " + err.message); 1621 } 1622 1623 // fill co registered data (doesn't get saved in the form) 1624 try { 1625 var coRegisteredList = ""; 1626 if (owners.length > 0) { 1627 $.each(owners, function(i, owner) { 1628 if (owner.Personcode.toLowerCase() !== '@KwpnUsers.CurrentUser().DwUser.UserName.ToLower()') { 1629 var personCode = owner.Personcode; 1630 var personInfo = owner.Personname; 1631 if (owner.Place !== "") { 1632 personInfo = "<b>" + personInfo + "</b>, " + owner.Place.toUpperCase(); 1633 } 1634 var coRegistered = "<span class='coregisterred' data-personcode='" + personCode + "'><span>" + personInfo + "</span></span>"; 1635 if ($("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val().length > 1) { 1636 //add co-registered 1637 $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val(function(idx, curr) {return curr + "," + personCode}); 1638 $("#selectedCoRegistered").html(function (idx, curr) { return curr + coRegistered }); 1639 } else { 1640 //set first co-registered 1641 $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val(personCode); 1642 $("#selectedCoRegistered").html(coRegistered); 1643 } 1644 } 1645 }); 1646 if (coRegisteredList !== "") { 1647 $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val(coRegisteredList); 1648 } 1649 } 1650 } 1651 catch (err) { 1652 console.error("Fill co-registered data failed: " + err.message); 1653 } 1654 1655 // fill stable data 1656 try { 1657 $("#Kwpn_Form_RegisterFoal_StableAddress").val(stableAddress); 1658 $("#Kwpn_Form_RegisterFoal_StableHouseNumber").val(stableHouseNumber); 1659 $("#Kwpn_Form_RegisterFoal_StablePostalCode").val(stablePostalCode); 1660 $("#Kwpn_Form_RegisterFoal_StableCity").val(stableCity); 1661 $("#Kwpn_Form_RegisterFoal_StableCountry").val(stableCountryCode); 1662 $("#Kwpn_Form_RegisterFoal_UBNCode").val('@ubn'); 1663 } 1664 catch (err) { 1665 console.error("Fill stable data failed: " + err.message); 1666 } 1667 } 1668 1669 function FillHiddenFields() { 1670 // set hidden field values 1671 $("#Kwpn_Form_RegisterFoal_AccessUserID").val("@userId"); 1672 $("#Kwpn_Form_RegisterFoal_AccessUserUserName").val("@membershipNumber"); 1673 $("#Kwpn_Form_RegisterFoal_SubmitDateTime").val("@currentDateTime"); 1674 $("#Kwpn_Form_RegisterFoal_OrderStatus").val("@Kwpn.Models.Enumerations.FormOrderStatus.FormSubmitted.ToString()"); 1675 $("#Kwpn_Form_RegisterFoal_OrderStatusLastChanged").val("@currentDateTime"); 1676 $("#Kwpn_Form_RegisterFoal_ProductName").val("@registerFoalProduct.Name.FixAutoInputStringValue(150)"); 1677 $("#Kwpn_Form_RegisterFoal_ProductPrice").val("@ProductHelper.GetProductPrice(registerFoalProduct)"); 1678 $("#Kwpn_Form_RegisterFoal_Culture").val("@culture"); 1679 $("#Kwpn_Form_RegisterFoal_MareAnimalCode").val("@animalCode.ToUpper()"); 1680 @if (isKnownBreeding) 1681 { 1682 <text> 1683 $("#Kwpn_Form_RegisterFoal_StudAnimalCode").val("@studAnimalCode"); 1684 $("#Kwpn_Form_RegisterFoal_IsKnownBreeding").val('true'); 1685 $("#Kwpn_Form_RegisterFoal_BreedingDate").val("@breedingDate"); 1686 $("#Kwpn_Form_RegisterFoal_GestationPeriodInfo").val('EIGEN VERZOEK'); 1687 </text> 1688 } 1689 else 1690 { 1691 <text> 1692 $("#Kwpn_Form_RegisterFoal_IsKnownBreeding").val(''); // false/False/0 leveren True op in de db 1693 $("#Kwpn_Form_RegisterFoal_BreedingDate").val("1-1-1900"); // dw geeft date format error als deze niet wordt gevuld 1694 $("#Kwpn_Form_RegisterFoal_GestationPeriodInfo").val(''); 1695 </text> 1696 } 1697 } 1698 1699 function SetAsterisken() { 1700 var asterisk = "<i class=\"fa fa-asterisk\" aria-hidden=\"true\"></i>"; 1701 $('input,textarea,select') 1702 .filter('[required]:visible') 1703 .closest(".form-inline") 1704 .children("label") 1705 .not(".no-asterisk") 1706 .not(":has(> i)") 1707 .append(asterisk); 1708 } 1709 1710 function SetRequiredFields() { 1711 var deceasedValue = $("#Kwpn_Form_RegisterFoal_FoalDeceased:checked").length > 0; 1712 1713 1714 1715 if (deceasedValue) { 1716 $("#Kwpn_Form_RegisterFoal_FoalName").removeAttr("required"); 1717 $("#Kwpn_Form_RegisterFoal_FoalColor").removeAttr("required"); 1718 $("#Kwpn_Form_RegisterFoal_BreedingDirection").removeAttr("required"); 1719 $("#Kwpn_Form_RegisterFoal_BreederMembershipNumber").removeAttr("required"); 1720 $("#Kwpn_Form_RegisterFoal_BreederName").removeAttr("required"); 1721 $("#Kwpn_Form_RegisterFoal_OwnerName").removeAttr("required"); 1722 $("#Kwpn_Form_RegisterFoal_OwnerAddress").removeAttr("required"); 1723 @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)){<text>$("#Kwpn_Form_RegisterFoal_OwnerHouseNumber").removeAttr("required");</text>} 1724 $("#Kwpn_Form_RegisterFoal_OwnerPostalCode").removeAttr("required"); 1725 $("#Kwpn_Form_RegisterFoal_OwnerCity").removeAttr("required"); 1726 $("#Kwpn_Form_RegisterFoal_OwnerEmailAddress").removeAttr("required"); 1727 $("#Kwpn_Form_RegisterFoal_OwnerPhone1").removeAttr("required"); 1728 $("#Kwpn_Form_RegisterFoal_StableAddress").removeAttr("required"); 1729 @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)){<text>$("#Kwpn_Form_RegisterFoal_StableHouseNumber").removeAttr("required");</text>} 1730 $("#Kwpn_Form_RegisterFoal_StablePostalCode").removeAttr("required"); 1731 1732 $("#Kwpn_Form_RegisterFoal_StableCity").removeAttr("required"); 1733 $("#Kwpn_Form_RegisterFoal_StableCountry").removeAttr("required"); 1734 $("#Kwpn_Form_RegisterFoal_ExtraAmountOfRegistrations").removeAttr("required"); 1735 $("#Kwpn_Form_RegisterFoal_AgreedWithAuthorization").removeAttr("required"); 1736 $("#Kwpn_Form_RegisterFoal_IBAN").removeAttr("required"); 1737 $("#Kwpn_Form_RegisterFoal_AuthorizationName").removeAttr("required"); 1738 $("#Kwpn_Form_RegisterFoal_AuthorizationResidence").removeAttr("required"); 1739 } else { 1740 $("#Kwpn_Form_RegisterFoal_FoalName").attr("required", "required"); 1741 $("#Kwpn_Form_RegisterFoal_FoalColor").attr("required", "required"); 1742 $("#Kwpn_Form_RegisterFoal_BreedingDirection").attr("required", "required"); 1743 $("#Kwpn_Form_RegisterFoal_BreederMembershipNumber").attr("required", "required"); 1744 $("#Kwpn_Form_RegisterFoal_BreederName").attr("required", "required"); 1745 $("#Kwpn_Form_RegisterFoal_OwnerName").attr("required", "required"); 1746 $("#Kwpn_Form_RegisterFoal_OwnerAddress").attr("required", "required"); 1747 @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)){<text>$("#Kwpn_Form_RegisterFoal_OwnerHouseNumber").attr("required", "required");</text>} 1748 $("#Kwpn_Form_RegisterFoal_OwnerPostalCode").attr("required", "required"); 1749 $("#Kwpn_Form_RegisterFoal_OwnerCity").attr("required", "required"); 1750 $("#Kwpn_Form_RegisterFoal_OwnerEmailAddress").attr("required", "required"); 1751 $("#Kwpn_Form_RegisterFoal_OwnerPhone1").attr("required", "required"); 1752 $("#Kwpn_Form_RegisterFoal_StableAddress").attr("required", "required"); 1753 @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)){<text>$("#Kwpn_Form_RegisterFoal_StableHouseNumber").attr("required", "required");</text>} 1754 $("#Kwpn_Form_RegisterFoal_StablePostalCode").attr("required", "required"); 1755 $("#Kwpn_Form_RegisterFoal_StableCity").attr("required", "required"); 1756 1757 $("#Kwpn_Form_RegisterFoal_StableCountry").attr("required", "required"); 1758 $("#Kwpn_Form_RegisterFoal_ExtraAmountOfRegistrations").attr("required", "required"); 1759 var paymentMethod = $("input[name=Kwpn_Form_RegisterFoal_PaymentMethod]:checked").val(); 1760 if (paymentMethod == '@Kwpn.Models.Enumerations.PaymentMethod.Authorization.ToString()') { 1761 $("#Kwpn_Form_RegisterFoal_AgreedWithAuthorization").attr("required", "required"); 1762 $("#Kwpn_Form_RegisterFoal_IBAN").attr("required", "required"); 1763 $("#Kwpn_Form_RegisterFoal_AuthorizationName").attr("required", "required"); 1764 $("#Kwpn_Form_RegisterFoal_AuthorizationResidence").attr("required", "required"); 1765 } else { 1766 $("#Kwpn_Form_RegisterFoal_AgreedWithAuthorization").removeAttr("required"); 1767 $("#Kwpn_Form_RegisterFoal_IBAN").removeAttr("required"); 1768 $("#Kwpn_Form_RegisterFoal_AuthorizationName").removeAttr("required"); 1769 $("#Kwpn_Form_RegisterFoal_AuthorizationResidence").removeAttr("required"); 1770 } 1771 1772 // numbers only 1773 $("#Kwpn_Form_RegisterFoal_ExtraAmountOfRegistrations").numeric(); 1774 } 1775 SetAsterisken(); 1776 } 1777 1778 function SetProductInformation() { 1779 1780 var requestForGenomicBreedingValueResearch = $("#Kwpn_Form_RegisterFoal_RequestForDnaResearch:checked").length > 0; 1781 var requestForWffsTest = $("#Kwpn_Form_RegisterFoal_RequestWffsTest:checked").length > 0; 1782 1783 var isDeceased = $("#Kwpn_Form_RegisterFoal_FoalDeceased:checked").length > 0; 1784 if (isDeceased) { 1785 $(".submitBtn").text("@Translate("Submit", "Submit")"); 1786 $("#Kwpn_Form_RegisterFoal_ProductName").val("@deceasedHorseProduct.Name"); 1787 $("#Kwpn_Form_RegisterFoal_ProductPrice").val("@ProductHelper.GetProductPrice(deceasedHorseProduct)"); 1788 $("#foalRegisterOverviewProductName").html("@deceasedHorseProduct.Name"); 1789 $("#foalRegisterOverviewProductPriceFormatted").html("@ProductHelper.FormatPrice(ProductHelper.GetProductPrice(deceasedHorseProduct))"); 1790 $("#register-foal-product-name").html("@deceasedHorseProduct.Name"); 1791 $("#register-foal-product-price").html("@ProductHelper.FormatPrice(ProductHelper.GetProductPrice(deceasedHorseProduct))"); 1792 $("#payment-data").addClass("hidden"); 1793 } else { 1794 $(".submitBtn").text("@Translate("Pay", "Pay")"); 1795 var registrationPrice = parseFloat(@ProductHelper.GetProductPrice(registerFoalProduct).ToString().Replace(",", ".")); 1796 var genomicBreedingValueResearchProductPrice = parseFloat(@ProductHelper.GetProductPrice(genomicBreedingValueResearchProduct).ToString().Replace(",", ".")); 1797 var wffsTestProductPrice = parseFloat(@ProductHelper.GetProductPrice(wffsTestProduct).ToString().Replace(",", ".")); 1798 var wFFSTestWhenDNAResearchSelectedProductPrice = parseFloat(@ProductHelper.GetProductPrice(wFFSTestWhenDNAResearchSelectedProduct).ToString().Replace(",", ".")); 1799 var products = ""; 1800 var productDescription = ""; 1801 var totalPrice = parseFloat(0.0); 1802 1803 // core product 1804 productDescription = "@registerFoalProduct.Name"; 1805 products += "@StringConstants.ProductNumbers.RegisterFoalKnownBreeding"; 1806 totalPrice = totalPrice + registrationPrice; 1807 1808 var productDescriptionFooter = productDescription; 1809 var productDescriptionAside = productDescription; 1810 1811 // add price when more products are added 1812 if (requestForGenomicBreedingValueResearch || requestForWffsTest) { 1813 productDescriptionAside = productDescriptionAside + " (@ProductHelper.FormatPrice(ProductHelper.GetProductPrice(registerFoalProduct)))"; 1814 } 1815 1816 // if genomic breeding value research is requested, add the product 1817 if (requestForGenomicBreedingValueResearch) { 1818 productDescriptionFooter = productDescriptionFooter + "<br />@genomicBreedingValueResearchProduct.Name"; 1819 productDescriptionAside = productDescriptionAside + "<br />@genomicBreedingValueResearchProduct.Name (@ProductHelper.FormatPrice(ProductHelper.GetProductPrice(genomicBreedingValueResearchProduct)))"; 1820 products += ";@StringConstants.ProductNumbers.DNAResearch"; 1821 totalPrice = totalPrice + genomicBreedingValueResearchProductPrice; 1822 } 1823 1824 // if wffs-test is requested, add the product 1825 // when genomic breeding value research is also checked use a combo discount product 1826 if (requestForWffsTest && requestForGenomicBreedingValueResearch) { 1827 productDescriptionFooter = productDescriptionFooter + "<br />@wFFSTestWhenDNAResearchSelectedProduct.Name"; 1828 productDescriptionAside = productDescriptionAside + "<br />@wFFSTestWhenDNAResearchSelectedProduct.Name (@ProductHelper.FormatPrice(ProductHelper.GetProductPrice(wFFSTestWhenDNAResearchSelectedProduct)))"; 1829 products += ";@StringConstants.ProductNumbers.WFFSTestWhenDNAResearchSelected"; 1830 totalPrice = totalPrice + wFFSTestWhenDNAResearchSelectedProductPrice; 1831 } 1832 else if (requestForWffsTest) { 1833 productDescriptionFooter = productDescriptionFooter + "<br />@wffsTestProduct.Name"; 1834 productDescriptionAside = productDescriptionAside + "<br />@wffsTestProduct.Name (@ProductHelper.FormatPrice(ProductHelper.GetProductPrice(wffsTestProduct)))"; 1835 products += ";@StringConstants.ProductNumbers.WFFSTest"; 1836 totalPrice = totalPrice + wffsTestProductPrice; 1837 } 1838 1839 // hidden field productname and price 1840 $("#Kwpn_Form_RegisterFoal_ProductName").val(products); 1841 $("#Kwpn_Form_RegisterFoal_ProductPrice").val(totalPrice.toFixed(2).replace(".", ",")); 1842 1843 // footer description and price 1844 var footerPriceText = 1845 "€" + 1846 GetExVat(totalPrice).toFixed(2).replace(".", ",") + 1847 " (@Translate("VatExcluded", "VAT excluded"))<br />€" + 1848 totalPrice.toFixed(2).replace(".", ",") + 1849 " (@Translate("VatIncluded", "VAT included"))"; 1850 1851 $("#foalRegisterOverviewProductName").html(productDescriptionFooter); 1852 $("#foalRegisterOverviewProductPriceFormatted").html(footerPriceText); 1853 1854 // aside description and price 1855 $("#register-foal-product-name").html(productDescriptionAside); 1856 $("#register-foal-product-price").html("€" + totalPrice.toFixed(2).replace(".", ",")); 1857 $("#payment-data").removeClass("hidden"); 1858 } 1859 1860 } 1861 1862 function HideRegistration() { 1863 1864 var birthDateInfo = $("#birthDateInfo"); 1865 var baseInfo = $("#form-content-base-info"); 1866 var aliveContent = $("#form-content-foal-alive"); 1867 var deceasedContent = $("#form-content-foal-deceased"); 1868 1869 baseInfo.addClass("hidden"); 1870 @if (isUnknownBreeding) { 1871 <text> 1872 ShowOrHideEtIcsiBreedingInfoFields(); 1873 $("#unknown-breedingdirection").addClass("hidden"); 1874 </text> 1875 } 1876 aliveContent.addClass("hidden"); 1877 deceasedContent.addClass("hidden"); 1878 birthDateInfo.removeClass("hidden"); 1879 } 1880 1881 function ShowRegistration(deceasedValue) { 1882 1883 var birthDateInfo = $("#birthDateInfo"); 1884 var baseInfo = $("#form-content-base-info"); 1885 var aliveContent = $("#form-content-foal-alive"); 1886 var deceasedContent = $("#form-content-foal-deceased"); 1887 1888 baseInfo.removeClass("hidden"); 1889 @if (isUnknownBreeding) { 1890 <text> 1891 ShowOrHideEtIcsiBreedingInfoFields(); 1892 $("#unknown-breedingdirection").removeClass("hidden"); 1893 </text> 1894 } 1895 if (deceasedValue.length > 0) { 1896 aliveContent.addClass("hidden"); 1897 deceasedContent.removeClass("hidden"); 1898 } else { 1899 aliveContent.removeClass("hidden"); 1900 deceasedContent.addClass("hidden"); 1901 } 1902 birthDateInfo.addClass("hidden"); 1903 ValidatePanelRegistrationData(true); 1904 } 1905 1906 function FixDateFields() { 1907 var defaultDateValue = '1-1-1900'; 1908 var dateFields = [ 1909 "Kwpn_Form_RegisterFoal_SubmitDateTime", 1910 "Kwpn_Form_RegisterFoal_BreedingDate", 1911 "Kwpn_Form_RegisterFoal_OrderStatusLastChanged", 1912 "Kwpn_Form_RegisterFoal_FoalDateOfBirth", 1913 "Kwpn_Form_RegisterFoal_InseminationDate", 1914 "Kwpn_Form_RegisterFoal_RinseDate", 1915 "Kwpn_Form_RegisterFoal_TransplantDate"] 1916 1917 $.each(dateFields, function (i, val) { 1918 var $field = $("#" + val); 1919 if (!$field.length) { 1920 console.error("field #" + val + " does not exist"); 1921 } 1922 else if ($field.val() === "") { 1923 $field.val(defaultDateValue); 1924 } else { 1925 //console.log("already filled with " + $field.val()); 1926 } 1927 }); 1928 } 1929 1930 function AfterBreedingDirectionSelection() { 1931 1932 var selectedValue = $("#Kwpn_Form_RegisterFoal_BreedingDirection").val(); 1933 1934 // als selectie is TUIGPAARD of GELDERSPAARD dan OC aanvragen disablen 1935 var $genomeBox = $(".genome-box"); 1936 if (selectedValue === "FOKR-000007" || selectedValue === "FOKR-000002") { 1937 $("#Kwpn_Form_RegisterFoal_RequestForDnaResearch").prop('checked', false); 1938 SetProductInformation(); 1939 SetRequiredFields(); 1940 $genomeBox.addClass("disabled"); 1941 $("#Kwpn_Form_RegisterFoal_RequestForDnaResearch").prop('disabled', true); 1942 } else { 1943 $genomeBox.removeClass("disabled"); 1944 $("#Kwpn_Form_RegisterFoal_RequestForDnaResearch").prop('disabled', false); 1945 } 1946 1947 ValidatePanelRegistrationData(true); 1948 } 1949 1950 function ValidatePanelBreedingData(handleButton) { 1951 1952 var breedingDataIdValid = true; 1953 1954 // check if stud data is available and no manual input is being entered 1955 if ($("#Kwpn_Form_RegisterFoal_StudAnimalCode").val() === "" && $("#fatherinfo").is(":hidden")) breedingDataIdValid = false; 1956 1957 // check required fields 1958 if (breedingDataIdValid) { 1959 $("#breeding-data-panel :input[required]:visible").each(function () { 1960 if ($(this).attr("type") === "checkbox" && $(this).prop("checked") === false) { 1961 breedingDataIdValid = false; 1962 } else if ($(this).val() === "") { 1963 breedingDataIdValid = false; 1964 } 1965 }); 1966 } 1967 1968 // set button 1969 if (handleButton) { 1970 $("#btn-next-breeding-data").prop("disabled", !breedingDataIdValid); 1971 } 1972 1973 return breedingDataIdValid; 1974 } 1975 1976 function ValidatePanelRegistrationData(handleButton) { 1977 1978 var registrationDataIdValid = true; 1979 1980 // check required fields 1981 $("#registration-data-panel :input[required]:visible").each(function () { 1982 if ($(this).attr("type") === "checkbox" && $(this).prop("checked") === false) { 1983 registrationDataIdValid = false; 1984 } else if ($(this).val() === "") { 1985 registrationDataIdValid = false; 1986 } 1987 }); 1988 1989 // set button 1990 if (handleButton) { 1991 $("#btn-next-owner-data").prop("disabled", !registrationDataIdValid); 1992 } 1993 1994 return registrationDataIdValid; 1995 } 1996 1997 function ValidatePanelOwnerData(handleButton) { 1998 1999 var ownerDataIdValid = true; 2000 2001 // phone 1 or phone 2 should contain a value, set them both to required in order to vaidate again 2002 $('#Kwpn_Form_RegisterFoal_OwnerPhone1, input[name=Kwpn_Form_RegisterFoal_OwnerPhone2]:visible').prop('required', true); 2003 $('#Kwpn_Form_RegisterFoal_OwnerPhone1, input[name=Kwpn_Form_RegisterFoal_OwnerPhone2]:visible').css('border', ''); 2004 2005 if ($('#Kwpn_Form_RegisterFoal_OwnerPhone1').val() || $('input[name=Kwpn_Form_RegisterFoal_OwnerPhone2]:visible').val()) { 2006 // if one of them has a value, remove the required attribute from both input fields 2007 $('#Kwpn_Form_RegisterFoal_OwnerPhone1, input[name=Kwpn_Form_RegisterFoal_OwnerPhone2]:visible').removeAttr('required'); 2008 } else { 2009 // add red border class when input fields are empty 2010 $('#Kwpn_Form_RegisterFoal_OwnerPhone1, input[name=Kwpn_Form_RegisterFoal_OwnerPhone2]:visible').css('border', '1px solid red'); 2011 } 2012 2013 // check required fields 2014 $("#owner-data-panel :input[required]:visible").each(function () { 2015 if ($(this).attr("type") === "checkbox" && $(this).prop("checked") === false) { 2016 ownerDataIdValid = false; 2017 } else if ($(this).val() === "") { 2018 ownerDataIdValid = false; 2019 } 2020 }); 2021 2022 // set button 2023 if (handleButton) { 2024 $("#btn-next-barn-data").prop("disabled", !ownerDataIdValid); 2025 } 2026 2027 return ownerDataIdValid; 2028 } 2029 2030 function ValidatePanelBarnData(handleButton) { 2031 2032 var barnDataIdValid = true; 2033 2034 // check required fields 2035 $("#barn-data-panel :input[required]:visible").each(function () { 2036 if ($(this).attr("type") === "checkbox" && $(this).prop("checked") === false) { 2037 barnDataIdValid = false; 2038 } else if ($(this).val() === "") { 2039 barnDataIdValid = false; 2040 } 2041 }); 2042 2043 // check overview required fields 2044 $("#panel-order-overview :input[required]:visible").each(function () { 2045 if ($(this).attr("type") === "checkbox" && $(this).prop("checked") === false) { 2046 barnDataIdValid = false; 2047 } else if ($(this).val() === "") { 2048 barnDataIdValid = false; 2049 } 2050 }); 2051 2052 // set button 2053 if (handleButton) { 2054 $(".submitBtn").prop("disabled", !barnDataIdValid); 2055 } 2056 2057 return barnDataIdValid; 2058 } 2059 2060 function ScrollToTop() { 2061 $('html, body').animate({ 2062 scrollTop: $("#FormRegisterHorse").offset().top 2063 }, 1000); 2064 } 2065 2066 $(document).ready(function() { 2067 2068 ShowCountrySpecificFields(); 2069 2070 // check if Equis is online 2071 equis.IsOnline(equisOffline); 2072 2073 // Fill hidden input fields 2074 FillHiddenFields(); 2075 2076 // Make foal name field alphanumeric only, allowing spaces, dots and apostrophes 2077 $("#Kwpn_Form_RegisterFoal_FoalName").alphanumeric({ nchars: '_', allow: ' .\'-&' }); 2078 2079 // Product info 2080 SetProductInformation(); 2081 2082 // set country read only when filled 2083 if ($("#Kwpn_Form_RegisterFoal_OwnerCountry").val() !== "") { 2084 $("#Kwpn_Form_RegisterFoal_OwnerCountry").attr("readonly", "readonly"); 2085 } 2086 2087 // panelvalidation 2088 $("#breeding-data-panel :input").off("change").on("change", function () { 2089 ValidatePanelBreedingData(true); 2090 }); 2091 $("#btn-next-breeding-data").off("click").on("click", function () { 2092 2093 if (ValidatePanelBreedingData(false)) { 2094 $("#breeding-data-panel").addClass("hidden"); 2095 $("#registration-data-panel").removeClass("hidden"); 2096 $("#panel-order-overview").addClass("hidden"); 2097 $(".paragraphText").addClass("hidden"); 2098 ValidatePanelRegistrationData(true); 2099 ScrollToTop(); 2100 2101 $("#btn-prev-beeding-data").off("click").on("click", function () { 2102 $("#registration-data-panel").addClass("hidden"); 2103 $("#breeding-data-panel").removeClass("hidden"); 2104 $("#panel-order-overview").addClass("hidden"); 2105 $(".paragraphText").removeClass("hidden"); 2106 ScrollToTop(); 2107 }); 2108 } 2109 }); 2110 $("#registration-data-panel :input").off("change").on("change", function () { 2111 ValidatePanelRegistrationData(true); 2112 }); 2113 $("#btn-next-owner-data").off("click").on("click", function () { 2114 2115 if (ValidatePanelRegistrationData(false)) { 2116 $("#registration-data-panel").addClass("hidden"); 2117 $("#owner-data-panel").removeClass("hidden"); 2118 $("#panel-order-overview").addClass("hidden"); 2119 ValidatePanelOwnerData(true); 2120 ScrollToTop(); 2121 SetAsterisken(); 2122 2123 $("#btn-prev-registration-data").off("click").on("click", function () { 2124 $("#owner-data-panel").addClass("hidden"); 2125 $("#registration-data-panel").removeClass("hidden"); 2126 $("#panel-order-overview").addClass("hidden"); 2127 ScrollToTop(); 2128 }); 2129 } 2130 }); 2131 $("#owner-data-panel :input").off("change").on("change", function () { 2132 ValidatePanelOwnerData(true); 2133 }); 2134 $("#btn-next-barn-data").off("click").on("click", function () { 2135 2136 if (ValidatePanelOwnerData(false)) { 2137 $("#owner-data-panel").addClass("hidden"); 2138 $("#barn-data-panel").removeClass("hidden"); 2139 $("#panel-order-overview").removeClass("hidden"); 2140 ValidatePanelBarnData(true); 2141 ScrollToTop(); 2142 2143 $("#btn-prev-owner-data").off("click").on("click", function () { 2144 $("#barn-data-panel").addClass("hidden"); 2145 $("#owner-data-panel").removeClass("hidden"); 2146 $("#panel-order-overview").addClass("hidden"); 2147 ScrollToTop(); 2148 SetAsterisken(); 2149 }); 2150 } 2151 }); 2152 $("#barn-data-panel :input").off("change").on("change", function () { 2153 ValidatePanelBarnData(true); 2154 }); 2155 $("#panel-order-overview :input").off("change").on("change", function () { 2156 ValidatePanelBarnData(true); 2157 }); 2158 ValidatePanelBreedingData(true); 2159 2160 2161 @if (isUnknownBreeding) { 2162 <text> 2163 2164 // handle on-enter for father search 2165 $("#SearchFather").keypress(function (e) { 2166 var code = e.keyCode || e.which; 2167 if (code === 13) { 2168 // 13 = enter 2169 SearchAvailableStuds(); 2170 e.preventDefault(); 2171 return false; 2172 } 2173 return true; 2174 }); 2175 2176 // inseminiation date datepicker, date should always be in current or past year 2177 // rinse date datepicker, date should always be in current or past year 2178 // transplant date datepicker, date should always be in current or past year 2179 $("#Kwpn_Form_RegisterFoal_InseminationDate").datepicker({ 2180 minDate: '-2y', 2181 maxDate: 'today', 2182 }); 2183 $("#Kwpn_Form_RegisterFoal_RinseDate").datepicker({ 2184 minDate: '-2y', 2185 maxDate: 'today', 2186 }); 2187 $("#Kwpn_Form_RegisterFoal_TransplantDate").datepicker({ 2188 minDate: '-2y', 2189 maxDate: 'today', 2190 }); 2191 $.datepicker.setDefaults($.datepicker.regional["@culture"]); 2192 </text> 2193 } 2194 2195 $("#Kwpn_Form_RegisterFoal_BreedingDirection").off("change").on("change", function () { 2196 AfterBreedingDirectionSelection(); 2197 }); 2198 2199 $("input[name=Kwpn_Form_RegisterFoal_BreedingType]").off("change").on("change", function () { 2200 ShowOrHideEtIcsiBreedingInfoFields(); 2201 }); 2202 2203 // submit 2204 $("#kwpn_Form_RegisterFoal_FormSubmitter").click(function () { 2205 $(".hide-hints").removeClass("hide-hints"); 2206 if (!FormIsHtml5Valid()) { 2207 // reset spinner 2208 FormHelper.SubmitButtonReset(".submitBtn"); 2209 } else { 2210 // fix date fields if empty or dw will crash 2211 FixDateFields(); 2212 } 2213 }); 2214 2215 $(".submitBtn").click(function () { 2216 // spinner 2217 FormHelper.SubmitButtonClick(".submitBtn"); 2218 2219 // check name 2220 validateName(); 2221 2222 // check email 2223 var ownerEmailField = $("#Kwpn_Form_RegisterFoal_OwnerEmailAddress"); 2224 if (ownerEmailField[0]) { 2225 if (ownerEmailField.val() == "") { 2226 ownerEmailField.val("@KwpnUsers.CurrentUser().DwUser.Email"); 2227 } 2228 } else { 2229 // should not happen 2230 var newField = "<input type=\"hidden\" name=\"Kwpn_Form_RegisterFoal_OwnerEmailAddress\" id=\"Kwpn_Form_RegisterFoal_OwnerEmailAddress\" value=\"@KwpnUsers.CurrentUser().DwUser.Email\" />"; 2231 $("#FormRegisterHorse > form").append(newField); 2232 } 2233 2234 $("#kwpn_Form_RegisterFoal_FormSubmitter").click(); 2235 return false; 2236 }); 2237 2238 // add co-registered 2239 $("#btnAddCoRegistered") 2240 .off("click") 2241 .on("click", function() { 2242 $("#select-co-registered").modal("show"); 2243 return false; 2244 }); 2245 2246 2247 // search in equis for name 2248 $("#ButtonSearchCoRegistered") 2249 .off("click") 2250 .on("click", function(e) { 2251 2252 e.preventDefault(); 2253 2254 // add loading icon to button and disable 2255 var clickedButtonResetValue = $("#ButtonSearchCoRegistered").html(); 2256 $("#ButtonSearchCoRegistered").html(clickedButtonResetValue + " <i class='fa fa-spinner fa-spin'></i>"); 2257 $("#ButtonSearchCoRegistered").prop('disabled', true); 2258 2259 var personCode = $("#SearchCoRegisteredMemberNumber").val(); 2260 if (personCode == "") { 2261 personCode = "none"; 2262 } 2263 2264 var peopleSearchApi = "/kwpnwebapi/forms/getpersoninfo/" + personCode; 2265 var resultcontainer = $("#SearchCoRegisteredResult"); 2266 resultcontainer.html(""); 2267 $.getJSON(peopleSearchApi).done(function(data) { 2268 if (data != null) { 2269 2270 var personInfo = "<b>" + data.m_Item1 + "</b>"; 2271 var personAddress = data.m_Item2; 2272 if (personAddress !== "") { 2273 personInfo += ", "; 2274 personInfo += personAddress; 2275 } 2276 2277 var isSelected = false; 2278 var currentSelected = $("#Kwpn_Form_RegisterFoal_CoOwnerMembershipNumbers").val().split(',') 2279 if (currentSelected.indexOf(personCode) !== -1) { 2280 isSelected = true; 2281 } 2282 2283 if (isSelected || personCode === "@KwpnUsers.CurrentUser().DwUser.UserName") { 2284 resultcontainer.append("<span class='SearchCoRegisteredResultItem me'>" + personInfo.replace(data.m_Item1, "<b>" + data.m_Item1.toUpperCase() + "</b>") + "</span>"); 2285 } else { 2286 resultcontainer.append("<a href=\"#\" class=\"SearchCoRegisteredResultItem\" data-personcode=\"" + personCode + "\" data-personname=\"" + personInfo + "\" >" + personInfo.replace(data.m_Item1, "<b>" + data.m_Item1.toUpperCase() + "</b>") + "</a>"); 2287 } 2288 2289 $(".SearchCoRegisteredResultItem:not(.me)").click(function () { 2290 var clickedValue = $(this).attr("data-personcode"); 2291 var clickedName = $(this).attr("data-personname"); 2292 setCoRegistered(clickedValue, clickedName); 2293 return false; 2294 }); 2295 } else { 2296 resultcontainer.html("@Translate("FoalRegistration_SearchCoRegisteredNoResults", "No results")"); 2297 } 2298 }).fail(function (jqxhr, textStatus, error) { 2299 resultcontainer.html("@Translate("FoalRegistration_SearchCoRegisteredError", "An error occurred")"); 2300 var err = textStatus + ", " + error; 2301 console.error("Request People Search Failed: " + err); 2302 }).always(function () { 2303 $("#SearchCoRegisteredMemberNumber").val(""); 2304 $("#ButtonSearchCoRegistered").html(clickedButtonResetValue); // remove loading icon from button 2305 $("#ButtonSearchCoRegistered").prop('disabled', false); // enable button 2306 }); 2307 2308 }); 2309 2310 SetAsterisken(); 2311 2312 // show/hide payment shizzle on payment method change 2313 $("input[name=Kwpn_Form_RegisterFoal_PaymentMethod]").change(function () { 2314 ValidateAuthorizationFields(); 2315 }); 2316 ValidateAuthorizationFields(); 2317 2318 $("#Kwpn_Form_RegisterFoal_FoalDateOfBirth").change(function () { 2319 2320 @if (isUnknownBreeding) { 2321 <text> 2322 //validate if father fields are filled 2323 var fatherCode = $("#Kwpn_Form_RegisterFoal_StudAnimalCode").val(); 2324 var fatherName = $("#Kwpn_Form_RegisterFoal_StudAnimalName").val(); 2325 var fatherLifeNumber = $("#Kwpn_Form_RegisterFoal_StudLifeNumber").val(); 2326 if (fatherCode.length <= 0 && (fatherLifeNumber.length <= 0 || fatherName.length <= 0)) { 2327 Swal.fire({ title: "@Translate("ErrorTitle", "Error message")" ,text: "@Translate("FirstEnterFatherInfo", "First enter father info!")", customClass: layout.notifyCopyrightMessageClass }); 2328 $(this).val(""); 2329 return; 2330 } 2331 </text> 2332 } 2333 2334 $(this).parent().removeClass("error"); 2335 2336 // validate input and show/hide registration fields 2337 var foalDateOfBirth = FormHelper.GetJsDate($(this).val(), '@culture'); 2338 if (foalDateOfBirth === null) { 2339 HideRegistration(); 2340 return; 2341 } 2342 ShowRegistration($("#Kwpn_Form_RegisterFoal_FoalDeceased:checked")); 2343 2344 // get breedinginfo 2345 var breedingInfoUrl = ""; 2346 @if (isKnownBreeding) 2347 { 2348 <text> 2349 breedingInfoUrl = "/kwpnwebapi/horses/getbreedinginfo/@culture/@animalCode/" + foalDateOfBirth.getFullYear() + "/" + (foalDateOfBirth.getMonth() + 1) + "/" + foalDateOfBirth.getDate(); 2350 </text> 2351 } 2352 @if (isUnknownBreeding) 2353 { 2354 <text> 2355 var fatherCode = $("#Kwpn_Form_RegisterFoal_StudAnimalCode").val(); 2356 breedingInfoUrl = "/kwpnwebapi/horses/getfoalinfo/@culture/" + foalDateOfBirth.getFullYear() + "/" + (foalDateOfBirth.getMonth() + 1) + "/" + foalDateOfBirth.getDate() + "/@animalCode/" + fatherCode; 2357 </text> 2358 } 2359 if (breedingInfoUrl !== "") { 2360 $.getJSON(breedingInfoUrl).done(function (result) { 2361 if (result != null) { 2362 SetBreedingInfo(result); 2363 validateName(); 2364 } 2365 }).fail(function (jqxhr, textStatus, error) { 2366 var err = textStatus + ", " + error; 2367 console.error("Request BreedingInfo Failed: " + err); 2368 }); 2369 } 2370 2371 SetRequiredFields(); 2372 }); 2373 2374 $("#Kwpn_Form_RegisterFoal_FoalDeceased").change(function () { 2375 var aliveContent = $("#form-content-foal-alive"); 2376 var deceasedContent = $("#form-content-foal-deceased"); 2377 var deceasedValue = $("#Kwpn_Form_RegisterFoal_FoalDeceased:checked").length > 0; 2378 var paymentContent = $("#payment-container"); 2379 var birthDate = $("#Kwpn_Form_RegisterFoal_FoalDateOfBirth").val(); 2380 if (birthDate != "") { 2381 if (deceasedValue) { 2382 aliveContent.addClass("hidden"); 2383 paymentContent.addClass("hidden"); 2384 deceasedContent.removeClass("hidden"); 2385 } else { 2386 aliveContent.removeClass("hidden"); 2387 paymentContent.removeClass("hidden"); 2388 deceasedContent.addClass("hidden"); 2389 } 2390 } 2391 2392 SetProductInformation(); 2393 SetRequiredFields(); 2394 }); 2395 2396 $("#Kwpn_Form_RegisterFoal_Chip").change(function () { 2397 SetProductInformation(); 2398 }); 2399 2400 $("#Kwpn_Form_RegisterFoal_RequestForDnaResearch").change(function () { 2401 SetProductInformation(); 2402 SetRequiredFields(); 2403 }); 2404 2405 $("#Kwpn_Form_RegisterFoal_RequestWffsTest").change(function () { 2406 SetProductInformation(); 2407 SetRequiredFields(); 2408 }); 2409 2410 // date of birth date datepicker, date should always be in current year 2411 $("#Kwpn_Form_RegisterFoal_FoalDateOfBirth").datepicker({ 2412 minDate: @(1-DateTime.Now.DayOfYear), 2413 maxDate: 'today', 2414 }); 2415 $.datepicker.setDefaults($.datepicker.regional["@culture"]); 2416 2417 $("#Kwpn_Form_RegisterFoal_FoalName").change(function() { 2418 validateName(); 2419 }); 2420 2421 $("#Kwpn_Form_RegisterFoal_StableCountry,#Kwpn_Form_RegisterFoal_StableCity,#Kwpn_Form_RegisterFoal_StableAddress,#Kwpn_Form_RegisterFoal_StablePostalCode,#Kwpn_Form_RegisterFoal_StableHouseNumber").change(function () { 2422 $("#Kwpn_Form_RegisterFoal_UBNCode").val(""); 2423 }); 2424 2425 // Validate UBN 2426 $("#Kwpn_Form_RegisterFoal_StableCountry,#Kwpn_Form_RegisterFoal_StableCity,#Kwpn_Form_RegisterFoal_StableAddress,#Kwpn_Form_RegisterFoal_StablePostalCode,#Kwpn_Form_RegisterFoal_StableHouseNumber,#Kwpn_Form_RegisterFoal_UBNCode").change(function () { 2427 2428 var errorContainer = $("#panel-ubn-code"); 2429 2430 //remove possible error 2431 errorContainer.removeClass("error"); 2432 $("#validateUbnError").hide(); 2433 2434 //get value 2435 var ubn = $('#Kwpn_Form_RegisterFoal_UBNCode').val(); 2436 2437 // Stable postalcode and house number 2438 var postalCode = $('#Kwpn_Form_RegisterFoal_StablePostalCode').val().replace(/\s+/g, '');; 2439 var houseNumber = $('#Kwpn_Form_RegisterFoal_StableHouseNumber').val(); 2440 2441 // validate 2442 if (ubn !== "") { 2443 var validateIbanUrl = "/kwpnwebapi/premisesnumber/validate/" + ubn + "/" + postalCode + "/" + houseNumber; 2444 $.getJSON(validateIbanUrl).done(function (isValid) { 2445 if (!isValid) { 2446 errorContainer.addClass("error"); 2447 2448 $("#Kwpn_Form_RegisterFoal_UBNCode").val(""); 2449 $("#validateUbnError .errortext").text('@Translate("FoalRegistrationUbnInvalid", "Not a valid UBN")'); 2450 $("#validateUbnError").show(); 2451 } 2452 }).fail(function (jqxhr, textStatus, error) { 2453 var err = textStatus + ", " + error; 2454 console.error("Request Validate UBN Failed: " + err); 2455 }); 2456 } else { 2457 errorContainer.addClass("error"); 2458 $("#Kwpn_Form_RegisterFoal_UBNCode").val(""); 2459 $("#validateUbnError .errortext").text('@Translate("StableAddressHasBeenChanged", "Address has been changed, please check the UBN code")'); 2460 $("#validateUbnError").show(); 2461 $("#validateUbnError .errortext").show(); 2462 } 2463 }); 2464 2465 // Validate iban 2466 $("#Kwpn_Form_RegisterFoal_IBAN").change(function () { 2467 var errorContainer = $("#iban-wrapper"); 2468 2469 //remove possible error 2470 $("#validateIbanError").remove(); 2471 errorContainer.removeClass("error"); 2472 2473 //get value 2474 var iban = $(this).val(); 2475 2476 // validate 2477 if (iban !== "") { 2478 2479 var validateIbanUrl = "/kwpnwebapi/forms/checkbankaccount/" + iban; 2480 $.getJSON(validateIbanUrl).done(function (isValid) { 2481 if (!isValid) { 2482 2483 //show error and clear field 2484 errorContainer.addClass("error"); 2485 var error = "<div id=\"validateIbanError\" class=\"errortext col-sm-4 col-sm-offset-4 small uppercase\">@Translate("IbanError", "Not a valid IBAN"): " + iban + "</div>"; 2486 errorContainer.append(error); 2487 $("#Kwpn_Form_RegisterFoal_IBAN").val(""); 2488 } else { 2489 // make bic required if iban is not dutch 2490 if (ibanIsForeign(iban)) { 2491 makeBicRequired(); 2492 } else { 2493 makeBicUnRequired(); 2494 } 2495 } 2496 }).fail(function(jqxhr, textStatus, error) { 2497 var err = textStatus + ", " + error; 2498 console.error("Request Validate IBAN Failed: " + err); 2499 }); 2500 2501 } 2502 2503 }); 2504 2505 // only allow alphanumeric characters for bic field 2506 $("#Kwpn_Form_RegisterFoal_BIC").alphanumeric(); 2507 2508 }); 2509 </script> 2510 @SnippetEnd("JavascriptsBottom") 2511 } 2512 2513 } 2514 } 2515 }
Dan is JongKWPN vast en zeker iets voor jou! JongKWPN biedt een gevarieerd programma.
Word nu lid