Adds a description field for the education.
authorStéphane Jacob <jacou@melix.net>
Wed, 20 Aug 2008 11:53:07 +0000 (13:53 +0200)
committerStéphane Jacob <jacou@melix.net>
Wed, 20 Aug 2008 11:53:07 +0000 (13:53 +0200)
include/education.func.inc.php
include/user.func.inc.php
include/userset.inc.php
modules/profile/general.inc.php
modules/search/classes.inc.php
templates/include/minifiche.tpl
templates/profile/edu.tpl
upgrade/fusionax-0.0.1/06_education.sql

index 48f4a43..e1b5144 100644 (file)
@@ -107,13 +107,19 @@ Platal::page()->register_function('education_degree_name', 'education_degree_nam
 
 /** formatte une formation pour l'affichage
  */
-function education_fmt($name, $url, $degree, $grad_year, $field, $sexe, $long)
+function education_fmt($name, $url, $degree, $grad_year, $field, $program, $sexe, $long)
 {
     $field = strtolower($field);
     $txt = "";
 
-    if ($grad_year || $field) {
+    if ($grad_year || $field || $program) {
         $txt .= "<span  title=\"(";
+        if ($program) {
+            $txt .= $program;
+            if ($grad_year || $field) {
+                $txt .= ", ";
+            }
+        }
         if ($grad_year) {
             if ($sexe) {
                 $txt .= "diplômée en $grad_year";
@@ -152,7 +158,7 @@ function education_fmt($name, $url, $degree, $grad_year, $field, $sexe, $long)
 function _education_fmt($params, &$smarty)
 {
     extract($params);
-    return education_fmt($name, $url, $degree, $grad_year, $field, $sexe, $long);
+    return education_fmt($name, $url, $degree, $grad_year, $field, $program, $sexe, $long);
 }
 Platal::page()->register_function('education_fmt', '_education_fmt');
 
index dcac714..6074fda 100644 (file)
@@ -492,7 +492,8 @@ function &get_user_details($login, $from_uid = '', $view = 'private')
         $user['gpxs_join'] = join(', ', $user['gpxs']);
     }
 
-    $res = XDB::iterRow("SELECT  en.name AS name, en.url AS url, d.degree AS degree, ed.grad_year AS grad_year, f.field AS field
+    $res = XDB::iterRow("SELECT  en.name AS name, en.url AS url, d.degree AS degree,
+                                 ed.grad_year AS grad_year, f.field AS field, ed.program AS program
                            FROM  profile_education AS ed
                      INNER JOIN  profile_education_enum        AS en ON (en.id = ed.eduid)
                      INNER JOIN  profile_education_degree_enum AS d  ON (d.id  = ed.degreeid)
@@ -502,11 +503,11 @@ function &get_user_details($login, $from_uid = '', $view = 'private')
 
     $user['education'] = "";
     require_once('education.func.inc.php');
-    if (list($name, $url, $degree, $grad_year, $field) = $res->next()) {
-        $user['education'] .= education_fmt($name, $url, $degree, $grad_year, $field, $user['sexe'], true);
+    if (list($name, $url, $degree, $grad_year, $field, $program) = $res->next()) {
+        $user['education'] .= education_fmt($name, $url, $degree, $grad_year, $field, $program, $user['sexe'], true);
     }
-    while (list($name, $url, $degree, $grad_year, $field) = $res->next()) {
-        $user['education'] .= ", " . education_fmt($name, $url, $degree, $grad_year, $field, $user['sexe'], true);
+    while (list($name, $url, $degree, $grad_year, $field, $program) = $res->next()) {
+        $user['education'] .= ", " . education_fmt($name, $url, $degree, $grad_year, $field, $program, $user['sexe'], true);
     }
 
     if (has_user_right($user['medals_pub'], $view)) {
index dc750cf..f0c1ab0 100644 (file)
@@ -183,10 +183,14 @@ class MinificheView extends MultipageView
                 IF(n1.nat='',n1.pays,n1.nat) AS nat1, n1.a2 AS iso3166_1,
                 IF(n2.nat='',n2.pays,n2.nat) AS nat2, n2.a2 AS iso3166_2,
                 IF(n3.nat='',n3.pays,n3.nat) AS nat3, n3.a2 AS iso3166_3,
-                ede0.name AS eduname0, ede0.url AS eduurl0, edd0.degree AS edudegree0, edu0.grad_year AS edugrad_year0, f0.field AS edufield0,
-                ede1.name AS eduname1, ede1.url AS eduurl1, edd1.degree AS edudegree1, edu1.grad_year AS edugrad_year1, f1.field AS edufield1,
-                ede2.name AS eduname2, ede2.url AS eduurl2, edd2.degree AS edudegree2, edu2.grad_year AS edugrad_year2, f2.field AS edufield2,
-                ede3.name AS eduname3, ede3.url AS eduurl3, edd3.degree AS edudegree3, edu3.grad_year AS edugrad_year3, f3.field AS edufield3,
+                ede0.name AS eduname0, ede0.url AS eduurl0, edd0.degree AS edudegree0,
+                edu0.grad_year AS edugrad_year0, f0.field AS edufield0, edu0.program AS eduprogram0,
+                ede1.name AS eduname1, ede1.url AS eduurl1, edd1.degree AS edudegree1,
+                edu1.grad_year AS edugrad_year1, f1.field AS edufield1, edu1.program AS eduprogram1,
+                ede2.name AS eduname2, ede2.url AS eduurl2, edd2.degree AS edudegree2,
+                edu2.grad_year AS edugrad_year2, f2.field AS edufield2, edu2gram AS eduprogram2,
+                ede3.name AS eduname3, ede3.url AS eduurl3, edd3.degree AS edudegree3,
+                edu3.grad_year AS edugrad_year3, f3.field AS edufield3, edu3gram AS eduprogram3,
                 adr.city, gp.a2, gp.pays AS countrytxt, gr.name AS region,
                 (COUNT(em.email) > 0 OR FIND_IN_SET('googleapps', u.mail_storage) > 0) AS actif,
                 nd.display AS name_display, nd.tooltip AS name_tooltip, nd.sort AS name_sort" .
index 564b574..0c4191b 100644 (file)
@@ -91,7 +91,7 @@ class ProfileEdu implements ProfileSetting
         $success = true;
         if (is_null($value) || !is_array($value)) {
             $value = array();
-            $res = XDB::iterator("SELECT  eduid, degreeid, fieldid, grad_year
+            $res = XDB::iterator("SELECT  eduid, degreeid, fieldid, grad_year, program
                                     FROM  profile_education
                                    WHERE  uid = {?}
                                 ORDER BY  id",
@@ -125,8 +125,10 @@ class ProfileEdu implements ProfileSetting
         foreach ($value as $eduid=>&$edu) {
             if ($edu['eduid'] != '') {
                 XDB::execute("INSERT INTO  profile_education
-                                      SET  id = {?}, uid = {?}, eduid = {?}, degreeid = {?}, fieldid = {?}, grad_year = {?}",
-                             $eduid, S::i('uid'), $edu['eduid'], $edu['degreeid'], $edu['fieldid'], $edu['grad_year']);
+                                      SET  id = {?}, uid = {?}, eduid = {?}, degreeid = {?},
+                                           fieldid = {?}, grad_year = {?}, program = {?}",
+                             $eduid, S::i('uid'), $edu['eduid'], $edu['degreeid'],
+                             $edu['fieldid'], $edu['grad_year'], $edu['program']);
             }
         }
     }
index d51ebe3..8383991 100644 (file)
     u.perms != \'pending\' AS wasinscrit,
     FIND_IN_SET(\'femme\', u.flags) AS sexe,
     a.alias AS forlife,
-    ede0.name AS eduname0, ede0.url AS eduurl0, edd0.degree AS edudegree0, edu0.grad_year AS edugrad_year0, f0.field AS edufield0,
-    ede1.name AS eduname1, ede1.url AS eduurl1, edd1.degree AS edudegree1, edu1.grad_year AS edugrad_year1, f1.field AS edufield1,
-    ede2.name AS eduname2, ede2.url AS eduurl2, edd2.degree AS edudegree2, edu2.grad_year AS edugrad_year2, f2.field AS edufield2,
-    ede3.name AS eduname3, ede3.url AS eduurl3, edd3.degree AS edudegree3, edu3.grad_year AS edugrad_year3, f3.field AS edufield3,
+    ede0.name AS eduname0, ede0.url AS eduurl0, edd0.degree AS edudegree0,
+    edu0.grad_year AS edugrad_year0, f0.field AS edufield0, edu0.program AS eduprogram0,
+    ede1.name AS eduname1, ede1.url AS eduurl1, edd1.degree AS edudegree1,
+    edu1.grad_year AS edugrad_year1, f1.field AS edufield1, edu1.program AS eduprogram1,
+    ede2.name AS eduname2, ede2.url AS eduurl2, edd2.degree AS edudegree2,
+    edu2.grad_year AS edugrad_year2, f2.field AS edufield2, edu2.program AS eduprogram2,
+    ede3.name AS eduname3, ede3.url AS eduurl3, edd3.degree AS edudegree3,
+    edu3.grad_year AS edugrad_year3, f3.field AS edufield3, edu3.program AS eduprogram3,
     es.label AS secteur, ef.fonction_fr AS fonction,
     IF(n1.nat=\'\',n1.pays,n1.nat) AS nat1, n1.a2 AS iso3166_1,
     IF(n2.nat=\'\',n2.pays,n2.nat) AS nat2, n2.a2 AS iso3166_2,
index 7ca86a7..00808ed 100644 (file)
       <img src='images/flags/{$c.iso3166_3}.gif' alt='{$c.nat3}' height='11' title='{$c.nat3}' />&nbsp;
       {/if}
       X {$c.promo}{if $c.eduname0}, {education_fmt name=$c.eduname0 url=$c.eduurl0 degree=$c.edudegree0
-                                     grad_year=$c.edugrad_year0 field=$c.edufield0 sexe=$c.sexe}{*
+                                     grad_year=$c.edugrad_year0 field=$c.edufield0 program=$c.eduprogram0 sexe=$c.sexe}{*
       *}{/if}{if $c.eduname1}, {education_fmt name=$c.eduname1 url=$c.eduurl1 degree=$c.edudegree1
-                                     grad_year=$c.edugrad_year1 field=$c.edufield1 sexe=$c.sexe}{*
+                                     grad_year=$c.edugrad_year1 field=$c.edufield1 program=$c.eduprogram1 sexe=$c.sexe}{*
       *}{/if}{if $c.eduname2}, {education_fmt name=$c.eduname2 url=$c.eduurl2 degree=$c.edudegree2
-                                     grad_year=$c.edugrad_year2 field=$c.edufield2 sexe=$c.sexe}{*
+                                     grad_year=$c.edugrad_year2 field=$c.edufield2 program=$c.eduprogram2 sexe=$c.sexe}{*
       *}{/if}{if $c.eduname3}, {education_fmt name=$c.eduname3 url=$c.eduurl3 degree=$c.edudegree3
-                                     grad_year=$c.edugrad_year3 field=$c.edufield3 sexe=$c.sexe}{*
+                                     grad_year=$c.edugrad_year3 field=$c.edufield3 program=$c.eduprogram3 sexe=$c.sexe}{*
       *}{/if}{if $c.dcd}, décédé{if $c.sexe}e{/if} le {$c.deces|date_format}{/if}
     </div>
   </div>
index 4eaf9d3..ca43b36 100644 (file)
@@ -42,5 +42,8 @@ Domaine de formation&nbsp;:
 Année d'obtention du diplôme&nbsp;:
 <input type="text" {if $edu.error}class="error"{/if} name="{$eduname}[grad_year]" value="{$edu.grad_year}" size="4" maxlength="4" />
 <small>(par exemple&nbsp;: 2008)</small>
+<br />
+Intitulé de la formation&nbsp;:
+<input type="text" name="{$eduname}[program]" value="{$edu.program}" size="40" maxlength="255" />
 
 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
index 51e73a7..74ef1ee 100644 (file)
@@ -34,6 +34,7 @@ CREATE TABLE IF NOT EXISTS profile_education (
   degreeid INT(4) NOT NULL DEFAULT 0,
   fieldid INT(2) NOT NULL DEFAULT 0,
   grad_year INT(4) NOT NULL DEFAULT 0,
+  program VARCHAR(255) DEFAULT NULL,
   PRIMARY KEY(id, uid)
 ) CHARSET=utf8;