PageSourceSearch

https://dehgardi.ir/js/house-validation.js

js dehgardi.ir collected 2026-10-02 23:51:02 UTC 10,850 bytes, 306 lines download raw bytes

1$("#house-form").validate({
2    ignore: [],
3    errorPlacement: function (error, element) {
4        if (element.attr("name") == "HouseTypeId") {
5            $(".housetype-error-message").html(error);
6        } else if (element.attr("name") == "HouseAreaIds") {
7            $(".housearea-error-message").html(error);
8        } else if (element.attr("name") == "MainPictureHouse") {
9            $(".mainpicturehouse-error-message").html(error);
10        } else if (element.attr("name") == "PictureHouse") {
11            $(".picturehouse-error-message").html(error);
12        } else if (element.attr("name") == "Latitude") {
13            $(".housemap-error-message").html(error);
14        }
15        else {
16            error.insertAfter(element);
17        }
18    },
19    rules: {
20        HouseTypeId: {
21            required: true,
22        },
23        HouseAreaIds: {
24            required: true
25        },
26        HouseName: {
27            required: true,
28            maxlength: 200
29        },
30        InfrastructureMeter: {
31            required: true
32        },
33        TotalMeter: {
34            required: true
35        },
36        Capacity: {
37            required: true
38        },
39        RoomCount: {
40            required: true
41        },
42        SingleBedCount: {
43            required: true
44        },
45        DoubleBedCount: {
46            required: true
47        },
48        BedClothesCount: {
49            required: true
50        },
51        Pictures: {
52            required: true
53        },
54        MainPictureHouse: {
55            picturerule: true
56        },
57        //MainPicturePath: {
58        //    required: function (element) {
59        //        return true
60        //    }
61        //},
62        provinceid: {
63            required: true
64        },
65        ZoneId: {
66            required: true
67        },
68        Latitude: {
69            required: true
70        },
71        Address: {
72            required: true,
73            maxlength: 400
74        },
75        PostalCode: {
76            //required: true,
77            maxlength: 12
78        }
79    },
80    messages: {
81        HouseTypeId: {
82            required: "نوع اقامتگاه را وارد کنید",
83        },
84        HouseAreaIds: {
85            required: "منطقه را وارد کنید",
86        },
87        HouseName: {
88            required: "نام اقامتگاه را وارد کنید",
89            maxlength: "نام باید کمتر از 200 کلمه باشد"
90        },
91        InfrastructureMeter: {
92            required: "متراژ زیربنا را وارد کنید",
93        },
94        TotalMeter: {
95            required: "متراژ کل را وارد کنید",
96        },
97        Capacity: {
98            required: "فضای اقامتگاه را وارد کنید",
99        },
100        RoomCount: {
101            required: "تعداد اتاق را وارد کنید",
102        },
103        SingleBedCount: {
104            required: "تعداد تخت یک نفره را وارد کنید",
105        },
106        DoubleBedCount: {
107            required: "تعداد تخت دو نفره را وارد کنید",
108        },
109        BedClothesCount: {
110            required: "تعداد رختخواب را وارد کنید",
111        },
112        Pictures: {
113            required: "حداقل یک تصویر برای گالری تصاویر آپلود کنید",
114        },
115        //MainPictureHouse: {
116        //    required: "حداقل یک تصویر اصلی را آپلود کنید",
117        //},
118        provinceid: {
119            required: "استان را انتخاب کنید",
120        },
121        ZoneId: {
122            required: "شهر یا روستا را انتخاب کنید",
123        },
124        Latitude: {
125            required: "مکان اقامتگاه را بر روی نقشه تعیین کنید",
126        },
127        Address: {
128            required: "آدرس اقامتگاه را وارد کنید",
129            maxlength: "آدرس باید کمتر از 400 کلمه باشد"
130        },
131        PostalCode: {
132            maxlength: "کد پستی باید کمتر از 12 کلمه باشد"
133        }
134    },
135    invalidHandler: function (e, validator) {
136        RemoveActiveStep();
137        var targetStepNumber = $(validator.errorList[0].element).closest(".content-step").attr("data-content");
138        $("button[data-step=" + targetStepNumber + "]").addClass("active");
139        $(".content-step[data-content=" + targetStepNumber + "]").show();
140    },
141    submitHandler: function (form) {
142
143        //if ($('input[name="HouseType"').is(":checked") == false) {
144        //    alert("نوع اقامتگاه را مشخص کنید");
145        //    MoveToTargetStep(1);
146        //    return;
147        //}
148
149        form.submit();
150
151        //alert("success");
152    }
153})
154
155$.validator.addMethod("picturerule", function (value, element) {
156
157    var currentHouseId = $(".current-houseId").val();
158
159    if (currentHouseId == undefined && value != "") {
160        return true;
161    } else if (currentHouseId > 0) {
162        return true;
163    }
164    else {
165        return false;
166    }
167
168    //var existMainPicture = $(".current-main-picture");
169
170    //if (existMainPicture.length == 0) {
171    //    return false;
172    //} else {
173    //    return true;
174    //}
175}, "حداقل یک تصویر اصلی را آپلود کنید");
176
177function MoveToTargetStep(targetStepNumber) {
178    RemoveActiveStep();
179    $("button[data-step=" + targetStepNumber + "]").addClass("active");
180    $(".content-step[data-content=" + targetStepNumber + "]").show();
181}
182
183function DisplayErrorMessage(messsage) {
184    var html = '<label class="error">;' + messsage + '</label>';
185}
186
187//Locations
188//provinces
189//function GetProvinceAndCitiesHouse(currentZoneId) {
190//    $.ajax({
191//        url: "/Admin/Common/Provinces",
192//        type: "GET",
193//        data: { currentZoneId: currentZoneId },
194//        success: function (data) {
195//            var option = '';
196//            for (var i = 0; i < data.length; i++) {
197//                if (data[i].selected == true) {
198//                    option += '<option value="' + data[i].value + '" selected>' + data[i].text + '</option>';
199//                } else {
200//                    option += '<option value="' + data[i].value + '" ' + data[i].selected + '>' + data[i].text + '</option>';
201//                }
202//            }
203
204//            //var result = 
205//            //            '<select onChange="CitiesLocation(' + currentZoneId + ')" class="select2-form form-control focus select-house provinceitem locationselect2 " id="province" name="provinceid">' +
206//            //            '<option value="" disabled="" selected="selected">استان</option>' +
207//            //                option
208//            //            '</select>'+
209//            //            '<span class="text-danger"></span>';
210
211//             var result = '<div id="userGender" class="select">' +
212//                 '<select onChange="CitiesLocation(' + currentZoneId + ')" class="form-control focus select-house provinceitem locationselect2 select2-form chosen-select" id="province" name="provinceid">' +
213//                        '<option value="" disabled="" selected="selected">استان</option>' +
214//                            option
215//                        '</select>'+
216//                        '<span class="text-danger"></span>' +
217//                    '</div>';
218
219//            //var result = '<div class="col-md-3">' +
220//            //    '<div class="form-group">' +
221//            //    '<label class="control-label mb-10">استان</label>' +
222//            //    '<select onChange="CitiesLocation(' + currentZoneId + ')" class="provinceitem locationselect2 form-control select2 select2-form">' +
223//            //    '<option value="0" selected>انتخاب کنید</option>' +
224//            //    option
225//            //'</select>' +
226//            //    '</div>' +
227//            //    '</div>';
228
229//            $(".province-section").html(result);
230//            //$(".chosen-select").chosen();
231//            //$('.js-example-basic-single').select2();
232//            if (currentZoneId > 0) {
233//                CitiesLocation(currentZoneId);
234//            }
235//        }
236//    })
237//}
238
239//cities
240function CitiesLocation(currentZoneId) {
241    var proviceId = $('.provinceitem :selected').val();
242    $.ajax({
243        url: "/Admin/Common/Cities",
244        type: "GET",
245        data: { proviceId: proviceId, currentZoneId: currentZoneId },
246        success: function (data) {
247            var option = '';
248            for (var i = 0; i < data.length; i++) {
249                if (data[i].selected == true) {
250                    option += '<option value="' + data[i].value + '" selected>' + data[i].text + '</option>';
251                } else {
252                    option += '<option value="' + data[i].value + '" ' + data[i].selected + '>' + data[i].text + '</option>';
253                }
254            }
255
256            var result = option + '<span class="text-danger"></span>';
257
258            //var result = '<div id="userGender" class="select">' +
259            //                '<select class="form-control focus select-house select2-form" name="ZoneId">' +
260            //                    option
261            //                '</select>'+
262            //                '<span class="text-danger"></span>' +
263            //            '</div>';
264
265            //var result = '<div class="col-md-3">' +
266            //    '<div class="form-group">' +
267            //    '<label class="control-label mb-10">شهر</label>' +
268            //    '<select name="ZoneId" id="ZoneId" class="cityitem locationselect2 form-control select2 select2-form">' +
269            //    option
270            //'</select>' +
271            //    '</div>' +
272            //    '<span asp-validation-for="ZoneId" class="text-danger"></span>' +
273            //    '</div>';
274
275            $(".cities-villages-section").html(result);
276            //$('.locationselect2').select2();
277        }
278    })
279}
280
281//end Locations
282
283// Change house type then load house icon
284
285LoadHouseIconWithChangeHouseType();
286$(".housetype-change").change(function () {
287    LoadHouseIconWithChangeHouseType();
288})
289
290function LoadHouseIconWithChangeHouseType() {
291    var houseId = $(".current-houseId").val();
292    var houseTypeId = $(".housetype-change:checked").val();
293
294    $.ajax({
295        url: "/UserManagement/GetHouseIconWithChangeHouseType",
296        data: {
297            houseTypeId: houseTypeId,
298            houseId: houseId
299        },
300        type: "GET",
301        success: function (data) {
302            $(".specification-house-icon").html(data);
303        }
304    })
305
306}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.