Apply

 

Menu

Request for Extra Passport Pages

Error executing template "Designs/Kwpn/DataManagement/Forms/Form/FormPassportRenewal.cshtml"
System.IO.IOException: The process cannot access the file 'D:\inetpub\wwwroot\www.kwpn.nl\Files\Templates\Designs\Kwpn\Translations.xml' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Dynamicweb.Rendering.Translation.Source.WriteDocument(XmlDocument document)
at Dynamicweb.Rendering.Translation.Source.Save()
at Dynamicweb.Rendering.Translation.Source.UpdateTranslationSource(Source source, IEnumerable`1 newKeys, String designName, IEnumerable`1 cultures)
at Dynamicweb.Rendering.Template.TranslateText(String text, String defaultValue, String cultureName)
at Dynamicweb.Rendering.TemplateBase`1.Translate(String text)
at CompiledRazorTemplates.Dynamic.RazorEngine_593e4b2f686847fa98014142ed924332.Execute() in D:\inetpub\wwwroot\www.kwpn.nl\Files\Templates\Designs\Kwpn\DataManagement\Forms\Form\FormPassportRenewal.cshtml:line 206
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 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 2 @using Kwpn.Repository.Repositories 3 @using System.Web 4 @using Kwpn.Repository.Helpers 5 @{ 6 var isLoggedIn = LoginHelper.CurrentUserIsLoggedIn(); 7 var culture = GetGlobalValue("Global:Area.LongLang"); 8 var currentDateTime = DateTime.Now; 9 var animalCode = System.Web.HttpContext.Current.Request.QueryString.Get(Translate("Horse", "Horse")) ?? ""; 10 11 string membershipNumber = "", 12 userId = "", 13 userName = "", 14 userAddress = "", 15 userHouseNr = "", 16 userPostalCode = "", 17 userCity = "", 18 userPhone = "", 19 userEmail = "", 20 authorizationName = "", 21 authorizationResidence = "", 22 lifeNumber = "", 23 horseName = "", 24 fatherName = "", 25 mothersFatherName = "", 26 productName = "", 27 productPrice = "", 28 productPriceFormatted = ""; 29 30 if (isLoggedIn) 31 { 32 var dwUser = KwpnUsers.CurrentUser().DwUser; 33 membershipNumber = dwUser.UserName; 34 userId = dwUser.ID.ToString(); 35 userName = dwUser.Name; 36 userAddress = dwUser.Address; 37 userHouseNr = dwUser.HouseNumber; 38 userPostalCode = dwUser.Zip; 39 userCity = dwUser.City; 40 userPhone = dwUser.Phone; 41 userEmail = dwUser.Email; 42 authorizationName = dwUser.Name; 43 authorizationResidence = dwUser.City; 44 } 45 46 var productService = new Dynamicweb.Ecommerce.Products.ProductService(); 47 var ecomLanguageId = Dynamicweb.Frontend.PageView.Current().Area.EcomLanguageId; 48 var passportRenewalProduct = productService.GetProductByNumber(Kwpn.Models.Constants.StringConstants.ProductNumbers.PassportRenewal, ecomLanguageId); 49 if (passportRenewalProduct != null) 50 { 51 productName = passportRenewalProduct.Name; 52 productPrice = ProductHelper.GetProductPrice(passportRenewalProduct).ToString(); 53 productPriceFormatted = ProductHelper.FormatPrice(ProductHelper.GetProductPrice(passportRenewalProduct)); 54 } 55 56 var iban = ""; 57 var bic = ""; 58 var equisUser = UserHelper.GetEquisUser(); 59 if (equisUser != null) 60 { 61 iban = equisUser.Iban; 62 bic = equisUser.Bic; 63 } 64 65 var isNL = culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase); 66 67 // .org website uses on account because authorization is not possible for foreigners 68 var paymentMethod = isNL ? 69 Kwpn.Models.Enumerations.PaymentMethod.Authorization.ToString() : 70 Kwpn.Models.Enumerations.PaymentMethod.OnAccount.ToString(); 71 72 <div class="w-section inverse"> 73 <div class="w-box sign-in-wr bg-5"> 74 <div id="FormPassportRenewal" class="form-body"> 75 @GetValue("Form.Start") 76 @GetValue("Form.Hidden") @*Hidden fields are filled with jquery*@ 77 78 <div class="row"> 79 <div class="col-xs-12"> 80 <h3>@Translate("PersonalInformation", "Personal information")</h3> 81 82 <div class="form-group"> 83 <div class="form-inline @(!isLoggedIn ? "hidden" : "")"> 84 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_AccessUserUserName">@Translate("MembershipNumber", "Membership number")</label> 85 <input type="text" class="form-control" id="Kwpn_Form_PassportRenewal_AccessUserUserName" name="Kwpn_Form_PassportRenewal_AccessUserUserName" value="@membershipNumber" @(isLoggedIn ? "readonly required" : "") /> 86 </div> 87 <div class="form-inline"> 88 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_Name">@(!isLoggedIn ? Translate("InitialsAndName", "Initials and Name") : Translate("Name", "Name"))</label> 89 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_Name" name="Kwpn_Form_PassportRenewal_Name" value="@userName" @(isLoggedIn ? "readonly" : "") required /> 90 </div> 91 <div class="form-inline"> 92 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_Address">@Translate("Address")</label> 93 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_Address" name="Kwpn_Form_PassportRenewal_Address" value="@userAddress" @(isLoggedIn && !string.IsNullOrWhiteSpace(userAddress) ? "readonly" : "") required /> 94 </div> 95 <div class="form-inline"> 96 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_HouseNumber">@Translate("HouseNumber")</label> 97 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_HouseNumber" maxlength="10" name="Kwpn_Form_PassportRenewal_HouseNumber" value="@userHouseNr" @(isLoggedIn && !string.IsNullOrWhiteSpace(userHouseNr) ? "readonly" : "") @if (culture.Equals("nl-NL", StringComparison.InvariantCultureIgnoreCase)){<text> required</text>} /> 98 </div> 99 <div class="form-inline"> 100 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_ZipCode">@Translate("PostalCode")</label> 101 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_ZipCode" maxlength="10" name="Kwpn_Form_PassportRenewal_ZipCode" value="@userPostalCode" @(isLoggedIn && !string.IsNullOrWhiteSpace(userPostalCode) ? "readonly" : "") required /> 102 </div> 103 <div class="form-inline"> 104 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_City">@Translate("Place")</label> 105 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_City" name="Kwpn_Form_PassportRenewal_City" value="@userCity" @(isLoggedIn && !string.IsNullOrWhiteSpace(userCity) ? "readonly" : "") required /> 106 </div> 107 <div class="form-inline"> 108 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_TelephoneNumber">@Translate("Phone")</label> 109 <input type="tel" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_TelephoneNumber" name="Kwpn_Form_PassportRenewal_TelephoneNumber" value="@userPhone" @(isLoggedIn && !string.IsNullOrWhiteSpace(userPhone) ? "readonly" : "") required /> 110 </div> 111 <div class="form-inline"> 112 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_EmailAddress">@Translate("Email_address")</label> 113 <input type="email" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_EmailAddress" name="Kwpn_Form_PassportRenewal_EmailAddress" value="@userEmail" @(isLoggedIn && !string.IsNullOrWhiteSpace(userEmail) ? "readonly" : "") required /> 114 </div> 115 </div> 116 </div> 117 </div> 118 119 @{ 120 if (string.IsNullOrWhiteSpace(animalCode)) 121 { 122 <div class="break-grid content-container"> 123 <div class="break-grid-background"> 124 <div class="in-grid"> 125 <div class="row"> 126 <div class="col-xs-12"> 127 @Translate("NoHorseSelected", "No horse selected") 128 @*todo: zoek functionaliteit en evt bericht geving als je via een actie link hier komt*@ 129 </div> 130 </div> 131 </div> 132 </div> 133 </div> 134 } 135 else 136 { 137 var horse = Horses.Get(animalCode, culture, true, true, true, true, true, true, true, true, true); 138 if (horse == null) 139 { 140 <div class="break-grid content-container"> 141 <div class="break-grid-background"> 142 <div class="in-grid"> 143 <div class="row"> 144 <div class="col-xs-12"> 145 @Translate("HorseNotFound", "Horse not found") 146 </div> 147 </div> 148 </div> 149 </div> 150 </div> 151 } 152 else 153 { 154 horseName = HorseHelper.GetHorseName(horse.SportsName, horse.AnimalName, horse.DateOfBirth.Value); 155 156 var father = horse.GetPredigreeByPrefix(Kwpn.Models.Constants.StringConstants.PedigreePrefixes.Father); 157 if (father != null) 158 { 159 fatherName = father.AnimalName; 160 } 161 else 162 { 163 fatherName = Translate("Unknown", "Unknown"); 164 } 165 166 var mothersFather = horse.GetPredigreeByPrefix(Kwpn.Models.Constants.StringConstants.PedigreePrefixes.MothersFather); 167 if (mothersFather != null) 168 { 169 mothersFatherName = mothersFather.AnimalName; 170 } 171 else 172 { 173 mothersFatherName = Translate("Unknown", "Unknown"); 174 } 175 176 177 // HORSE INFO TABLE DATA 178 lifeNumber = horse.Lifenumber; 179 if (!string.IsNullOrWhiteSpace(horse.LifenumberComplete)) 180 { 181 lifeNumber = horse.LifenumberComplete; 182 } 183 184 } 185 } 186 } 187 188 <div class="row"> 189 <div class="col-xs-12"> 190 <br /> 191 <h3>@Translate("HorseData")</h3> 192 <div class="form-group"> 193 <div class="form-inline not-in-form"> 194 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_LifeNumber">@Translate("LifeNumber")</label> 195 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_LifeNumber" name="Kwpn_Form_PassportRenewal_LifeNumber" value="@lifeNumber" readonly required /> 196 </div> 197 <div class="form-inline"> 198 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_HorseName">@Translate("Name")</label> 199 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_HorseName" name="Kwpn_Form_PassportRenewal_HorseName" value="@horseName" readonly required /> 200 </div> 201 <div class="form-inline not-in-form"> 202 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_Father">@Translate("FathersName")</label> 203 <input type="text" class="form-control" id="FatherName" name="Kwpn_Form_PassportRenewal_Father" value="@fatherName" readonly /> 204 </div> 205 <div class="form-inline not-in-form"> 206 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_MothersFather">@Translate("MothersFathersName")</label> 207 <input type="text" class="form-control" id="FatherName" name="Kwpn_Form_PassportRenewal_MothersFather" value="@mothersFatherName" readonly /> 208 </div> 209 </div> 210 </div> 211 </div> 212 213 <div class="row"> 214 <div class="col-xs-12"> 215 <div class="form-group"> 216 217 <br /> 218 219 220 @if (isNL) 221 { 222 <h3>@Translate("AuthorizationData", "Authorization data")</h3> 223 <div class="form-inline"> 224 <label class="control-label col-sm-4">@Translate("Authorization", "Authorization")</label> 225 <input type="checkbox" id="Kwpn_Form_PassportRenewal_AgreedWithAuthorization" name="Kwpn_Form_PassportRenewal_AgreedWithAuthorization" required /> <label for="Kwpn_Form_PassportRenewal_AgreedWithAuthorization" class="checkbox-label no-asterisk">@Translate("AuthorizationApproved", "Approved")</label> 226 </div> 227 } 228 else 229 { 230 <h3>@Translate("OnAccountData", "Account data")</h3> 231 } 232 233 <div class="form-inline" id="iban-wrapper"> 234 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_IBAN">@Translate("IBAN", "IBAN")</label> 235 <input type="text" 236 class="form-control text-uppercase" 237 id="Kwpn_Form_PassportRenewal_IBAN" 238 name="Kwpn_Form_PassportRenewal_IBAN" 239 value="@iban" 240 title="@Translate("UseValidIBAN")" required /> 241 <br /> 242 <label class="control-label col-sm-4 no-asterisk">&nbsp;</label><small class="nowrap">@Translate("IBAN_PatternInfo", "Pattern: NL12 BANK 3456 7890 12")</small> 243 </div> 244 245 <div class="form-inline"> 246 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_AuthorizationName">@Translate("AuthorizationName", "Name")</label> 247 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_AuthorizationName" name="Kwpn_Form_PassportRenewal_AuthorizationName" value="@authorizationName" required /> 248 </div> 249 250 <div class="form-inline"> 251 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_AuthorizationResidence">@Translate("AuthorizationResidence", "Residence")</label> 252 <input type="text" class="form-control hide-hints" id="Kwpn_Form_PassportRenewal_AuthorizationResidence" name="Kwpn_Form_PassportRenewal_AuthorizationResidence" value="@authorizationResidence" required /> 253 </div> 254 255 <div class="form-inline"> 256 <label class="control-label col-sm-4" for="Kwpn_Form_PassportRenewal_BIC">@Translate("BIC", "BIC")</label> 257 <div class="inner-addon right-addon col-sm-4"> 258 <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> 259 <input type="text" 260 class="form-control text-uppercase" 261 id="Kwpn_Form_PassportRenewal_BIC" 262 name="Kwpn_Form_PassportRenewal_BIC" 263 value="@bic" 264 pattern="([a-zA-Z]{4}[a-zA-Z]{2}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?)" 265 title="@Translate("UseValidBIC")" /> 266 </div> 267 </div> 268 269 <br /> 270 <br /> 271 </div> 272 </div> 273 </div> 274 <button class="hidden" type="submit" id="Kwpn_Form_Submitter">@Translate("Pay")</button> 275 276 @if (passportRenewalProduct != null) 277 { 278 <div class="row"> 279 <div class="col-xs-12 form-order-overview"> 280 <h2>@Translate("OrderOverview", "Order overview")</h2> 281 <table> 282 <colgroup> 283 <col width="30" /> 284 <col /> 285 </colgroup> 286 <tr class="head"> 287 <th><i class="fa fa-info"></i></th> 288 <th>@Translate("Product", "Product")</th> 289 </tr> 290 <tr> 291 <td>&nbsp;</td> 292 <td>@productName</td> 293 </tr> 294 <tr class="head"> 295 <th><i class="fa fa-eur"></i></th> 296 <th>@Translate("Price", "Price")</th> 297 </tr> 298 <tr> 299 <td>&nbsp;</td> 300 <td>@productPriceFormatted (@Translate("VatIncluded", "VAT included"))</td> 301 </tr> 302 <tr class="conditions"> 303 <td><input type="checkbox" class="form-control agreement-checkbox" id="Kwpn_Form_PassportRenewal_AgreedWithConditions" name="Kwpn_Form_PassportRenewal_AgreedWithConditions" required /></td> 304 <td><label for="Kwpn_Form_PassportRenewal_AgreedWithConditions">@FormHelper.GetAgreeWithConditionsText(Kwpn.Models.Enumerations.FormType.PassportRenewal)</label></td> 305 </tr> 306 <tr class="conditions"> 307 <td><input type="checkbox" class="form-control agreement-checkbox" id="Kwpn_Form_PassportRenewal_AgreedWithPrivacy" name="Kwpn_Form_PassportRenewal_AgreedWithPrivacy" required /></td> 308 <td><label for="Kwpn_Form_PassportRenewal_AgreedWithPrivacy">@Translate("AgreeWithPrivacyStatement", "I agree with the conditions stated in the privacy statement page")</label></td> 309 </tr> 310 <tr> 311 <td colspan="2"><button class="submitBtn" type="button" defaultText="@Translate("Pay").JsEncode()">@Translate("Pay")</button></td> 312 </tr> 313 </table> 314 </div> 315 </div> 316 } 317 else 318 { 319 <div class="row"> 320 <div class="col-md-6"> 321 322 </div> 323 <div class="col-md-6"> 324 <button class="submitBtn pull-right" type="button" defaultText="@Translate("Pay").JsEncode()">@Translate("Pay")</button> 325 </div> 326 </div> 327 } 328 @GetValue("Form.End") 329 </div> 330 </div> 331 </div> 332 333 @SnippetStart("JavascriptsBottom") 334 <script> 335 // check if form is valid 336 function FormIsHtml5Valid() { 337 return $("#FormPassportRenewal .form-control:invalid").length == 0; 338 } 339 340 function ibanIsForeign(iban) { 341 return !iban.toLowerCase().match("^nl"); 342 } 343 344 function makeBicRequired() { 345 $("#Kwpn_Form_PassportRenewal_BIC").prop("required", true); 346 var asterisk = "<i class=\"fa fa-asterisk\" aria-hidden=\"true\"></i>"; 347 $("#Kwpn_Form_PassportRenewal_BIC") 348 .closest(".form-inline") 349 .children("label") 350 .not(":has(> i)") 351 .append(asterisk); 352 } 353 354 function makeBicUnRequired() { 355 $("#Kwpn_Form_PassportRenewal_BIC").prop("required", false); 356 $("#Kwpn_Form_PassportRenewal_BIC") 357 .closest(".form-inline") 358 .children("label") 359 .find("i") 360 .remove(); 361 } 362 363 function equisOffline() { 364 $(".modal-body", "#equis-offline") // set alert text 365 .html('@Translate("EquisOffline_Modal_BodyText_PassportRenewal", "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.")'); 366 $("#equis-offline").modal("show"); // show alert to user by showing modal (in master) 367 $(".submitBtn").text("@Translate("EquisOffline_FormButtonReplaceText", "Back office offline")"); // change button text 368 $("#Kwpn_Form_Submitter").prop("disabled", true); // disable hidden button 369 $("#FormPassportRenewal :input").prop("disabled", true); // disable all input/textarea/select/checkbox/radio/button 370 } 371 372 function FillHiddenFields() { 373 $("#Kwpn_Form_PassportRenewal_AnimalCode").val("@animalCode.ToUpper()"); 374 $("#Kwpn_Form_PassportRenewal_AccessUserID").val("@userId"); 375 $("#Kwpn_Form_PassportRenewal_SubmitDateTime").val("@currentDateTime"); 376 $("#Kwpn_Form_PassportRenewal_PaymentMethod").val("@paymentMethod"); 377 $("#Kwpn_Form_PassportRenewal_OrderStatus").val("@Kwpn.Models.Enumerations.FormOrderStatus.FormSubmitted.ToString()"); 378 $("#Kwpn_Form_PassportRenewal_OrderStatusLastChanged").val("@currentDateTime"); 379 $("#Kwpn_Form_PassportRenewal_OrderStatusLastChanged").val("@currentDateTime"); 380 $("#Kwpn_Form_PassportRenewal_ProductName").val("@productName"); 381 $("#Kwpn_Form_PassportRenewal_ProductPrice").val("@productPrice"); 382 $("#Kwpn_Form_PassportRenewal_Culture").val("@culture"); 383 } 384 385 $(document).ready(function () { 386 387 // check if Equis is online 388 equis.IsOnline(equisOffline); 389 390 FillHiddenFields(); 391 392 // validate iban on load 393 if ("@iban" != "" && ibanIsForeign("@iban")) { 394 makeBicRequired(); 395 } 396 397 //Place asterisks after required labels 398 $('input,textarea,select') 399 .filter('[required]:visible') 400 .closest(".form-inline") 401 .children("label") 402 .not(".no-asterisk") 403 .append("<i class=\"fa fa-asterisk\" aria-hidden=\"true\"></i>"); 404 405 // force orange borders 406 $(".hide-hints").change(function () { 407 $(this).removeClass("hide-hints"); 408 }); 409 410 411 // Validate iban 412 $("#Kwpn_Form_PassportRenewal_IBAN").change(function () { 413 var errorContainer = $("#iban-wrapper"); 414 415 //remove possible error 416 $("#validateIbanError").remove(); 417 errorContainer.removeClass("error"); 418 419 //get value 420 var iban = $(this).val(); 421 422 // validate 423 if (iban !== "") { 424 425 var validateIbanUrl = "/kwpnwebapi/forms/checkbankaccount/" + iban; 426 $.getJSON(validateIbanUrl).done(function (isValid) { 427 if (!isValid) { 428 429 //show error and clear field 430 errorContainer.addClass("error"); 431 var error = "<div id=\"validateIbanError\" class=\"errortext col-sm-4 col-sm-offset-4 small uppercase\">@Translate("IbanError", "Not a valid IBAN"): " + iban + "</div>"; 432 errorContainer.append(error); 433 $("#Kwpn_Form_PassportRenewal_IBAN").val(""); 434 } else { 435 // make bic required if iban is not dutch 436 if (ibanIsForeign(iban)) { 437 makeBicRequired(); 438 } else { 439 makeBicUnRequired(); 440 } 441 } 442 }).fail(function (jqxhr, textStatus, error) { 443 var err = textStatus + ", " + error; 444 console.error("Request Checkbankaccount Failed: " + err); 445 }); 446 } 447 }); 448 449 // only allow alphanumeric characters for bic field 450 $("#Kwpn_Form_PassportRenewal_BIC").alphanumeric(); 451 452 // submit 453 $("#Kwpn_Form_Submitter").click(function () { 454 $(".hide-hints").removeClass("hide-hints"); 455 if (!FormIsHtml5Valid()) { 456 FormHelper.SubmitButtonReset(".submitBtn"); 457 } 458 }); 459 460 // submit button click 461 $(".submitBtn").off("click").on("click", function () { 462 FormHelper.SubmitButtonClick(".submitBtn"); 463 $("#Kwpn_Form_Submitter").click(); 464 }); 465 466 }); 467 </script> 468 @SnippetEnd("JavascriptsBottom") 469 }
€ 135,00 per year

KWPN Membership

  • Subscription to the digital KWPN Magazine (in Dutch)
  • Free advertising at KWPN Horses for Sale
Become a member now

About the KWPN

The KWPN (Studbook of the Royal Dutch Sport Horse) is a Netherlands-based organization specializing in the breeding of jumpers, dressage horses, harness horses, and Gelder horses.

More info

Official Partners


CookieWarning_Header

CookieWarning_Info

CookiePolicy