linea21-core
[ class tree: linea21-core ] [ index: linea21-core ] [ all elements ]

Source for file display.php

Documentation is available at display.php

  1. <?php
  2. /**
  3.  * @package linea21.core
  4.  * @subpackage user
  5.  * @author linea21 <info@linea21.com>
  6.  * @version $id SVN
  7.  * @access public
  8.  * @license http://opensource.org/licenses/gpl-3.0.html
  9.  */
  10.  
  11. include_once(override('../user/'.SQL.'.inc.php'));
  12.  
  13. if(!function_exists('DisplayInfoUser')) {
  14.  
  15.   function DisplayInfoUser($user_id{
  16.  
  17.     $data=$GLOBALS['sql_object'-> DBSelect(SQL_getAllUserInfo($user_id));
  18.  
  19.     $content '';
  20.     
  21.     if($data == 0error_redirect();
  22.     
  23.     if(count($data)!=1return false;
  24.     else
  25.     {
  26.       // Récupération infos groupes de travail
  27.       include_once('../class/class.user.php');
  28.       $user_objectnew user;
  29.       $r=$user_object->GetUserWorkshops($user_id$GLOBALS['sql_object']);
  30.       $default_wgarray();
  31.       if($r !== 0{
  32.           foreach($r as $value{
  33.             array_push($default_wg$value['jwu_workshop_id']);
  34.           }
  35.       }
  36.       $user_workgroups '';
  37.       if(!empty($default_wg)) {
  38.         $q=SQL_Get_WorkshopsDenomination($default_wg);
  39.         $workgroups=$GLOBALS['sql_object']->DBSelect($q);
  40.         $user_workgroups .= '<ul>';
  41.         foreach($workgroups as $wg{
  42.           $link array('rub'=> $GLOBALS['links'][U_L]['workgroup']['linkvalue']'id' => $wg['workshop_id']'name' => $wg['workshop_denomination']);
  43.           $user_workgroups .= '<li><a href="'.HrefMaker($link).'" title="'._t('name','workshop_module').' : '.formatText($wg['workshop_denomination']'2ATT').'">'.formatText($wg['workshop_denomination']'2HTML').'</a></li>'.END_LINE;
  44.         }
  45.         $user_workgroups .= '</ul>';
  46.       else $user_workgroups .= _t('divers''none');
  47.  
  48.       // formattage des données
  49.       $user_login=formatText($data[0]['user_login']'2HTML');
  50.       $user_public_email=$data[0]['profile_email_display'];
  51.       $user_email=$data[0]['profile_email'];
  52.       $user_email=formatText('<a href="mailto:'.$user_email.'">'.$user_email.'</a>''2HTML');
  53.       $user_groupe=formatText($data[0]['catus_name']'2HTML');
  54.  
  55.       $user_profile_firstname=formatText(empty_nc($data[0]['profile_firstname'])'2HTML');
  56.       $user_profile_lastname=formatText(empty_nc($data[0]['profile_lastname'])'2HTML');
  57.       $user_profile_city=formatText(empty_nc($data[0]['profile_city'])'2HTML');
  58.       $user_profile_birthdate=formatText(empty_nc($data[0]['profile_birthdate'])'2HTML');
  59.       $user_profile_leisures=formatText(empty_nc($data[0]['profile_leisures'])'2HTML');
  60.       $user_profile_job=formatText(empty_nc($data[0]['profile_job'])'2HTML');
  61.       $user_profile_quotation=formatText(empty_nc($data[0]['profile_quotation'])'2HTML');
  62.       $user_profile_signature=formatText(empty_nc($data[0]['profile_signature'])'2HTML');
  63.  
  64.       if(!empty($data[0]['profile_avatar'])) {
  65.         list($complete_uri)=GetAllPhotoUri('../'.$data[0]['profile_avatar']);
  66.         $user_profile_avatar='<img src="'.$complete_uri.'" alt="'._t('user','avatar').' '.$user_login.'" />';
  67.       else $user_profile_avatar=_t('divers','none');
  68.  
  69.       $profile_last_modify_display=$data[0]['profile_last_modify_display'];
  70.       $profile_date_crea_display=$data[0]['profile_date_crea_display'];
  71.       $user_last_con_display=empty_nc($data[0]['user_last_con_display']);
  72.  
  73.       $content.='<h1>'._t('user','profile').' '.$user_login.'</h1>'.END_LINE;
  74.       $content.='<div class="sub-title">';
  75.       $content.=_t('user','h1_public_comment');
  76.       $content.='</div>';
  77.       $content.=GetLinkModifyUserInfo($user_id);
  78.       $content.='<div>'.END_LINE;
  79.       $content.='<dl>'.END_LINE;
  80.       $content.='<dt>'.mb_ucfirst(_t('user','type')).' : </dt>'.END_LINE;
  81.       $content.='<dd>'.$user_groupe.'</dd>'.END_LINE;
  82.       $content.='<dt>'mb_ucfirst(_t('user','email'))' : </dt>'.END_LINE;
  83.       if($user_public_email=='Y')    $content.='<dd>'.$user_email.'</dd>'.END_LINE;
  84.       else $content.='<dd>'._t('statut','draftpdf').'</dd>'.END_LINE;
  85.       $content.='<dt>'.mb_ucfirst(_t('user','first_name')).' : </dt>'.END_LINE;
  86.       $content.='<dd>'$user_profile_firstname.'</dd>'.END_LINE;
  87.       $content.='<dt>'.mb_ucfirst(_t('user','last_name')).' : </dt>'.END_LINE;
  88.       $content.='<dd>'$user_profile_lastname.'</dd>'.END_LINE;
  89.       $content.='<dt>'.mb_ucfirst(_t('user','birthdate')).' : </dt>'.END_LINE;
  90.       $content.='<dd>'$user_profile_birthdate.'</dd>'.END_LINE;
  91.       $content.='<dt>'.mb_ucfirst(_t('user','city')).' : </dt>'.END_LINE;
  92.       $content.='<dd>'$user_profile_city.'</dd>'.END_LINE;
  93.       $content.='<dt>'.mb_ucfirst(_t('user','leisures')).' : </dt>'.END_LINE;
  94.       $content.='<dd>'$user_profile_leisures.'</dd>'.END_LINE;
  95.       $content.='<dt>'.mb_ucfirst(_t('user','job')).' : </dt>'.END_LINE;
  96.       $content.='<dd>'$user_profile_job.'</dd>'.END_LINE;
  97.       $content.='<dt>'.mb_ucfirst(_t('user','avatar')).' : </dt>'.END_LINE;
  98.       $content.='<dd>'$user_profile_avatar.'</dd>'.END_LINE;
  99.       $content.='<dt>'.mb_ucfirst(_t('user','quotation')).' : </dt>'.END_LINE;
  100.       $content.='<dd>'$user_profile_quotation.'</dd>'.END_LINE;
  101.       $content.='<dt>'.mb_ucfirst(_t('user','signature')).' : </dt>'.END_LINE;
  102.       $content.='<dd>'$user_profile_signature.'</dd>'.END_LINE;
  103.       $content.='<dt>'.mb_ucfirst(_t('groups','his')).' : </dt>'.END_LINE;
  104.       $content.='<dd>'$user_workgroups.'</dd>'.END_LINE;
  105.       $content.='<dt>'.mb_ucfirst(_t('user','latest_con')).' : </dt>'.END_LINE;
  106.       $content.='<dd>'$user_last_con_display.'</dd>'.END_LINE;
  107.       $content.='<dt>'.mb_ucfirst(_t('divers','last_modify')).' : </dt>'.END_LINE;
  108.       $content.='<dd>'$profile_last_modify_display.'</dd>'.END_LINE;
  109.       $content.='<dt>'.mb_ucfirst(_t('divers','date_crea')).' : </dt>'.END_LINE;
  110.       $content.='<dd>'$profile_date_crea_display.'</dd>'.END_LINE;
  111.       $content.='</dl>'.END_LINE;
  112.       $content.='</div>'.END_LINE;
  113.  
  114.  
  115.     }
  116.     echo $content;
  117.   }
  118. }
  119.  
  120. if(!function_exists('DisplayFormProfileUser')) {
  121.  
  122.   function DisplayFormProfileUser($user_id$submitted=-1{
  123.  
  124.     $data=$GLOBALS['sql_object'-> DBSelect(SQL_getAllUserInfo($user_id));
  125.     $content '';
  126.     $mask_display_mail_1='';
  127.     $mask_display_mail_2='';
  128.     
  129.     // ajax code for deleting avatar
  130.     $js '
  131.     $("a.delete_avatar").click(function() {
  132.     
  133.     var url = "../user/delavatar.php?mode=ajax";
  134.     $.ajax({
  135.     type: "GET",
  136.     url: url,
  137.     dataType: "json",
  138.     success: function(data) {
  139.     if(data.status==1) {
  140.     $("#avatarcontainer").fadeOut("slow");
  141.     }
  142.     }
  143.     });
  144.     return false;
  145.     });
  146.     ';
  147.  
  148.     // en modification simple
  149.     if($submitted==-1{
  150.       if(count($data)!=1return false;
  151.       else
  152.       {
  153.         // formattage des données
  154.         $form_login=formatText($data[0]['user_login']'2FIELD');
  155.         $form_public_email=$data[0]['profile_email_display'];
  156.         $form_email=formatText($data[0]['profile_email']'2FIELD');
  157.         $current_email=formatText($data[0]['profile_email']'2FIELD');
  158.         $form_groupe=formatText($data[0]['catus_name']'2FIELD');
  159.         $current_avatar=$data[0]['profile_avatar'];
  160.          
  161.         if($form_public_email=='Y'$mask_display_mail_1=' checked="checked"';
  162.         else $mask_display_mail_2=' checked="checked"';
  163.         $form_profile_firstname=formatText($data[0]['profile_firstname']'2FIELD');
  164.         $form_profile_lastname=formatText($data[0]['profile_lastname']'2FIELD');
  165.         $form_profile_city=formatText($data[0]['profile_city']'2FIELD');
  166.         $form_profile_birthdate isNullDate($data[0]['profile_birthdate']'--' formatDate($data[0]['profile_birthdate']true);
  167.         list($form_date_y$form_date_m$form_date_d)=explode('-'$form_profile_birthdate);
  168.         $form_profile_leisures=formatText($data[0]['profile_leisures']'2FIELD');
  169.         $form_profile_job=formatText($data[0]['profile_job']'2FIELD');
  170.         $form_profile_quotation=formatText($data[0]['profile_quotation']'2FIELD');
  171.         $form_profile_signature=formatText($data[0]['profile_signature']'2FIELD');
  172.  
  173.         if(!empty($data[0]['profile_avatar'])) {
  174.           list($complete_uri)=GetAllPhotoUri('../'.$data[0]['profile_avatar']);
  175.           
  176.           $link_delavatararray('rub'=> $GLOBALS['links'][U_L]['user-prefs']['linkvalue']'delavatar' => 1);
  177.           
  178.           $user_profile_avatar '<div id="avatarcontainer">';
  179.           $user_profile_avatar.='<img src="'.$complete_uri.'" alt="'._t('user','avatar').' '.$_SESSION['userlogin'].'" />';
  180.           $user_profile_avatar.='<p><a class="delete_avatar" href="'HrefMaker($link_delavatar).'" title="'._t('user','delete_avatar').'"><span>'._t('user','delete_avatar').'</span></a></p>';
  181.           $user_profile_avatar.='</div>';
  182.  
  183.           footerAddInlineJS($js);
  184.         else $user_profile_avatar=_t('divers','none');
  185.          
  186.         $profile_last_modify_display=$data[0]['profile_last_modify_display'];
  187.         $profile_date_crea_display=$data[0]['profile_date_crea_display'];
  188.       }
  189.  
  190.       // un submit à déjà été fait, on affiche les infos entrées par l'utilisateur
  191.     else {
  192.       $form_email=$_REQUEST['email'];
  193.       $current_email=$_REQUEST['current_email'];
  194.       $current_avatar=base64_decode($_REQUEST['current_avatar']);
  195.  
  196.       if(!empty($current_avatar)) {
  197.         list($complete_uri)=GetAllPhotoUri('../'.$current_avatar);
  198.         
  199.         $link_delavatararray('rub'=> $GLOBALS['links'][U_L]['user-prefs']['linkvalue']'delavatar' => 1);
  200.         
  201.         $user_profile_avatar '<div id="avatarcontainer">';
  202.         $user_profile_avatar.='<img src="'.$complete_uri.'" alt="'._t('user','avatar').' '.$_SESSION['userlogin'].'" />';
  203.         $user_profile_avatar.='<p><a class="delete_avatar" href="'HrefMaker($link_delavatar).'" title="'._t('user','delete_avatar').'"><span>'._t('user','delete_avatar').'</span></a></p>';
  204.         $user_profile_avatar.='</div>';
  205.         
  206.         footerAddInlineJS($js);
  207.         
  208.       else $user_profile_avatar=_t('divers','none');
  209.        
  210.       if($_REQUEST['email_display']=='Y'$mask_display_mail_1=' checked="checked"';
  211.       else $mask_display_mail_2=' checked="checked"';
  212.       $form_profile_firstname=$_REQUEST['firstname'];
  213.       $form_profile_lastname=$_REQUEST['lastname'];
  214.       $form_date_d=$_REQUEST['date_d'];
  215.       $form_date_m=$_REQUEST['date_m'];
  216.       $form_date_y=$_REQUEST['date_y'];
  217.       $form_profile_city=$_REQUEST['city'];
  218.       $form_profile_leisures=$_REQUEST['leisures'];
  219.       $form_profile_job=$_REQUEST['job'];
  220.       $form_profile_quotation=$_REQUEST['quotation'];
  221.       $form_profile_signature=$_REQUEST['signature'];
  222.     }
  223.  
  224.     $content.='<form action="index.php" method="post" enctype="multipart/form-data">'.END_LINE;
  225.     $content.='<div>'.END_LINE;
  226.     $content.='<table class="modifyuser" summary="'._t('user','p_mod_table_summary').'">'.END_LINE;
  227.     $content.='<tr>'.END_LINE;
  228.     $content.='<td>'.END_LINE;
  229.     $content.='<label for="email" class="labelised">'.mb_ucfirst(_t('user','email')).' : </label>'.END_LINE;
  230.     $content.='</td>'.END_LINE;
  231.     $content.='<td>'.END_LINE;
  232.     $content.='<input name="email" type="text" class="textfield" id="email" maxlength="200" value="'.$form_email.'" />'.END_LINE;
  233.     $content.='<br />';
  234.     $content.='<div class="advertise">'.END_LINE;
  235.     $content.=_t('user','info_mail').END_LINE;
  236.     $content.='</div>'.END_LINE;
  237.     $content.='</td>'.END_LINE;
  238.     $content.='</tr>'.END_LINE;
  239.  
  240.     $content.='<tr>'.END_LINE;
  241.     $content.='<td>'.END_LINE;
  242.     $content.='<label for="email_display_Y" class="labelised">'.mb_ucfirst(_t('user','email_display')).' : </label>'.END_LINE;
  243.     $content.='</td>'.END_LINE;
  244.     $content.='<td>'.END_LINE;
  245.     $content.='<input type="radio" id="email_display_Y" class="radio" name="email_display" value="Y"'.$mask_display_mail_1.' /><span class="radio">'._t('divers','yes').'</span>'.END_LINE;
  246.     $content.='<input type="radio" id="email_display_N" class="radio" name="email_display" value="N"'.$mask_display_mail_2.' /><span class="radio">'._t('divers','no').'</span>'.END_LINE;
  247.     $content.='</td>'.END_LINE;
  248.     $content.='</tr>'.END_LINE;
  249.     $content.='<tr>'.END_LINE;
  250.     $content.='<td>'.END_LINE;
  251.     $content.='<label for="firstname" class="labelised">'.mb_ucfirst(_t('user','first_name')).' : </label>'.END_LINE;
  252.     $content.='</td>'.END_LINE;
  253.     $content.='<td>'.END_LINE;
  254.     $content.='<input name="firstname" type="text" class="textfield" id="firstname" maxlength="200" value="'.$form_profile_firstname.'" />'.END_LINE;
  255.     $content.='</td>'.END_LINE;
  256.     $content.='</tr>'.END_LINE;
  257.     $content.='<tr>'.END_LINE;
  258.     $content.='<td>'.END_LINE;
  259.     $content.='<label for="lastname" class="labelised">'.mb_ucfirst(_t('user','last_name')).' : </label>'.END_LINE;
  260.     $content.='</td>'.END_LINE;
  261.     $content.='<td>'.END_LINE;
  262.     $content.='<input name="lastname" type="text" class="textfield" id="lastname" maxlength="200" value="'.$form_profile_lastname.'" />'.END_LINE;
  263.     $content.='</td>'.END_LINE;
  264.     $content.='</tr>'.END_LINE;
  265.     $content.='<tr>'.END_LINE;
  266.     $content.='<td>'.END_LINE;
  267.     $content.='<label for="date_d" class="labelised">'.mb_ucfirst(_t('user','birthdate')).' : </label>'.END_LINE;
  268.     $content.='</td>'.END_LINE;
  269.     $content.='<td>'.END_LINE;
  270.     $content.= sprintf(input_date($form_date_y$form_date_m$form_date_d));
  271.     $content.='</td>'.END_LINE;
  272.     $content.='</tr>'.END_LINE;
  273.     $content.='<tr>'.END_LINE;
  274.     $content.='<td>'.END_LINE;
  275.     $content.='<label for="city" class="labelised">'.mb_ucfirst(_t('user','city')).' : </label>'.END_LINE;
  276.     $content.='</td>'.END_LINE;
  277.     $content.='<td>'.END_LINE;
  278.     $content.='<input name="city" type="text" class="textfield" id="city" maxlength="100" value="'.$form_profile_city.'" />'.END_LINE;
  279.     $content.='</td>'.END_LINE;
  280.     $content.='</tr>'.END_LINE;
  281.     $content.='<tr>'.END_LINE;
  282.     $content.='<td>'.END_LINE;
  283.     $content.='<label for="leisures" class="labelised">'.mb_ucfirst(_t('user','leisures')).' :</label>'.END_LINE;
  284.     $content.='</td>'.END_LINE;
  285.     $content.='<td>'.END_LINE;
  286.     $content.='<input name="leisures" type="text" class="textfield" id="leisures" maxlength="150" value="'.$form_profile_leisures.'" />'.END_LINE;
  287.     $content.='</td>'.END_LINE;
  288.     $content.='</tr>'.END_LINE;
  289.     $content.='<tr>'.END_LINE;
  290.     $content.='<td>'.END_LINE;
  291.     $content.='<label for="job" class="labelised">'.mb_ucfirst(_t('user','job')).' :</label>'.END_LINE;
  292.     $content.='</td>'.END_LINE;
  293.     $content.='<td>'.END_LINE;
  294.     $content.='<input name="job" type="text" class="textfield" id="job" maxlength="150" value="'.$form_profile_job.'" />'.END_LINE;
  295.     $content.='</td>'.END_LINE;
  296.     $content.='</tr>'.END_LINE;
  297.  
  298.     $content.='<tr>'.END_LINE;
  299.     $content.='<td>'.END_LINE;
  300.     $content.='<span class="labelmargin labelised">' mb_ucfirst(_t('user','current_avatar')).' : '.'</span>'.END_LINE;
  301.     $content.='</td>'.END_LINE;
  302.     $content.='<td>'.END_LINE;
  303.     $content.=$user_profile_avatar.END_LINE;
  304.     $content.='</td>'.END_LINE;
  305.     $content.='</tr>'.END_LINE;
  306.  
  307.     $content.='<tr>'.END_LINE;
  308.     $content.='<td>'.END_LINE;
  309.     $content.='<label for="avatar" class="labelised">'.mb_ucfirst(_t('user','avatar')).' :</label>'.END_LINE;
  310.     $content.='</td>'.END_LINE;
  311.     $content.='<td>'.END_LINE;
  312.     $content.='<input name="avatar" type="file" id="avatar" class="textfield" />'.END_LINE;
  313.     $content.='</td>'.END_LINE;
  314.     $content.='</tr>'.END_LINE;
  315.  
  316.     $content.='<tr>'.END_LINE;
  317.     $content.='<td>'.END_LINE;
  318.     $content.='<label for="quotation" class="labelised">'.mb_ucfirst(_t('user','quotation')).' :</label>'.END_LINE;
  319.     $content.='</td>'.END_LINE;
  320.     $content.='<td>'.END_LINE;
  321.     $content.='<input name="quotation" type="text" class="textfield" id="quotation" maxlength="150" value="'.$form_profile_quotation.'" />'.END_LINE;
  322.     $content.='</td>'.END_LINE;
  323.     $content.='</tr>'.END_LINE;
  324.     $content.='<tr>'.END_LINE;
  325.     $content.='<td>'.END_LINE;
  326.     $content.='<label for="signature" class="labelised">'.mb_ucfirst(_t('user','signature')).' :</label>'.END_LINE;
  327.     $content.='</td>'.END_LINE;
  328.     $content.='<td>'.END_LINE;
  329.     $content.='<input name="signature" type="text" class="textfield" id="signature" maxlength="200" value="'.$form_profile_signature.'" />'.END_LINE;
  330.     $content.='</td>'.END_LINE;
  331.     $content.='</tr>'.END_LINE;
  332.     $content.='</table>'.END_LINE;
  333.  
  334.     $content.='<hr />'.END_LINE;
  335.     $content.='<div class="advertise">'.END_LINE;
  336.     $content.=_t('user','info_password').END_LINE;
  337.     $content.='</div>'.END_LINE;
  338.     $content.='<table class="modifyuser" summary="">'.END_LINE;
  339.     $content.='<tr>'.END_LINE;
  340.     $content.='<td>'.END_LINE;
  341.     $content.='<label for="password" class="labelised">'.mb_ucfirst(_t('user','p_new_password')).' : </label>'.END_LINE;
  342.     $content.='</td>'.END_LINE;
  343.     $content.='<td>'.END_LINE;
  344.     $content.='<input name="password" type="password" class="textfield" id="password" maxlength="20" value="" />'.END_LINE;
  345.     $content.='<div id="pwd-complexity" class="default"></div>'.END_LINE;
  346.     $content.='</td>'.END_LINE;
  347.     $content.='</tr>'.END_LINE;
  348.     $content.='<tr>'.END_LINE;
  349.     $content.='<td>'.END_LINE;
  350.     $content.='<label for="password2" class="labelised">'.mb_ucfirst(_t('user','p_new_password_confirm')).' : </label>'.END_LINE;
  351.     $content.='</td>'.END_LINE;
  352.     $content.='<td>'.END_LINE;
  353.     $content.='<input name="password2" type="password" class="textfield" id="password2" maxlength="20" value="" />'.END_LINE;
  354.     $content.='</td>'.END_LINE;
  355.     $content.='</tr>'.END_LINE;
  356.     $content.='</table>'.END_LINE;
  357.  
  358.     $content.='</div>'.END_LINE;
  359.     $content.='<input name="current_email" type="hidden" value="'.$current_email.'" id="current_email" />'.END_LINE;
  360.     $content.='<input name="current_avatar" type="hidden" value="'.base64_encode($current_avatar).'" id="current_avatar" />'.END_LINE;
  361.     $content.='<input name="id" type="hidden" value="'.$user_id.'" id="id" />'.END_LINE;
  362.     $content.='<input name="rub" type="hidden" id="rub" value="'.$GLOBALS['links'][U_L]['user-prefs']['linkvalue'].'" />'.END_LINE;
  363.     $content.='<input type="submit" class="submitbut" value="'._t('btn','valid').'" title="'._t('btn','valid').'" name="modprofile" id="modprofile" />'.END_LINE;
  364.     $content.='</form>'.END_LINE;
  365.     
  366.     $js_password_inputs 'var minPasswordLength = '.PASSWD_MINLENGTH.';
  367.                                                  var msg_novalue = "'._t('password_strength''novalue').'";
  368.                                                  var msg_short = "'.sprintf(_t('password_strength''too_short')PASSWD_MINLENGTH).'";
  369.                                                  var msg_weak = "'._t('password_strength''weak').'";
  370.                                                  var msg_average = "'._t('password_strength''average').'";
  371.                                                  var msg_strong = "'._t('password_strength''strong').'";
  372.                                                  var msg_secure = "'._t('password_strength''secure').'";
  373.                                                  ';
  374.  
  375.     echo '<script type="text/javascript">'.$js_password_inputs.'</script>';
  376.     footerAddJS('../lib/js/mocha.js')
  377.  
  378.     echo $content;
  379.   }
  380. }
  381.  
  382. if(!function_exists('ModifyProfile')) {
  383.  
  384.   function ModifyProfile({
  385.  
  386.     $link_homearray('rub'=> $GLOBALS['links'][U_L]['home']['linkvalue']);
  387.  
  388.     $id=base64_decode($_SESSION['userid']);
  389.     $integrity=1;
  390.     $table_user[0]''// valeur login --> Non checké
  391.     $table_user[1=$_REQUEST['email'];
  392.     $table_profile[0$_REQUEST['email'];
  393.     $table_profile[1$_REQUEST['email_display'];
  394.     $table_profile[2$_REQUEST['city'];
  395.     $form_date_d trim($_REQUEST['date_d']);
  396.     $form_date_m trim($_REQUEST['date_m']);
  397.     $form_date_y trim($_REQUEST['date_y']);
  398.     $form_date=$form_date_d '-' $form_date_m '-' $form_date_y;
  399.  
  400.     if(!empty($form_date_d&& !empty($form_date_m&& !empty($form_date_y)) {
  401.       $date_integrity=checkdate_validity($form_date);
  402.     else {
  403.       $date_integrity=true;
  404.     }
  405.     if(is_string($date_integrity)) $integrity $date_integrity;
  406.     else {
  407.       $table_profile[3]$form_date;
  408.     }
  409.  
  410.     $table_profile[4$_REQUEST['leisures'];
  411.     $table_profile[5$_REQUEST['job'];
  412.     $table_profile[6$_REQUEST['quotation'];
  413.     $table_profile[7$_REQUEST['signature'];
  414.     $table_profile[8$_REQUEST['firstname'];
  415.     $table_profile[9$_REQUEST['lastname'];
  416.     $table_profile[10base64_decode($_REQUEST['current_avatar']);
  417.  
  418.  
  419.     include_once('../class/class.user.php');
  420.     $user_objectnew user;
  421.     $data_user_integrity=$user_object->CheckDataIntegrity($table_user);
  422.     if(is_string($data_user_integrity)) $integrity=$data_user_integrity;
  423.  
  424.     if(!empty($_REQUEST['password'])) {
  425.       $integrity=$user_object->checkPasswordValidity($_REQUEST['password']$_REQUEST['password2']);
  426.     }
  427.     if(!is_string($integrity)) {
  428.       if(isset($_FILES['avatar']&& $_FILES['avatar']['name']!=''{
  429.         include_once('../class/system/class.upload.php');
  430.         $upload_objectnew upload;
  431.         $upload=$_FILES['avatar'];
  432.         $size_integrity=$upload_object->CheckMaxFile($upload['size']$user_object->UPLOAD_MAX_MO);
  433.         if(is_string($size_integrity)) $integrity=$size_integrity;
  434.         $format_integrity=$upload_object->CheckExtImage($upload['name']);
  435.         if(is_string($format_integrity)) $integrity=$format_integrity;
  436.         if(!is_string($integrity)) {
  437.           $final_name=$id.".".$upload_object->GetExtension($upload ['name']);
  438.           $table_profile[10]=$user_object->URI_INPUT.$final_name;
  439.  
  440.           $destination="../".$user_object->URI_INPUT;
  441.           $result_upload=$upload_object->UploadFile($upload$final_name$destination);
  442.         }
  443.       }
  444.     }
  445.  
  446.  
  447.     if(!is_string($integrity)) {
  448.       $result=$user_object->ModifyProfile($id$table_profile$GLOBALS['sql_object']);
  449.  
  450.       if($result == true{
  451.         $string =_t('user','p_confirm_mod').'.';
  452.         $string.=' <a href="'.HrefMaker($link_home).'" title="'._t('user','p_confirm_back').'" >'._t('user','p_confirm_back').'</a>';
  453.         $integrity array('code'=> 'confirm''string' => $string);
  454.       }
  455.       if(($_REQUEST['email']!=$_REQUEST['current_email']|| !empty($_REQUEST['password'])) {
  456.         if($_REQUEST['email']!=$_REQUEST['current_email']{
  457.           $new_pass=$user_object->GetNewPassword();
  458.           $todo_mail='change_mail';     // choix template pour mail
  459.           $new_email=$_REQUEST['email'];     // renseignement nouvel email
  460.           $user_login=$_SESSION['userlogin']// retrieve login
  461.         }
  462.         if(!empty($_REQUEST['password'])) {
  463.           $new_pass=$_REQUEST['password'];
  464.           $todo_mail='change_pass';     // choix template pour mail
  465.           $user_email=$_REQUEST['email'];        // renseignement email
  466.           $user_login=$_SESSION['userlogin']// retrieve login
  467.         }
  468.         $user_object->UpdateUserPassword($id$new_pass$GLOBALS['sql_object']);
  469.         $GLOBALS['l21auth']->updateSessionPassword(crypt($new_passSALT_CRYPT));
  470.          
  471.         /** include envoi de mail */
  472.         include_once(override('../user/mail_actions.php'));
  473.         include_once('../mail/template.php');
  474.       }
  475.     else {
  476.       $integrity array('code'=> 'error''string' => $integrity);
  477.     }
  478.  
  479.     $return_result ='<div class="'.$integrity['code'].'">'.END_LINE;
  480.     $return_result.=$integrity['string'].END_LINE;
  481.     $return_result.='</div>'.END_LINE;
  482.  
  483.     echo $return_result;
  484.   }
  485. }
  486.  
  487. if(!function_exists('deleteUserAvatar')) {
  488.  
  489.     function deleteUserAvatar({
  490.         
  491.         include_once('../user/delavatar.php');
  492.          
  493.         $str ='<div class="confirm">'.END_LINE;
  494.         $str.=_t('user','confirm_delavatar').END_LINE;
  495.         $str.='</div>'.END_LINE;
  496.         echo $str;
  497.     }
  498. }
  499.  
  500. if(!function_exists('ChangeNotifySettings')) {
  501.  
  502.   function ChangeNotifySettings($user_id{
  503.      
  504.     include_once('../class/class.user.php');
  505.     $user_objectnew user;
  506.      
  507.     $allgroups array();
  508.     $checked array();
  509.     $disabled array();
  510.      
  511.     // get workgroups
  512.     $data=$GLOBALS['sql_object'-> DBSelect(SQL_getUserWorkgroups($user_id));
  513.     if($data == 0return false;
  514.      
  515.     foreach($data as $el{
  516.       array_push($allgroups'topic-'.$el['id']);
  517.       array_push($allgroups'post-'.$el['id']);
  518.       array_push($allgroups'file-'.$el['id']);
  519.     }
  520.  
  521.     if(isset($_POST['topic'])) {
  522.       foreach($_POST['topic'as $el{
  523.         array_push($checked'topic-'.$el);
  524.       }
  525.     }
  526.     if(isset($_POST['post'])) {
  527.       foreach($_POST['post'as $el{
  528.         array_push($checked'post-'.$el);
  529.       }
  530.     }
  531.     if(isset($_POST['file'])) {
  532.       foreach($_POST['file'as $el{
  533.         array_push($checked'file-'.$el);
  534.       }
  535.     }
  536.     if(isset($_POST['disabledfields'])) {
  537.       $disabled unserialize(rawurldecode($_POST['disabledfields']));
  538.     }
  539.  
  540.     $checked array_merge($disabled$checked);
  541.      
  542.     // diff between all groups and checked boxes
  543.     $exceptions array_diff($allgroups$checked);
  544.     $r $user_object->changeWorkshopsNotification($user_id$exceptions$GLOBALS['sql_object']);
  545.      
  546.     $str ='<div class="confirm">'.END_LINE;
  547.     $str.=_t('user','notify_changes_success').END_LINE;
  548.     $str.='</div>'.END_LINE;
  549.     echo $str;
  550.   }
  551. }
  552.  
  553.  
  554. if(!function_exists('GetLinkModifyUserInfo')) {
  555.  
  556.   function GetLinkModifyUserInfo($user_id{
  557.  
  558.     $content ='';
  559.     if(isset($_SESSION['authenticated']&& $user_id==base64_decode($_SESSION['userid'])) {
  560.       $link_editarray('rub'=> $GLOBALS['links'][U_L]['user-prefs']['linkvalue']);
  561.  
  562.       $content.='<div id="editprofile">'.END_LINE;
  563.       $content.='<a class="button buttonmargin" href="'.HrefMaker($link_edit).'" title="'._t('user','p_mod').'">'._t('user','p_mod').'</a>';
  564.       $content.='</div>'.END_LINE;
  565.     }
  566.     return $content;
  567.   }
  568. }
  569.  
  570. if(!function_exists('DisplayAuthTextInfo')) {
  571.  
  572.   function DisplayAuthTextInfo({
  573.     $link_accountarray('rub'=> $GLOBALS['links'][U_L]['user-registration']['linkvalue']);
  574.     $content ='<div class="info">'.END_LINE;
  575.     $content.=_t('user','info_inscription').END_LINE;
  576.     $content.='<a href="'.HrefMaker($link_account).'">'._t('user','info_inscription2').' </a>'.END_LINE;
  577.     $content.='.<br />'._t('user','info_inscription3').''.END_LINE;
  578.     $content.='</div>'.END_LINE;
  579.     echo $content;
  580.   }
  581. }
  582.  
  583. if(!function_exists('DisplaySubscribeTextInfo')) {
  584.  
  585.   function DisplaySubscribeTextInfo({
  586.     $content ='<div class="info">'.END_LINE;
  587.     $content.=_t('user','info_inscription5').END_LINE;
  588.     $content.='</div>';
  589.     echo $content;
  590.   }
  591. }
  592.  
  593. if(!function_exists('DisplayWorkgroupsSettings')) {
  594.  
  595.   function DisplayWorkgroupsSettings($user_id{
  596.     $content ='<h2>'._t('user','my_workgroups').'</h2>'.END_LINE;
  597.     $content.='<div class="personnalsettings">'.END_LINE;
  598.     $content.='<p>'._t('user','workgroups_notification').'</p>'.END_LINE;
  599.     $content.=getWorkgroupsNotificationTable($user_id);
  600.     $content.='</div>';
  601.     
  602.     echo $content;
  603.   }
  604. }
  605.  
  606. if(!function_exists('getWorkgroupsNotificationTable')) {
  607.  
  608.   function getWorkgroupsNotificationTable($user_id{
  609.     
  610.     $exceptions array();
  611.     $disabled_fields array();
  612.     
  613.     // get workgroups
  614.     $data=$GLOBALS['sql_object'-> DBSelect(SQL_getUserWorkgroups($user_id));
  615.      
  616.     // get notification exceptions
  617.     $exc=$GLOBALS['sql_object'-> DBSelect(SQL_getUserNotifyExceptionsSettings($user_id));
  618.      
  619.    
  620.     if($exc!=0{
  621.       foreach($exc as $el{
  622.         array_push($exceptions$el['exception']);
  623.       }
  624.     }
  625.     // default mask
  626.     $dmask='checked="checked"';
  627.      
  628.     if($data==0return false;
  629.     
  630.     // general config
  631.     if(ALERT_NEWTOPIC==2{
  632.         $is_topicDisabled='';
  633.     else {
  634.         $is_topicDisabled=' disabled="disabled"';
  635.     }
  636.     if(ALERT_NEWPOST==2{
  637.         $is_postDisabled='';
  638.     else {
  639.         $is_postDisabled=' disabled="disabled"';
  640.     }
  641.     if(ALERT_NEWFILE==2{
  642.       $is_fileDisabled='';
  643.     else {
  644.       $is_fileDisabled=' disabled="disabled"';
  645.     }
  646.     
  647.  
  648.     $content  ='<form action="index.php" method="post">'.END_LINE;
  649.     $content .= "<table>";
  650.     $content .= "<thead>";
  651.     $content .= "<tr>";
  652.     $content .= "<td>"._t('user','workgroups_label')."</td>";
  653.     $content .= "<td class=\"center\">".str_replace(' - ''<br />'_t('user','notify_topic'))."</td>";
  654.     $content .= "<td class=\"center\">".str_replace(' - ''<br />',_t('user','notify_post'))."</td>";
  655.     $content .= "<td class=\"center\">".str_replace(' - ''<br />',_t('user','notify_file'))."</td>";
  656.     $content .= "</tr>";
  657.     $content  .= "</thead>";
  658.     $content  .= "<tbody>";
  659.     foreach($data as $el{
  660.        
  661.       if(in_array('topic-'.$el['id']$exceptions)) {
  662.         $topic_mask '';
  663.         $topic_on_class='';
  664.         $topic_off_class=' selected';
  665.       else {
  666.         $topic_mask $dmask;
  667.         $topic_on_class=' selected';
  668.         $topic_off_class='';
  669.         // we handle disabled fields because they are not sent to server !!!
  670.         if(ALERT_NEWTOPIC!=2array_push($disabled_fields'topic-'.$el['id']);
  671.       }
  672.       if(in_array('post-'.$el['id']$exceptions)) {
  673.         $post_mask '';
  674.         $post_on_class='';
  675.         $post_off_class=' selected';
  676.       else {
  677.         $post_mask $dmask;
  678.         $post_on_class=' selected';
  679.         $post_off_class='';
  680.         // we handle disabled fields because they are not sent to server !!!
  681.         if(ALERT_NEWPOST!=2array_push($disabled_fields'post-'.$el['id']);
  682.       }
  683.       if(in_array('file-'.$el['id']$exceptions) ) {
  684.         $file_mask '';
  685.         $file_on_class='';
  686.         $file_off_class=' selected';
  687.       else {
  688.         $file_mask $dmask;
  689.         $file_on_class=' selected';
  690.         $file_off_class='';
  691.         // we handle disabled fields because they are not sent to server !!!
  692.         if(ALERT_NEWFILE!=2array_push($disabled_fields'file-'.$el['id']);
  693.       }
  694.       
  695.       $content .= "<tr>";
  696.       $content .= "<td>".$el['name']."</td>";
  697.       $content .= "<td class=\"center\"><p class=\"switch\"><label class=\"cb-enable".$topic_on_class."\"><span>"._t('divers''yes')."</span></label><label class=\"cb-disable".$topic_off_class."\"><span>"._t('divers''no')."</span></label><input".$is_topicDisabled." type=\"checkbox\" ".$topic_mask." value=\"".$el['id']."\" id=\"topic-".$el['id']."\" name=\"topic[]\" /></p></td>";
  698.       $content .= "<td class=\"center\"><p class=\"switch\"><label class=\"cb-enable".$post_on_class."\"><span>"._t('divers''yes')."</span></label><label class=\"cb-disable".$post_off_class."\"><span>"._t('divers''no')."</span></label><input".$is_postDisabled." type=\"checkbox\" ".$post_mask." value=\"".$el['id']."\" id=\"post-".$el['id']."\" name=\"post[]\" /></p></td>";
  699.       $content .= "<td class=\"center\"><p class=\"switch\"><label class=\"cb-enable".$file_on_class."\"><span>"._t('divers''yes')."</span></label><label class=\"cb-disable".$file_off_class."\"><span>"._t('divers''no')."</span></label><input".$is_fileDisabled." type=\"checkbox\" ".$file_mask." value=\"".$el['id']."\" id=\"file-".$el['id']."\" name=\"file[]\" /></p></td>";
  700.       $content .= "</tr>";
  701.     }
  702.     $content .= "</tbody>";
  703.     $content .= "</table>";
  704.     $content .='<input type="hidden" name="disabledfields" id="disabledfields" value="'.rawurlencode(serialize($disabled_fields)).'" />'.END_LINE;
  705.     $content .='<input type="hidden" name="rub" id="rub2" value="'.$GLOBALS['links'][U_L]['user-prefs']['linkvalue'].'" />'.END_LINE;
  706.     $content .='<input type="submit" class="submitbut" value="'._t('btn','valid').'" title="'._t('btn','valid').'" name="notifyUpdate" id="notifyUpdate" />'.END_LINE;
  707.     $content .= "</form>";
  708.  
  709.     //Iphone style button
  710.     /**
  711.     $content .="<script type=\"text/javascript\">
  712.                 $(document).ready( function(){
  713.                     $('.switch').parent('td').css('padding-left', '4em');
  714.                     $('.switch input').css('display', 'none');
  715.                     $('.cb-enable').click(function(){
  716.                         var parent = $(this).parents('.switch');
  717.                         if($(':checkbox',parent).attr('disabled') != true) {
  718.                             $('.cb-disable',parent).removeClass('selected');
  719.                             $(this).addClass('selected');
  720.                             $(':checkbox',parent).attr('checked', true);
  721.                         }
  722.                     });
  723.                     $('.cb-disable').click(function(){
  724.                         var parent = $(this).parents('.switch');
  725.                         if($(':checkbox',parent).attr('disabled') != true) {
  726.                             $('.cb-enable',parent).removeClass('selected');
  727.                             $(this).addClass('selected');
  728.                             $(':checkbox',parent).attr('checked', false);
  729.                         }
  730.                     });
  731.                 });
  732.                 </script>";
  733.        */
  734.     
  735.  
  736.     return $content;
  737.   }
  738. }
  739. ?>

Documentation generated on Mon, 08 Apr 2013 18:13:52 +0200 by phpDocumentor 1.4.1