script function pageClass Инициализация var self this this script_url

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
<script>
function pageClass(){
{// Инициализация
var self = this;
this.script_url = m_obj.script_url; // урл респондента
this.is_email_checked = 0; // email проверен
this.is_email_exist=1; // email существует или нет
this.is_name_checked = 0; // name проверен
this.is_name_exist=1; // name существует или нет
}//END Инициализация
this.init = function(){
//console.log(this.script_url);
this.form=new formClass('register_form');
this.form.init({'form_type':'page'});
$$('#email').focus();
}//END init
this.sendForm = function(){// отправить форму
var form=this.form;
if(form.checkSendButtonDisabled()){// кнопка отправить заблокирована
// проверка осталась т.к. производится доп проверка email
return;
}
{// получение данных
var email = $$.trim($$('#email').val());
var name = $$.trim($$('#name').val());
var password = $$.trim($$('#password').val());
var repeat_password = $$.trim($$('#repeat_password').val());
var user_agreement=($$('#user_agreement').attr('checked')==true)?(1):(0);
}// END получение данных
{// проверка полей на заполнение
var error_arr=new Array();
if(email==''){
error_arr.push({'id':'email','text':'<b>Email</b> - обязательно к заполнению'});
}
else if(isEmail(email)==false){
error_arr.push({'id':'email','text':'<b>Email</b> - заполнено неверно'});
}
if(name==''){
error_arr.push({'id':'name','text':'<b>Отображаемое имя</b> - обязательно к заполнению'});
}
else if(name.length<3){
error_arr.push({'id':'name','text':'<b>Отображаемое имя</b> - минимальная длина 6 символов'});
}
if(password==''){
error_arr.push({'id':'password','text':'<b>Пароль</b> - обязательно к заполнению'});
}
else if(password.length<6){
error_arr.push({'id':'password','text':'<b>Пароль</b> - минимальная длина 6 символов'});
}
if(repeat_password==''){
error_arr.push({'id':'repeat_password','text':'<b>Повторите пароль</b> - обязательно к заполению'});
}
//console.log('password='+password);
//console.log('repeat_password='+repeat_password);
//if(error_arr.length==0 || password != repeat_password){
if(password != repeat_password){
error_arr.push({'id':'repeat_password','text':'<b>Пароль</b> и <b>Повторный пароль</b> - не совпадают'});
}
if(user_agreement==0){
error_arr.push({'id':'user_agreement','text':'Вы должны принять пользовательское соглашение'});
}
if( form.printFormError(error_arr) ){
return;
}
// проверка на дублирование email
if(this.is_email_checked==0){
this.checkEmailExist();
return;
}
else{
// после проверки опять указываем что email не проверен
this.is_email_checked = 0;
if(this.is_email_exist==1){
error_arr.push({'id':'email','text':'Пользователь с таким email уже зарегестрирован'});
this.is_email_exist=0;
}
}
if( form.printFormError(error_arr) ){
return;
}
// проверка на дублирование name
if(this.is_name_checked==0){
this.checkNameExist();
return;
}
else{
// после проверки опять указываем что name не проверен
this.is_name_checked = 0;
if(this.is_name_exist==1){
error_arr.push({'id':'name','text':'Пользователь с таким именем уже зарегестрирован'});
this.is_name_exist=0;
}
}
if(form.printFormError(error_arr) ){
return;
}
}// END проверка полей на запонение
form.showFormLoad();
var obj = this;
$$.ajax({
type: "POST",
url: this.script_url,
data: "mode=registerUser"
+"&email="+escape2(email)
+"&name="+escape2(name)
+"&password="+escape2(password),
success: function(a){
self.form.hideFormLoad();
//obj.clearForm();
$$("#register_form").fadeOut("slow", function () {
$$("#register_form_complete").fadeIn("slow");// показываем форму 2
});
}// END success
});// END ajax
return;
}//END sendForm
this.checkEmailExist = function(){// проверка на дублирование email
var form=this.form;
form.showFormLoad();
var email = $$.trim($$('#email').val());
$$.ajax({
type: "POST",
url: this.script_url,
data: "mode=checkEmailExist"
+"&email="+escape2(email),
success: function(a){
self.form.hideFormLoad();
self.is_email_checked=1;
self.is_email_exist=a;
self.sendForm();
},// END success
});// END ajax
}//END checkEmailExist
this.checkNameExist = function(){// проверка на дублирование name
var form=this.form;
form.showFormLoad();
var name = $$.trim($$('#name').val());
$$.ajax({
type: "POST",
url: this.script_url,
data: "mode=checkNameExist"
+"&name="+escape2(name),
success: function(a){
self.form.hideFormLoad();
self.is_name_checked=1;
self.is_name_exist=a;
self.sendForm();
},// END success
});// END ajax
}//END checkNameExist
}//END pageClass
$$(function(){
p_obj = new pageClass();
p_obj.init();
});
</script>