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

Source for file display.php

Documentation is available at display.php

  1. <?php
  2. /**
  3.  * @package linea21.modules
  4.  * @subpackage project
  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('../project/' SQL '.inc.php');
  12.  
  13. /**
  14.  * DisplayListProject()
  15.  * Affichage de la liste des projets publics
  16.  *
  17.  * @param string $statut 
  18.  * @param integer $filter 
  19.  * @param string $id_filter 
  20.  * @param integer $debut 
  21.  * @return string $content
  22.  */
  23. function DisplayListProject($statut$filter$id_filter$debut)
  24. {
  25.   if ($statut == 'public'{
  26.     $pas 100;
  27.     $suffix '';
  28.   else $pas SELECT_LIMIT;
  29.   if ($statut == 'archives_p'$suffix ' "'.strtolower($GLOBALS['lang']['statut']['PA']).'"';
  30.   $data $GLOBALS['sql_object']->DBSelect(SQL_getProjectsList($debut$pas$statut$filter$id_filter));
  31.   $datacount $GLOBALS['sql_object']->DBSelect(SQL_getCountProjectsList($statut$filter$id_filter));
  32.   $bdd_nb_com $datacount[0]['num_rows'];
  33.   $bdd_nb_com_display '<p>' $bdd_nb_com ' ' $GLOBALS['lang']['project']['name'$suffix '</p>' END_LINE;
  34.   $content '<h1 class="semnone">' $GLOBALS['lang']['project']['list''</h1>' END_LINE;
  35.   if ($data != 0{
  36.     // echo $bdd_nb_com_display;    // affichage du nombre d'enregistrements
  37.     $current_link array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']);
  38.     Display_linkin_page($current_link$bdd_nb_com$debut$pas);
  39.     for($i 0$i count($data)$i++{
  40.       $link_detail array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'id' => $data[$i]['project_id']'name' => $data[$i]['project_name']);
  41.       $link_scale array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'filter' => $GLOBALS['filters'][LANGUAGE]['scale']['linkvalue']'id' => $data[$i]['project_scale_id']'name' => $data[$i]['scale_denomination']);
  42.       $link_priority array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'filter' => $GLOBALS['filters'][LANGUAGE]['priority']['linkvalue']'id' => $data[$i]['priority_id''name' => $data[$i]['priority_name']);
  43.       $link_user array('rub' => $GLOBALS['links'][LANGUAGE]['user-profile']['linkvalue']'id' => $data[$i]['project_posted_by']'name' => $data[$i]['user_login']);
  44.       $project_name formatText($data[$i]['complete_project_name']'2HTML');
  45.       $project_description formatText(cutText($data[$i]['project_description']300)'2HTML');
  46.       $scale_denomination formatText($data[$i]['scale_denomination']'2HTML');
  47.       $project_posted_on formatText($data[$i]['project_published_date_display']'2HTML');
  48.       $project_posted_by formatText($data[$i]['user_login']'2HTML');
  49.       $project_priority formatText($data[$i]['priority_name']'2HTML');
  50.  
  51.       $content .= '<h2 class="nobottommargin"><a href="' HrefMaker($link_detail'" title="' formatText($project_name'2ATT''">' $project_name '</a>' END_LINE;
  52.       $content .= '</h2>' END_LINE;
  53.       $content .= '<p class="published_by">' END_LINE;
  54.       $content .= $GLOBALS['lang']['statut']['published_on'' ' $project_posted_on ' ';
  55.       $content .= $GLOBALS['lang']['divers']['by'].' <a href="' HrefMaker($link_user'" title="' $GLOBALS['links'][LANGUAGE]['user-profile']['desc'' (' $project_posted_by ')">' $project_posted_by '</a>';
  56.       $content .= '</p>' END_LINE;
  57.           
  58.       $content .= '<p class="list_textcontent">' $project_description '</p>' END_LINE;
  59.       $content .= '<p class="filter_info">';
  60.       $content .= $GLOBALS['lang']['project']['priority'' : ';
  61.       $content .= ' <a href="' HrefMaker($link_priority'" title="' $GLOBALS['filters'][LANGUAGE]['priority']['desc'' : ' formatText($project_priority'2ATT''" class="filter_info_priority">' $project_priority '</a> ' END_LINE;
  62.       $content .= $GLOBALS['lang']['divers']['scale'' : ';
  63.       $content .= ' <a href="' HrefMaker($link_scale'" title="' $GLOBALS['filters'][LANGUAGE]['scale']['desc'' : ' formatText($scale_denomination'2ATT''" class="filter_info_scale">' $scale_denomination '</a></p>' END_LINE;
  64.       if($i<count($data)-1$content .= '<hr />' END_LINE;
  65.     }
  66.   else {
  67.     $content .= '<p class="info">' $GLOBALS['lang']['divers']['nodata''</p>';
  68.   }
  69.  
  70.   echo $content;
  71. }
  72.  
  73. /**
  74.  * DisplayOneProject()
  75.  * Affichage d'un projet en détail
  76.  *
  77.  * @param integer $project_id 
  78.  * @return string $stat status name
  79.  */
  80. function DisplayOneProject($project_id)
  81. {
  82.   $data $GLOBALS['sql_object']->DBSelect(SQL_getoneCompleteProject($project_id));
  83.   $content '';
  84.   if (count($data!= 1exit;
  85.   else {
  86.     $link_scale array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'filter' => $GLOBALS['filters'][LANGUAGE]['scale']['linkvalue']'id' => $data[0]['project_scale_id']'name' => $data[0]['scale_denomination']);
  87.     $link_priority array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'filter' => $GLOBALS['filters'][LANGUAGE]['priority']['linkvalue']'id' => $data[0]['project_priority_id']'name' => $data[0]['project_priority']);
  88.     $link_user array('rub' => $GLOBALS['links'][LANGUAGE]['user-profile']['linkvalue']'id' => $data[0]['project_posted_by']'name' => $data[0]['user_login']);
  89.     $link_parent array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'id' => $data[0]['project_parent_id']'name' => $data[0]['parent_name']);
  90.     $project_name formatText($data[0]['project_name']'2HTML');
  91.     $project_description linkin_content(formatText($data[0]['project_description']'2HTML'));
  92.     $project_body linkin_content(formatText($data[0]['project_body']'2HTML'));
  93.     $project_parent formatText($data[0]['parent_name']'2HTML');
  94.     $project_scale formatText($data[0]['scale_denomination']'2HTML');
  95.     $project_priority formatText($data[0]['project_priority']'2HTML');
  96.     $project_begin_date formatText(empty_nc($data[0]['project_begin_date_display'])'2HTML');
  97.     $project_estimated_date formatText(empty_nc($data[0]['project_estimated_date_display'])'2HTML');
  98.     $project_end_date formatText(empty_nc($data[0]['project_end_date_display'])'2HTML');
  99.  
  100.     $schedule_table getScheduleTable($data[0]['project_begin_date_display']$data[0]['project_estimated_date_display']$data[0]['project_end_date_display']);
  101.  
  102.     $project_posted_on formatText($data[0]['project_published_date_display']'2HTML');
  103.     $project_modify_on formatText($data[0]['project_last_modify_display']'2HTML');
  104.     $project_posted_by formatText($data[0]['user_login']'2HTML');
  105.     $project_status $data[0]['project_statut'];
  106.  
  107.     $content .= '<h1 class="nobottommargin">' $project_name '</h1>' END_LINE;
  108.     $content .= '<p class="published_by">' END_LINE;
  109.     $content .= $GLOBALS['lang']['statut']['published_on'' ' $project_posted_on ' ';
  110.     $content .= $GLOBALS['lang']['divers']['by'].' <a href="' HrefMaker($link_user'" title="' $GLOBALS['links'][LANGUAGE]['user-profile']['desc'' (' $project_posted_by ')">' $project_posted_by '</a>';
  111.     if ($project_status == 'PA'{
  112.       $content .= ' (' $GLOBALS['lang']['statut']['archived_on'' ' $project_modify_on ')';
  113.     }
  114.     $content .= '</p>' END_LINE;
  115.     if($data[0]['project_parent_id'!= 0{
  116.       $content .= '<div id="parent_project">' END_LINE;
  117.       $content .= $GLOBALS['lang']['project']['parent'' : ';
  118.       $content .= '<a href="' HrefMaker($link_parent'" title="' $GLOBALS['lang']['project']['parent'' : ' formatText($project_parent'2ATT''" class="filter_info_parent">' $project_parent '</a> ';
  119.       $content .= '</div>' END_LINE;
  120.     }
  121.     $content .= '<p class="chapo">' $project_description '</p>' END_LINE;
  122.     
  123.     $content .= '<div class="schedule">' $schedule_table '</div>' END_LINE;
  124.     $content .= '<p class="textcontent">' $project_body '</p>' END_LINE;
  125.     $content .= getProjectChildren($project_id);
  126.     $content .= '<p class="filter_info">' END_LINE;
  127.     $content .= $GLOBALS['lang']['project']['priority'' : ';
  128.     $content .= '<a href="' HrefMaker($link_priority'" title="' $GLOBALS['filters'][LANGUAGE]['priority']['desc'' : ' formatText($project_priority'2ATT''" class="filter_info_priority">' $project_priority '</a> ' END_LINE;
  129.     $content .= ' ' $GLOBALS['lang']['divers']['scale'' : ';
  130.     $content .= '<a href="' HrefMaker($link_scale'" title="' $GLOBALS['filters'][LANGUAGE]['scale']['desc'' : ' formatText($project_scale'2ATT''" class="filter_info_scale">' $project_scale '</a>' END_LINE;
  131.     $content .= '</p>' END_LINE;
  132.   }
  133.   echo $content;
  134.   return GetStatusName($project_status);
  135. }
  136.  
  137. /**
  138.  * GetProjectChildren()
  139.  *
  140.  * @param  $id 
  141.  * @return string 
  142.  */
  143. function getProjectChildren($id)
  144. {
  145.   $data $GLOBALS['sql_object']->DBSelect(SQL_getProjectChildren($id));
  146.  
  147.   $content '';
  148.   if (count($data!= && $data[0]!=0{
  149.     
  150.     $content .= '<div id="linkinparts">'.END_LINE;
  151.     $content .= '<p>'.$GLOBALS['lang']['project']['sub-projects'].' : </p><ul>'.END_LINE;
  152.     for($i 0$i count($data)$i++{
  153.       $link array('rub' => $GLOBALS['links'][LANGUAGE]['project']['linkvalue']'id' => $data[$i]['project_id']'name' => $data[$i]['project_name']);
  154.       $name formatText($data[$i]['project_name']'2HTML');
  155.       
  156.       $content .= '<li><a href="' HrefMaker($link'" title="' $GLOBALS['lang']['project']['parent'' : ' formatText($name'2ATT''" class="filter_info_parent">' $name '</a></li>' .END_LINE;
  157.     }
  158.     $content .= '</ul></div>'.END_LINE;
  159.   }
  160.  
  161.   return $content;
  162. }
  163.  
  164. /**
  165.  * GetStatusName()
  166.  *
  167.  * @param  $status 
  168.  * @return $stat Status name
  169.  */
  170. function GetStatusName($status)
  171. {
  172.   switch ($status{
  173.     case 'P':
  174.       $stat 'public';
  175.       break;
  176.     case 'PA':
  177.       $stat 'archives_p';
  178.       break;
  179.     case 'AA':
  180.       $stat 'archives_a';
  181.       break;
  182.     default:
  183.       $stat 'public';
  184.   }
  185.   return $stat;
  186. }
  187.  
  188. /**
  189.  * getScheduleTable()
  190.  *
  191.  * @param string $s_date 
  192.  * @param string $es_date 
  193.  * @param string $e_date 
  194.  * @return string $content
  195.  */
  196. function getScheduleTable($s_date$es_date$e_date{
  197.  
  198.   $es_date_class 'nothing';
  199.   $e_date_class 'nothing';
  200.  
  201.   if(!isNullDate($es_date)) {
  202.     if(!isNullDate($e_date)) $es_date_class date_compare($e_date$es_date'>''warn' 'good';
  203.     else $es_date_class date_compare(date("Y-m-d")$es_date'>''bad' 'good';
  204.   }
  205.   if(!isNullDate($e_date)) {
  206.     if(!isNullDate($es_date)) $e_date_class date_compare($e_date$es_date'>''bad' 'good';
  207.     else $e_date_class 'good';
  208.   else {
  209.     if(!isNullDate($es_date)) {
  210.       $e_date_class date_compare(date("Y-m-d")$es_date'>''warn' 'nothing';
  211.     }
  212.   }
  213.  
  214.   $content  '<table class="project" cellpading="0" cellspacing="0">'.END_LINE;
  215.   $content .= '<thead>'.END_LINE;
  216.   $content .= '<tr>'.END_LINE;
  217.   $content .= '<th>'.$GLOBALS['lang']['project']['begin_date'].'</th>'.END_LINE;
  218.   $content .= '<th>'.$GLOBALS['lang']['project']['estimated_date'].'</th>'.END_LINE;
  219.   $content .= '<th>'.$GLOBALS['lang']['project']['end_date'].'</th>'.END_LINE;
  220.   $content .= '</tr>'.END_LINE;
  221.   $content .= '</thead>'.END_LINE;
  222.   $content .= '<tbody>'.END_LINE;
  223.   $content .= '<tr>'.END_LINE;
  224.   $content .= '<td>'.formatText(empty_nc($s_date)).'</td>'.END_LINE;
  225.   $content .= '<td class="'.$es_date_class.'">'.formatText(empty_nc($es_date)).'</td>'.END_LINE;
  226.   $content .= '<td class="'.$e_date_class.'">'.formatText(empty_nc($e_date)).'</td>'.END_LINE;
  227.   $content .= '</tr>'.END_LINE;
  228.   $content .= '</tbody>'.END_LINE;
  229.   $content .= '</table>'.END_LINE;
  230.   return $content;
  231. }
  232.  
  233.  
  234. ?>

Documentation generated on Sat, 08 Nov 2008 14:51:59 +0100 by phpDocumentor 1.4.1