closes 278 : site web pro
authorPascal Corpet <pascal.corpet@m4x.org>
Thu, 24 Feb 2005 09:46:35 +0000 (09:46 +0000)
committerFlorent Bruneau <florent.bruneau@polytechnique.org>
Thu, 26 Jun 2008 21:28:16 +0000 (23:28 +0200)
git-archimport-id: opensource@polytechnique.org--2005/platal--mainline--0.9--patch-500

include/profil/assign_emploi.inc.php
include/profil/get_emploi.inc.php
include/profil/update_emploi.inc.php
include/profil/verif_emploi.inc.php
include/user.func.inc.php
templates/include/emploi.tpl
templates/profil/emploi.tpl
upgrade/0.9.5/30_entreprises.sql

index 8bda249..ac18632 100644 (file)
@@ -40,6 +40,7 @@ $page->assign('adr_pubpro',$adr_pubpro);
 $page->assign('tel_pubpro',$tel_pubpro);
 $page->assign('emailpro',$emailpro);
 $page->assign('email_pubpro',$email_pubpro);
+$page->assign('webpro',$webpro);
 $page->assign('cv',$cv);
 
 ?>
index a5de23a..4b8af53 100644 (file)
@@ -25,7 +25,7 @@ require_once('fonction.emploi.inc.php');
 
 $res = $globals->xdb->iterRow("SELECT entrid, entreprise, secteur, ss_secteur, poste, fonction,
        adr1, adr2, adr3, cp, ville, pays, region, tel, fax, mobile,
-       pub, adr_pub, tel_pub, email, email_pub
+       pub, adr_pub, tel_pub, email, email_pub, web
         FROM entreprises
         WHERE uid = {?} ORDER BY entrid",Session::getInt('uid', -1));
 
@@ -34,7 +34,7 @@ for($i = 0; $i < $nb_res ; $i++){
        list($endrid[$i], $entreprise[$i], $secteur[$i], $ss_secteur[$i], $poste[$i], $fonction[$i],
                     $adrpro1[$i], $adrpro2[$i], $adrpro3[$i], $cppro[$i], $villepro[$i], $payspro[$i], $regionpro[$i],
              $telpro[$i], $faxpro[$i], $mobilepro[$i], $pubpro[$i], $adr_pubpro[$i],
-            $tel_pubpro[$i], $emailpro[$i], $email_pubpro[$i]) = $res->next();
+            $tel_pubpro[$i], $emailpro[$i], $email_pubpro[$i], $webpro[$i]) = $res->next();
 }
 //limite dure a 2
 for($i = $nb_res; $i < 2 ; $i++){
@@ -59,6 +59,7 @@ for($i = $nb_res; $i < 2 ; $i++){
        $tel_pubpro[$i] = '';
        $emailpro[$i] = '';
        $email_pubpro[$i] = '';
+       $webpro[$i] = '';
 }
 
 //recuperation des donnees sur les secteurs :
index 1281747..405f89c 100644 (file)
@@ -21,7 +21,7 @@
 
 for($i = 0; $i < 2; $i++){
 
-    $globals->xdb->execute("REPLACE INTO entreprises(uid,entrid,entreprise,secteur,ss_secteur,poste,fonction,adr1,adr2,adr3,cp,ville,pays,region,tel,fax,mobile,pub, adr_pub, tel_pub, email, email_pub) ".
+    $globals->xdb->execute("REPLACE INTO entreprises(uid,entrid,entreprise,secteur,ss_secteur,poste,fonction,adr1,adr2,adr3,cp,ville,pays,region,tel,fax,mobile,pub, adr_pub, tel_pub, email, email_pub, web) ".
               "VALUES ({?}, {?}, {?}, ".
              "{?},".
              "{?}".
@@ -30,7 +30,7 @@ for($i = 0; $i < 2; $i++){
              "{?}, {?}, ".
              "{?}, {?}, {?}, {?}, ".
              "{?}, {?}, {?}, ".
-             "{?}, {?})",
+             "{?}, {?}, {?})",
              Session::getInt('uid', -1) , $i , $entreprise[$i] ,
              ( ($secteur[$i] == "") ? null : $secteur[$i]), //sinon un faux 0 est rentre dans la base
              ( ($ss_secteur[$i] == "") ? null : $ss_secteur[$i]),
@@ -39,7 +39,7 @@ for($i = 0; $i < 2; $i++){
               $villepro[$i], $payspro[$i],
              $regionpro[$i], $telpro[$i], $faxpro[$i], $mobilepro[$i],
              $pubpro[$i], $adr_pubpro[$i], $tel_pubpro[$i],
-             $emailpro[$i], $email_pubpro[$i]);
+             $emailpro[$i], $email_pubpro[$i], $webpro[$i]);
 }
 $globals->xdb->execute("UPDATE auth_user_md5 set cv= {?} WHERE user_id = {?}", $cv, Session::getInt('uid', -1));
 ?>
index 9e0d843..9312fdf 100644 (file)
@@ -19,6 +19,7 @@
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
+include_once('xorg.misc.inc.php');
 
 function set_flag_i(&$var,$var_name,$i){
   $tab = Env::getMixed($var_name, Array());
@@ -51,6 +52,7 @@ replace_ifset_i($adr_pubpro,"adr_pubpro",$i);
 replace_ifset_i($tel_pubpro,"tel_pubpro",$i);
 replace_ifset_i($emailpro,"emailpro",$i);
 replace_ifset_i($email_pubpro,"email_pubpro",$i);
+replace_ifset_i($webpro,"webpro",$i);
 replace_ifset($cv,"cv");
 
 // validité de l'entreprise
@@ -72,6 +74,25 @@ if (strlen(strtok($cv,"<>{}~
   $str_error = $str_error."Le champ 'Curriculum vitae' contient un caractère interdit.<BR />";
 }
 
+// correction du champ web si vide
+if ($webpro[$i]=="http://" or $webpro[$i] == '') {
+    $webpro[$i]='';
+} elseif (!preg_match("{^(https?|ftp)://[a-zA-Z0-9._%#+/?=&~-]+$}i", $webpro[$i])) {
+    // validité de l'url donnée dans web
+    $page->trig("URL incorrecte dans le champ 'Page web', une url doit commencer par
+                    http:// ou https:// ou ftp:// et ne pas contenir de caractères interdits");
+} else {
+    $webpro[$i] = str_replace('&', '&amp;', $webpro[$i]);
+}
+
+// validité de l'e-mail
+if ($emailpro[$i]) {
+    $emailpro[$i] = strtolower(trim($emailpro[$i]));
+    if (!isvalid_email($emailpro[$i])) {
+       $page->trig("Adresse e-mail incorrecte dans le champ 'E-mail'");
+    }
+}
+
 if (strlen(strtok($adrpro1[$i],"<>{}@~?!§*`|%$^=+")) < strlen($adrpro1[$i]))
     {
       $str_error = $str_error."Le champ 'Adresse professionnelle $j - Ligne 1' contient un caractère interdit.<BR />";
index 0538956..3c0c114 100644 (file)
@@ -183,7 +183,7 @@ function &get_user_details($login, $from_uid = '')
     $sql  = "SELECT  e.entreprise, s.label as secteur , ss.label as sous_secteur , f.fonction_fr as fonction,
                      e.poste, e.adr1, e.adr2, e.adr3, e.cp, e.ville,
                      gp.pays, gr.name AS region, e.tel, e.fax, e.mobile, e.entrid,
-                     e.pub, e.tel_pub, e.email, e.email_pub
+                     e.pub, e.tel_pub, e.email, e.email_pub, e.web
                FROM  entreprises AS e
           LEFT JOIN  emploi_secteur AS s ON(e.secteur = s.id)
           LEFT JOIN  emploi_ss_secteur AS ss ON(e.ss_secteur = ss.id AND e.secteur = ss.secteur)
index d2b293f..493b5ab 100644 (file)
@@ -23,7 +23,7 @@
         {if $address.entreprise}
         <tr>
           <td><em>Ent/Org: </em></td>
-          <td><strong>{$address.entreprise}</strong></td>
+          <td><strong>{$address.entreprise}{if $address.web} [<a href='{$address.web}'>site</a>]{/if}</strong></td>
         </tr>
         {/if}
         {if $address.secteur}
@@ -47,7 +47,7 @@
         {/if}
         {if $address.email}
         <tr>
-          <td><em>E-mail : </em></td>
+          <td><em>E-mail: </em></td>
           <td><strong>{$address.email}</strong></td>
         </tr>
         {/if}
index 37ce567..4116e8b 100644 (file)
         <span class="titre">E-mail</span>
       </td>
       <td>
-        <input tyep="text" size="30" maxlength="60" name="emailpro[{$i}]" value="{$emailpro.$i}" />
+        <input type="text" size="30" maxlength="60" name="emailpro[{$i}]" value="{$emailpro.$i}" />
+      </td>
+    </tr>
+    <tr>
+      <td class="colg">
+        <span class="titre">Page web</span>
+      </td>
+      <td>
+        <input type="text" size="30" maxlength="255" name="webpro[{$i}]" value="{$webpro.$i}" />
       </td>
     </tr>
   </table>
index c812b9b..ceb670d 100644 (file)
@@ -9,4 +9,5 @@ tel_pub = IF(FIND_IN_SET('tel_public', visibilite), 'public', IF(FIND_IN_SET('te
 ALTER TABLE entreprises DROP visibilite;
 ALTER TABLE entreprises
 ADD email VARCHAR(60) NOT NULL AFTER mobile,
+ADD web VARCHAR(255) NOT NULL AFTER email,
 ADD email_pub ENUM('private', 'ax', 'public') DEFAULT 'private' NOT NULL;