792. File Comparison Report

Produced on Mon May 12 13:07:08 2008 UTC. This report uses XHTML and CSS2, and is best viewed with a reasonably standards compliant browser such as the latest version of Firefox or Internet Explorer. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

792.1 Files compared

# Location File Last Modified
1 Dolphin-v.6.0.5 join_form.php Wed Mar 5 05:35:08 2008 UTC
2 Mon May 12 13:07:08 2008 UTC

792.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 0 0
Changed 0 0
Inserted 0 0
Removed 1 695

792.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

792.4 Active regular expressions

No regular expressions were active.

792.5 Comparison detail

1   <?    
2      
3   /********* ********** ********** ********** ********** ********** ********** ******    
4   *                              D olphin Sma rt Communi ty Builder    
5   *                                 --------- --------    
6   *     begi n                 : M on Mar 23  2006    
7   *     copy right             : ( C) 2006 Bo onEx Group    
8   *     webs ite               : h ttp://www. boonex.com /    
9   * This fil e is part  of Dolphin  - Smart C ommunity B uilder    
10   *    
11   * Dolphin  is free so ftware. Th is work is  licensed  under a Cr eative Com mons Attri bution 3.0  License.     
12   * http://c reativecom mons.org/l icenses/by /3.0/    
13   *    
14   * Dolphin  is distrib uted in th e hope tha t it will  be useful,  but WITHO UT ANY WAR RANTY;    
15   * without  even the i mplied war ranty of   MERCHANTAB ILITY or F ITNESS FOR  A PARTICU LAR PURPOS E.    
16   * See the  Creative C ommons Att ribution 3 .0 License  for more  details.     
17   * You shou ld have re ceived a c opy of the  Creative  Commons At tribution  3.0 Licens e along wi th Dolphin    
18   * see lice nse.txt fi le; if not , write to  marketing @boonex.co m    
19   ********** ********** ********** ********** ********** ********** ********** *****/    
20      
21   require_on ce( 'inc/h eader.inc. php' );    
22   require_on ce( BX_DIR ECTORY_PAT H_INC . 'd esign.inc. php' );    
23   require_on ce( BX_DIR ECTORY_PAT H_INC . 'p rofiles.in c.php' );    
24   require_on ce( BX_DIR ECTORY_PAT H_INC . 'p rofile_dis p.inc.php'  );    
25   require_on ce( BX_DIR ECTORY_PAT H_INC . 'u tils.inc.p hp' );    
26      
27   // ------- -------- p age variab les and lo gin    
28      
29   $_page['na me_index']     = 3;    
30   $_page['cs s_name']       = 'joi n_form.css ';    
31      
32      
33   if ( !( $l ogged['adm in'] = mem ber_auth(  1, false )  ) )    
34       if ( ! ( $logged[ 'member']  = member_a uth( 0, fa lse ) ) )    
35           if  ( !( $log ged['aff']  = member_ auth( 2, f alse )) )    
36                $logged[ 'moderator '] = membe r_auth( 3,  false );    
37      
38   $_page['he ader'] = _ t( "_JOIN_ H" );    
39   $_page['he ader_text' ] = _t( "_ JOIN_H" );    
40      
41   if( $logge d['member' ] )    
42   {    
43       $_page ['name_ind ex'] = 0;    
44       $_page _cont[0][' page_main_ code'] = _ t( '_Sorry , you\'re  already jo ined' );    
45       PageCo de();    
46       exit;    
47   }    
48      
49   // ------- -------- G ET/POST ac tions    
50      
51   $page = (i nt)htmlspe cialchars_ adv($_POST ['page']);    
52      
53   // create  number of  current pa ge and add itional sq l conditio ns for joi n page    
54   $page = (! $page) ? ' 1' : $page  + 1;    
55      
56   // determi ne maximum  number of  join page  parts    
57   $query = " SELECT MAX ( FLOOR( ` join_page`  / 1000 )  ) FROM `Pr ofilesDesc ` WHERE `v isible` &  2 AND (FIN D_IN_SET(' 0',`show_o n_page`) O R FIND_IN_ SET('3',`s how_on_pag e`))";    
58   $row = db_ arr($query );    
59   $join_page s_num = $r ow[0];    
60   // make la st page of  join form    
61   if ( $page  > $join_p ages_num )    
62       $page  = 'done';    
63      
64   // check f ields from  previous  page    
65   if ( 'done ' != $page  )    
66       $join_ page_check _limit = "  AND `join _page` < ' ". ($page  * 1000) .  "' AND `jo in_page` > = 1000";    
67   else    
68       $join_ page_check _limit = ' ';    
69      
70   //-------- ---------- ---------- ---------- ---------- ---------- -    
71      
72   // ------- -------- [  END ] GET /POST acti ons    
73      
74   // ------- -------- p age compon ents    
75      
76   $_ni = $_p age['name_ index'];    
77   $_page_con t[$_ni]['p age_main_c ode'] = Pa geCompPage MainCode() ;    
78      
79      
80   // ------- -------- [ END] page  components    
81      
82   PageCode() ;    
83      
84   // ------- -------- p age compon ents funct ions    
85      
86   /**    
87    * page co de functio n    
88    */    
89   function P ageCompPag eMainCode( )    
90   {    
91       global  $site;    
92       global  $dir;    
93       global  $tmpl;    
94       global  $page;    
95       global  $join_pag e_check_li mit;    
96       global  $join_pag es_num;    
97       global  $p_arr;    
98       global  $_page;    
99       global  $en_aff;    
100       global  $oTemplCo nfig;    
101       global  $newusern otify;    
102      
103       $enabl e_security _image = g etParam('e nable_secu rity_image ');    
104       $autoA pproval_if Join = isA utoApprova l('join');    
105      
106       ob_sta rt();     
107      
108   switch ( $ page )    
109   {    
110   // fill in puts with  values fro m precede  join pages    
111       case (  $page > 1  ) :    
112           $h idden_vals  = '';    
113       // inp uts with P OST values    
114                $respd =  db_res("S ELECT * FR OM Profile sDesc WHER E `visible ` & 2 AND  ( FIND_IN_ SET('0',sh ow_on_page ) OR FIND_ IN_SET('". (int)$_pag e['name_in dex']."',s how_on_pag e)) $join_ page_check _limit ORD ER BY `ord er` ASC");    
115           wh ile ( $arr pd = mysql _fetch_arr ay($respd)  )    
116           {    
117                $fname =  get_input _name( $ar rpd );    
118      
119                switch (  $arrpd['t ype'] )    
120                {    
121                    case  'set': //  set of ch eckboxes    
122                         $vals = pr eg_split ( "/[,\']+/" , $arrpd[' extra'], - 1, PREG_SP LIT_NO_EMP TY);    
123                         $p_arr[$fn ame] = '';    
124                         foreach (  $vals as $ v )    
125                         {    
126                             if ( s trlen(trim ($v)) <= 0  ) continu e;    
127                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . ($fname. "_".$v) .  '" value=" ' . proces s_pass_dat a($_POST[$ fname."_". $v]) . '"> ';    
128                             $p_arr [$fname."_ ".$v] = pr ocess_pass _data($_PO ST[$fname. "_".$v]);    
129                             if ( $ _POST[$fna me."_".$v]  == 'on' )    
130                             {    
131                                 if  ( strlen( $p_arr[$fn ame]) )    
132                                      $p_arr[$ fname] .=  ",$v";    
133                                 el se    
134                                      $p_arr[$ fname] .=  $v;    
135                             }    
136                         }    
137                         break;    
138                    case  'date':    
139                             $p_arr [$fname] =  sprintf(" %04d-%02d- %02d",    
140                                 (i nt)$_POST[ $fname . ' _year'],    
141                                 (i nt)$_POST[ $fname . ' _month'],    
142                                 (i nt)$_POST[ $fname . ' _day']    
143                                 );    
144                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '_year"   value="' .  (int)$_PO ST[$fname  . '_year']  . '" />';    
145                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '_month"  value="' .  (int)$_PO ST[$fname  . '_month' ] . '" />' ;    
146                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '_day"    value="' .  (int)$_PO ST[$fname  . '_day']  . '">';    
147                         break;    
148      
149                    defa ult:    
150                         if ( $arrp d['get_val ue'] )    
151                         {    
152                             $funcb ody = $arr pd['get_va lue'];    
153                             $func  = create_f unction('$ arg0', $fu ncbody);    
154                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '" value= "' . proce ss_pass_da ta($_POST[ $fname]) .  '">';    
155                             $p_arr [$fname] =  process_p ass_data($ func($_POS T));    
156                         }    
157                         else    
158                         {    
159                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '" value= "' . proce ss_pass_da ta($_POST[ $fname]) .  '">';    
160                             $p_arr [$fname] =  process_p ass_data($ _POST[$fna me]);    
161                         }    
162                         break;    
163                }    
164           }    
165      
166      
167   // check v alues    
168      
169           $q uery = "SE LECT * FRO M Profiles Desc    
170                    WHER E `visible ` & 2 AND  ( FIND_IN_ SET('0',sh ow_on_page ) OR FIND_ IN_SET('". (int)$_pag e['name_in dex']."',s how_on_pag e)) $join_ page_check _limit    
171                    ORDE R BY `join _page` ASC ";    
172           $r espd = db_ res($query );    
173      
174           wh ile ( $arr pd = mysql _fetch_arr ay($respd)  )    
175           {    
176                if ( !st rlen($arrp d['check'] ) ) contin ue;    
177                $fname =  get_input _name ( $a rrpd );    
178      
179                $funcbod y = $arrpd [check];    
180                $func =  create_fun ction('$ar g0', $func body);    
181                if ( !$f unc($p_arr [$fname]))    
182                {    
183                    $add _on .= rep ort_err( _ t($arrpd[' because'],  $arrpd['m in_length' ],$arrpd[' max_length ']) );    
184                }    
185           }    
186      
187           $p age = (!$a dd_on) ? $ page : $pa ge-1;    
188      
189           br eak;    
190      
191       break;    
192      
193       case ' done':    
194       // fil l array wi th POST va lues    
195       $respd  = db_res( "SELECT *  FROM Profi lesDesc WH ERE `visib le` & 2 AN D ( FIND_I N_SET('0', show_on_pa ge) OR FIN D_IN_SET(' ".(int)$_p age['name_ index']."' ,show_on_p age)) $joi n_page_che ck_limit O RDER BY `o rder` ASC" );    
196           wh ile ( $arr pd = mysql _fetch_arr ay($respd)  )    
197           {    
198                $fname =  get_input _name( $ar rpd );    
199      
200                switch (  $arrpd['t ype'] )    
201                {    
202                    case  'set': //  set of ch eckboxes    
203                         $vals = pr eg_split ( "/[,\']+/" , $arrpd[' extra'], - 1, PREG_SP LIT_NO_EMP TY);    
204                         $p_arr[$fn ame] = '';    
205                         foreach (  $vals as $ v )    
206                         {    
207                             if ( s trlen(trim ($v)) <= 0  ) continu e;    
208                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . ($fname. "_".$v) .  '" value=" ' . proces s_pass_dat a($_POST[$ fname."_". $v]) . '"> ';    
209                             $p_arr [$fname."_ ".$v] = pr ocess_pass _data($_PO ST[$fname. "_".$v]);    
210                             if ( $ _POST[$fna me."_".$v]  == 'on' )    
211                             {    
212                                 if  ( strlen( $p_arr[$fn ame]) )    
213                                      $p_arr[$ fname] .=  ",$v";    
214                                 el se    
215                                      $p_arr[$ fname] .=  $v;    
216                             }    
217                         }    
218                         break;    
219                    case  'date':    
220                             $p_arr [$fname] =  sprintf(" %04d-%02d- %02d",    
221                                 (i nt)$_POST[ $fname . ' _year'],    
222                                 (i nt)$_POST[ $fname . ' _month'],    
223                                 (i nt)$_POST[ $fname . ' _day']    
224                                 );    
225                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '_year"   value="' .  (int)$_PO ST[$fname  . '_year']  . '" />';    
226                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '_month"  value="' .  (int)$_PO ST[$fname  . '_month' ] . '" />' ;    
227                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '_day"    value="' .  (int)$_PO ST[$fname  . '_day']  . '">';    
228                         break;    
229                            
230                        
231                    defa ult:    
232                         if ( $arrp d['get_val ue'] )    
233                         {    
234                             $funcb ody = $arr pd['get_va lue'];    
235                             $func  = create_f unction('$ arg0',$fun cbody);    
236                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '" value= "' . proce ss_pass_da ta($_POST[ $fname]) .  '">';    
237                             $p_arr [$fname] =  process_p ass_data($ func($_POS T));    
238                         }    
239                         else    
240                         {    
241                             $hidde n_vals .=  '<input ty pe="hidden " name="'  . $fname .  '" value= "' . proce ss_pass_da ta($_POST[ $fname]) .  '">';    
242                             $p_arr [$fname] =  process_p ass_data($ _POST[$fna me]);    
243                         }    
244                         break;    
245                }    
246           }    
247      
248       // che ck values    
249       if ( $ enable_sec urity_imag e )    
250       {    
251           if  (!isset($ _POST['sec urityImage Value']) | | !isset($ _COOKIE['s trSec']) | | md5($_PO ST['securi tyImageVal ue']) != $ _COOKIE['s trSec'])    
252           {    
253                $page =  $join_page s_num;    
254                $add_on  .= report_ err ( _t(" _SIMG_ERR" ) );    
255           }    
256       }    
257      
258       $respd  = db_res( "SELECT *  FROM Profi lesDesc WH ERE `visib le` & 2 AN D ( FIND_I N_SET('0', show_on_pa ge) OR FIN D_IN_SET(' ".(int)$_p age['name_ index']."' ,show_on_p age)) $joi n_page_che ck_limit A ND `join_p age` > 0 O RDER BY `o rder` ASC" );    
259       while  ( $arrpd =  mysql_fet ch_array($ respd) )    
260       {    
261           if  ( !strlen (trim($arr pd['check' ])) ) cont inue;    
262           $f name = get _input_nam e ( $arrpd  );    
263      
264           $f uncbody =  $arrpd['ch eck'];    
265           $f unc = crea te_functio n('$arg0',  $funcbody );    
266           if  ( !$func( $p_arr[$fn ame]))    
267           {    
268                $page =  floor($arr pd['join_p age'] / 10 00);    
269                $add_on  .= report_ err( _t($a rrpd['beca use'], $ar rpd['min_l ength'], $ arrpd['max _length'])  );    
270           }    
271      
272       }    
273      
274       break;    
275      
276       defaul t:    
277       break;    
278      
279   }    
280      
281   switch( $p age )    
282   {    
283       defaul t:    
284           gl obal $tmpl ;    
285           if ( $oTemplC onfig -> c ustomize[' join_page' ]['showPag eText'] )    
286                $page_te xt = _t( " _JOIN1", $ page );    
287           ec ho $add_on ;    
288           br eak;    
289   }    
290      
291   switch ( $ page )    
292   {    
293       case ' done':    
294       // new  profile c reation    
295      
296       $cl_va lues = "IN SERT INTO  `Profiles`  SET ";    
297       $cl_fi rst = 0;    
298      
299       $respd  = db_res( "SELECT *  FROM Profi lesDesc WH ERE `visib le` & 2 AN D `to_db`  = 1 AND (  FIND_IN_SE T('0',show _on_page)  OR FIND_IN _SET('".(i nt)$_page[ 'name_inde x']."',sho w_on_page) ) $join_pa ge_check_l imit ORDER  BY `order ` ASC");    
300       while  ( $arrpd =  mysql_fet ch_array($ respd) )    
301       {    
302           $f name = get _input_nam e( $arrpd  );    
303           $d bname = ge t_field_na me( $arrpd  );    
304           $f val = $p_a rr[$fname] ;    
305      
306           if  ($dbname  == 'zip')    
307                $fval =  strtoupper ( str_repl ace(' ', ' ', $fval)  );    
308      
309           sw itch ( $ar rpd['type' ] )    
310           {    
311                case 'se t': // set  of checkb oxes    
312                case 'r' : // refer ence to ar ray for co mbo box    
313                case 'a' : // text  Area    
314                case 'c' : // input  box    
315                case 'rb ': // radi o buttons    
316                case 'e' : // enum  combo box    
317                case 'en ': // enum  combo box  with numb ers    
318                case 'en y': // enu m combo bo x with num bers    
319                case 'da te': // da te    
320                    $fva l = proces s_db_input ( $fval, 0 , 1 );    
321                    $cl_ values .=  " `$dbname ` = '$fval '";    
322                    $cl_ values .=  ", ";    
323                    brea k;    
324                case 'p' :    
325                    $fva l = md5( p rocess_pas s_data( $f val ) );    
326                    $cl_ values .=  " `$dbname ` = '$fval '";    
327                    $cl_ values .=  ", ";    
328                    brea k;    
329           }    
330       }    
331      
332       $cl_va lues .= "  `LastReg`  = NOW()";    
333      
334       db_res ($cl_value s);    
335       $IDnor mal = mysq l_insert_i d();    
336      
337       $IDcry pt = crypt ( $IDnorma l, "secret _string" ) ;  // encr ypted ID f or securit y purposes    
338       setcoo kie( "IDc" , $IDcrypt , 0 , "/"  );    
339       $_COOK IE['IDc']  = $IDcrypt ;    
340      
341       // Aff iliate and  friend ch ecking    
342       if ( $ en_aff &&  $_COOKIE[' idAff'] )    
343       {    
344           $r es = db_re s("SELECT  `ID` FROM  `aff` WHER E `ID` = { $_COOKIE[' idAff']} A ND `Status ` = 'activ e'");    
345           if  ( mysql_n um_rows( $ res ) )    
346           {    
347                $res = d b_res("INS ERT INTO ` aff_member s` (`idAff `,`idProfi le`) VALUE S ({$_COOK IE['idAff' ]}, $IDnor mal)");    
348           }    
349       }    
350       if ( $ en_aff &&  $_COOKIE[' idFriend']  )    
351       {    
352           $i dFriend =  getID( $_C OOKIE['idF riend'] );    
353           if  ( $idFrie nd )    
354           {    
355                $res = d b_res( "UP DATE `Prof iles` SET  `aff_num`  = `aff_num ` + 1 WHER E `ID` = ' $idFriend' " );    
356                createUs erDataFile ( $idFrien d );    
357           }    
358       }    
359      
360       if ( s trcmp( cry pt( $IDnor mal, 'secr et_string'  ), $_COOK IE['IDc']  ) != 0 )    
361       {    
362           ob _end_clean ();    
363      
364           $_ page['head er'] = _t(  "_Error"  );    
365      
366           $r et = "<tab le width=\ "100%\" ce llpadding= 4 cellspac ing=4><tr> <td align= center cla ss=text2>" ;    
367           $r et .= _t(  "_MUST_HAV E_COOKIES"  );    
368           $r et .= "</t d></tr></t able>";    
369      
370           re turn $ret;    
371       }    
372      
373       if ( g etParam('a utoApprova l_ifNoConf Email') ==  'on' )    
374       {    
375           if  ( getPara m('autoApp roval_ifJo in') )    
376           {    
377                db_res(" UPDATE `Pr ofiles` SE T `Status` ='Active'  WHERE `ID` ='{$IDnorm al}'");    
378                $page_te xt =  _t(  "_USER_ACT IVATION_SU CCEEDED" )  . $ret .  $add_on;    
379                $message  = getPara m("t_Activ ation");    
380                $subject  = getPara m('t_Activ ation_subj ect');    
381                sendMail ( $p_arr[' Email'], $ subject, $ message, $ IDnormal ) ;    
382           }    
383           el se    
384           {    
385                db_res(" UPDATE `Pr ofiles` SE T `Status` ='Approval ' WHERE `I D`='{$IDno rmal}'");    
386                $page_te xt = _t( " _USER_CONF _SUCCEEDED " ) . $add _on;    
387           }    
388               
389           if  ( $newuse rnotify )    
390           {    
391                $message  =     
392   "New user  {$p_arr['N ickName']}  with emai l {$p_arr[ 'Email']}  has been c onfirmed,    
393   his/her ID  is {$IDno rmal}.    
394   --    
395   {$site['ti tle']} mai l delivery  system    
396   <Auto-gene rated e-ma il, please , do not r eply>    
397   ";    
398                $subject     = "New  user conf irmed";    
399                sendMail ( $site['e mail_notif y'], $subj ect, $mess age );    
400           }    
401       }    
402           
403       else    
404       {       
405           $p age_text =  _t( "_JOI N3" ) . $a dd_on;    
406           $p age_text . = activati on_mail( $ IDnormal ) ;    
407           $p age_text . = "<br />< br /><br / ><br /><ce nter>" . _ t( "_UPLOA D_WHILE_WA ITING", $s ite['url']  ) . "</ce nter>";    
408       }    
409      
410       module s_add($IDn ormal);    
411       if ( ! $autoAppro val_ifJoin  )    
412           mo dules_bloc k($IDnorma l);    
413      
414       create UserDataFi le( $IDnor mal );    
415      
416      
417   // ------- ---------- ---------- ---------- ---------- ---------- -    
418       echo " <div id=\" first_colu mn\">";    
419       echo " <table wid th=\"100%\ " cellpadd ing=\"0\"  cellspacin g=\"0\" bo rder=\"0\" ><tr><td a lign=cente r class=te xt2>";    
420       echo " <div align =justify>$ page_text< /div>";    
421       break;    
422      
423       defaul t:    
424       echo " <div id=\" first_colu mn\">";    
425       echo " <table wid th=\"100%\ " cellpadd ing=\"0\"  cellspacin g=\"0\" bo rder=\"0\" ><tr><td a lign=cente r class=te xt2>";    
426   //-------- ---------- ---------- ---------- ---------- ---------- -    
427      
428       do    
429       {    
430           $j oin_page_l imit = ('d one' == $p age ) ? "  AND join_p age > '" .  ($join_pa ges_num *  1000) . "' " :    
431                " AND jo in_page >  '" . ($pag e * 1000)  . "' AND j oin_page <  '" . (($p age + 1) *  1000) . " '";    
432      
433           $q uery = "SE LECT COUNT (*) FROM ` ProfilesDe sc` WHERE  `visible`  & 2 $join_ page_limit  AND (FIND _IN_SET('0 ',show_on_ page) OR F IND_IN_SET ('3',show_ on_page))" ;    
434           $r es = db_re s($query);    
435           $i tem_num =  mysql_fetc h_row($res );    
436      
437           if  ($item_nu m[0] <=0 & & $page <  $join_page s_num) $pa ge++;    
438       }    
439       while  ( $item_nu m[0] <= 0  && $page <  $join_pag es_num );    
440      
441       $join_ page_limit  = ('done'  == $page  ) ? " AND  join_page  > '" . ($j oin_pages_ num * 1000 ) . "'" :    
442           "  AND join_p age > '" .  ($page *  1000) . "'  AND join_ page < '"  . (($page  + 1) * 100 0) . "'";    
443      
444       $hidde n_vals .=  "<input ty pe=\"hidde n\" name=\ "page\" va lue=\"$pag e\" />";    
445      
446   //-------- ---------- ---------- ---------- ---------- ---------- -    
447      
448       echo "    
449           <f orm name=\ "jform\" m ethod=\"po st\" actio n=\"{$_SER VER['PHP_S ELF']}\" "  . (($join _pages_num  == $page)  ? "onSubm it=\"retur n validate JoinForm() ;\">" : "> ") . "    
450      
451           $h idden_vals    
452      
453           <i nput type= hidden nam e=\"ID\" v alue=\"$ID normal\" / >    
454      
455           <d iv align=j ustify>$pa ge_text</d iv>    
456   <table wid th=\"100%\ " cellspac ing=\"2\"  cellpaddin g=\"0\" bo rder=\"0\" >";    
457      
458       $first _row = 1;    
459       $respd  = db_res( "SELECT *  FROM Profi lesDesc    
460                    WHER E `visible ` & 2 AND  ( FIND_IN_ SET('0',sh ow_on_page ) OR FIND_ IN_SET('". (int)$_pag e['name_in dex']."',s how_on_pag e)) $join_ page_limit    
461                    ORDE R BY `join _page` ASC ");    
462           
463       if( $o TemplConfi g -> custo mize['join _page']['s how_3rd_co l'] )    
464           $c olumns = 3 ;    
465       else    
466           $c olumns = 2 ;    
467           
468       while  ( $arrpd =  mysql_fet ch_array($ respd) )    
469       {    
470           $f name = get _input_nam e( $arrpd  );    
471      
472           if  ( $arrpd[ 'get_value '] && $arr pd['to_db' ] == 0 )    
473           {    
474                $funcbod y = $arrpd ['get_valu e'];    
475                $func =  create_fun ction('$ar g0',$funcb ody);    
476                $p_arr[$ fname] = $ func($p_ar r);    
477      
478           }    
479      
480           $n ot_first_r ow = 0;    
481           sw itch ($arr pd['type'] )    
482           {    
483           ca se 'set':  // set of  checkboxes    
484                echo pri nt_row_set  ( $first_ row, $arrp d, $p_arr[ $fname], " table", 0,  $columns  );    
485                break;    
486           ca se 'rb': / / radio bu ttons    
487                echo pri nt_row_rad io_button  ( $first_r ow, $arrpd , $p_arr[$ fname], "t able", 0,  $columns ) ;    
488                break;    
489           ca se 'r': //  reference  to array  for combo  box    
490                if ( $fn ame == 'Co untry' )    
491                {    
492                    $onc hange = "f lagImage =  document. getElement ById('flag ImageId');  flagImage .src = '{$ site['flag s']}' + th is.value.t oLowerCase () + '.gif ';";    
493                    if (  strlen($p _arr[$fnam e]) == 0 )    
494                         $p_arr[$fn ame] = get Param( 'de fault_coun try' );    
495                    $ima gecode = ' <img id="f lagImageId " src="'.  ($site['fl ags'].strt olower($p_ arr[$fname ])) .'.gif " alt="fla g" />';    
496                }    
497                else    
498                {    
499                    $onc hange = '' ;    
500                    $ima gecode = ' ';    
501                }    
502                echo pri nt_row_ref  ( $first_ row, $arrp d, $p_arr[ $fname], " table", 0,  $columns,  '', 0, $o nchange, $ imagecode  );    
503                break;    
504           ca se '0': //  divider    
505                echo pri nt_row_del im( $first _row, $arr pd, "panel ", $column s );    
506                $not_fir st_row = 1 ;    
507                    $fir st_row = 1 ;    
508                break;    
509           ca se 'e': //  enum comb o box    
510                echo pri nt_row_enu m( $first_ row, $arrp d, $p_arr[ $fname], " table", $j avascript,  0 );    
511                break;    
512           ca se 'en': / / enum com bo box wit h numbers    
513                echo pri nt_row_enu m_n( $firs t_row, $ar rpd, $p_ar r[$fname],  "table",  0, $column s );    
514                break;    
515           ca se 'eny':  // enum co mbo box wi th years    
516                echo pri nt_row_enu m_years( $ first_row,  $arrpd, $ p_arr[$fna me], "tabl e", 0, $co lumns );    
517                break;    
518           ca se 'date':  //date    
519                echo pri nt_row_dat e( $first_ row, $arrp d, $p_arr[ $fname], " table", 0,  $columns  );    
520                break;    
521           ca se 'a': //  text Area    
522                echo pri nt_row_are a( $first_ row, $arrp d, $p_arr[ $fname], " table", 0,  $columns  );    
523                break;    
524           ca se 'c': //  input box    
525                echo pri nt_row_edi t( $first_ row, $arrp d, $p_arr[ $fname], " table", 0,  $columns  );    
526                break;    
527           ca se 'p': //  input box  password    
528                echo pri nt_row_pwd ( $first_r ow, $arrpd , $p_arr[$ fname], "t able", 0,  $columns ) ;    
529                break;    
530           de fault:    
531                    $not _first_row  = 1;    
532                break;    
533                }    
534      
535                if ( !$n ot_first_r ow && $fir st_row ==  1 )    
536                    $fir st_row = 0 ;    
537      
538       }    
539      
540      
541       echo     "</table >";    
542      
543       // sho w on the l ast page o f join for m    
544       if ( $ join_pages _num == $p age )    
545       {    
546      
547   ?>    
548   <script la nguage=jav ascript>    
549   <!--    
550       functi on validat eJoinForm( )    
551       {    
552           if  ( documen t.forms['j form'].ele ments['i_a gree'].che cked ) ret urn true;    
553           al ert('<?php  echo _t(" _CLICK_AGR EE"); ?>') ;    
554           re turn false ;    
555       }    
556   -->    
557   </script>    
558   <?    
559           ec ho "<br /> <div class =\"securit y_image_bl ock\"><cen ter>\n";    
560           if  ( $enable _security_ image )    
561           {    
562                echo "    
563                <img alt =\"Securit y Image\"  src=\"simg /simg.php\ " /><br /> <br />" .    
564                _t( "_En ter what y ou see:" )  . "<input  name=\"se curityImag eValue\" t ype=\"text \" size=\" 15\"><br / ><br />";    
565           }    
566           ec ho "</cent er>";    
567           $r et = <<<ID    
568           <s cript type ="text/jav ascript">    
569                function  id_regist ration()    
570                {    
571                    oChe ckBox = do cument.get ElementByI d( "boonex _id" );    
572                    if(  !oCheckBox  ) return;    
573                    if(  oCheckBox. checked )    
574                         window.ope n( 'http:/ /www.boone x.com/id/' , '', 'wid th=800, he ight=600,  menubar=ye s, status= yes, resiz able=yes,  scrollbars =yes, tool bar=yes, l ocation=ye s')    
575                }    
576           </ script>    
577   ID;    
578           ec ho $ret;    
579           ec ho "    
580                <div sty le=\"text- align:cent er;\"><inp ut type=ch eckbox nam e=i_agree  id=i_agree  /><label  for=i_agre e>" . _t(" _I AGREE",  $site['ur l']) . "</ label>&nbs p;&nbsp;</ div>\n";    
581      
582   // BoonEx  ID impleme ntation    
583   //           <div sty le=\"text- align:cent er;\"><inp ut type=ch eckbox nam e=\"boonex _id\" id=\ "boonex_id \" /><labe l for=boon ex_id>" .  _t("_ID_CR EATE", "ht tp://www.b oonex.com/ id/" ) . " </label>&n bsp;&nbsp; </div>";    
584       }    
585      
586       echo     "<br />< center><in put onclic k=\"id_reg istration( );\" type= \"submit\"  value=\""  . _t( "_J oin" ) . " \"  /></ce nter></for m></div>";    
587      
588       break;    
589   }    
590       global  $memberID ;    
591           
592       echo " </td></tr> </table>";    
593       echo " </div>";    
594       echo " <div id=\" second_col umn\">";    
595           ec ho "<div c lass=\"mem ber_login\ ">";    
596           $a ction = "l ogin";    
597           $t ext = _t(  '_Member L ogin' );    
598           $t able        = "Profil es";    
599           $l ogin_page   = "{$site ['url']}me mber.php";    
600           $j oin_page    = "{$site ['url']}jo in_form.ph p";    
601           $f orgot_page  = "{$site ['url']}fo rgot.php";    
602           $t emplate     = "{$dir[ 'root']}te mplates/tm pl_{$tmpl} /join_logi n_form.htm l";    
603      
604           ec ho LoginFo rm( $text, $action,$t able,$logi n_page,$fo rgot_page, $template  );    
605      
606           ec ho "</div> ";    
607           if ( getParam ( 'enable_ get_boonex _id' ) )    
608           {    
609                echo "<d iv class=\ "import_bo onex_id\"> ";    
610                $action  = "boonex" ;    
611                $text =  '<div clas s="boonex_ id">' . _t ( '_Import  BoonEx ID ' ) . '</d iv>';    
612                $table        = "Pr ofiles";    
613                $login_p age  = "{$ site['url' ]}member.p hp";    
614                $join_pa ge   = "{$ site['url' ]}join_for m.php";    
615                $forgot_ page = '';    
616                $templat e    = "{$ dir['root' ]}template s/tmpl_{$t mpl}/join_ login_form .html";    
617      
618                echo Log inForm( $t ext,$actio n,$table,$ login_page ,$forgot_p age,$templ ate );    
619      
620                echo "</ div>";    
621           }    
622       echo " </div>";    
623      
624       $ret =  ob_get_cl ean();    
625      
626       return  $ret;    
627   }    
628      
629   /**    
630    * print e rror messa ge    
631    */    
632   function r eport_err(  $str )    
633   {    
634       return  "<font co lor=\"#880 000\"><b>"  . _t( "_E rror" ) .  ":</b> $st r</font><b r />";    
635   }    
636      
637   function L oginForm(  $text, $ac tion, $tab le, $login _page, $fo rgot_page,  $template  = '' )    
638   {    
639       global  $site;    
640       global  $dir;    
641       global  $tmpl;    
642      
643       $aForm Replace =  array();    
644           
645       $name_ label = _t ("_Nicknam e");    
646           
647       $aForm Replace['h eader_text ']    = $s ite['title '] . ' ' .  $mem . '  Login';    
648       if( $a ction == " login" )    
649       {    
650           $a FormReplac e['warning _text']    = $text;    
651           $a FormReplac e['submit_ label']    = _t("_Log  In");    
652           $a FormReplac e['form_on submit']   = 'return  true;';    
653       }    
654       elseif ( $action  == 'boonex ' )    
655       {    
656           $a FormReplac e['warning _text']    = $text .    
657                '<div cl ass="id">'  .    
658                    '<a  href="java script:voi d(0);"    
659                      on click="win dow.open(\ 'http://ww w.boonex.c om/unity/e xpress/XML .php?modul e=form&amp ;action=jo inForm&amp ;community =3\', \'Bo onex_Sign_ Up\', \'wi dth=400,he ight=593,t oolbar=0,d irectories =0,menubar =0,status= 0,location =0,scrollb ars=0,resi zable=0\') ;">' .    
660                         _t( '_Get  BoonEx ID'  ) .    
661                    '</a >'.    
662                '</div>' ;    
663               
664           $a FormReplac e['submit_ label']    = _t("_Imp ort");    
665               
666           $a FormReplac e['form_on submit']   = 'getBoon exId( this , document .forms.jfo rm ); retu rn false;' ;    
667       }    
668       $aForm Replace['a ction_url' ]     = $l ogin_page;    
669       $aForm Replace['r elocate_ur l']   = $_ SERVER['PH P_SELF'];    
670       $aForm Replace['n ame_label' ]     = $n ame_label;    
671       $aForm Replace['p assword_la bel'] = _t ("_Passwor d");    
672           
673       if( $f orgot_page  )    
674       {    
675           $a FormReplac e['forgot_ page_url']  = $forgot _page;    
676           $a FormReplac e['forgot_ label']     = _t("_fo rgot_your_ password")  . '?';    
677       }    
678       else    
679       {    
680           $a FormReplac e['forgot_ page_url']  = '';    
681           $a FormReplac e['forgot_ label']     = '';    
682       }    
683           
684       if( !s trlen( $te mplate ) )    
685           $t emplate =  "{$dir['ro ot']}templ ates/tmpl_ {$tmpl}/jo in_login_f orm.html";    
686           
687       $ret =  file_get_ contents(  $template  );    
688           
689       foreac h( $aFormR eplace as  $key => $v al )    
690           $r et = str_r eplace( "_ _{$key}__" , $val, $r et );    
691           
692       return  $ret;    
693   }    
694      
695   ?>