Bonjour,
Voici le patch d'uniformisation des 2 formulaires Helpdesk (création +
édition).
j'ai enlevé le cadre coût, je renverai un patch pour l'onglet "coût"
dans la semaine.
Il restera à ajuster des petites choses suivant les chantiers (document
=> dans un onglet et SLA (champ "date d'échéance" à ajouter dans ce
form)
Cordialement,
David DURIEUX
Tel : +33 (0)4.74.04.81.34
Port : +33 (0)6.34.99.45.18
Mail : [email protected]
Site Web : http://www.siprossii.com/
SIPROSSII
847 route de Frans (Créacité)
69400 Villefranche sur Saône
FRANCE
# This patch file was generated by NetBeans IDE
# Following Index: paths are relative to: /usr/local/www/data-dist/glpi080
# This patch can be applied using context Tools: Patch action on respective folder.
# It uses platform neutral UTF-8 encoding and \n newlines.
# Above lines and this line are ignored by the patching process.
Index: front/helpdesk.php
--- front/helpdesk.php Base (BASE)
+++ front/helpdesk.php Locally Modified (Based On LOCAL)
@@ -171,7 +171,25 @@
}
glpi_header($_SERVER['HTTP_REFERER']);
} else {
- addFormTracking($itemtype,$computer,$_SERVER['PHP_SELF'],$users_id,$group,$users_id_assign,$groups_id_assign,$name,$content,$ticketscategories_id,$priority,$request_type,$hour,$minute,$date,$entity_restrict,$status,$followup);
+ $array = array(
+ "users_id" => $users_id,
+ "group" => $group,
+ "users_id_assign" => $users_id_assign,
+ "groups_id_assign" => $groups_id_assign,
+ "name" => $name,
+ "content" => $content,
+ "ticketscategories_id" => $ticketscategories_id,
+ "priority" => $priority,
+ "request_type" => $request_type,
+ "hour" => $hour,
+ "minute" => $minute,
+ "date" => $date,
+ "entity_restrict" => $entity_restrict,
+ "status" => $status,
+ "followup" => $followup);
+ showJobDetails($_SERVER['PHP_SELF'], 0,$array);
+ //addFormTracking($itemtype,$computer,$_SERVER['PHP_SELF'],$users_id,$group,$users_id_assign,$groups_id_assign,$name,$content,$ticketscategories_id,$priority,$request_type,$hour,$minute,$date,$entity_restrict,$status,$followup);
+ //showJobDetails($_SERVER['PHP_SELF'],0);
}
commonFooter();
Index: inc/tracking.function.php
--- inc/tracking.function.php Base (BASE)
+++ inc/tracking.function.php Locally Modified (Based On LOCAL)
@@ -808,7 +808,8 @@
$users_id_rand=0;
if (haveRight("update_ticket","1")){
- echo "<tr class='tab_bg_2' align='center'><td>".$LANG['job'][4].":</td>";
+ echo "<tr class='tab_bg_2' alig
+ $users_id_rand=0;n='center'><td>".$LANG['job'][4].":</td>";
echo "<td colspan='3' align='center'>";
///Check if the user have access to this entity only, or subentities too
@@ -1878,248 +1879,349 @@
-function showJobDetails ($target,$ID){
+function showJobDetails($target, $ID,$array=array()) {
global $DB,$CFG_GLPI,$LANG;
$job=new Job();
- $canupdate=haveRight("update_ticket","1");
+ $canupdate=haveRight('update_ticket','1');
$showuserlink=0;
if (haveRight('user','r')){
$showuserlink=1;
}
- if ($job->getFromDB($ID)&&haveAccessToEntity($job->fields["entities_id"])) {
+ if ($job->getFromDB($ID)&&haveAccessToEntity($job->fields['entities_id'])) {
+ } else {
+ $job->getEmpty();
+ $job->fields["users_id"] = $array["users_id"];
+ $job->fields["group"] = $array["group"];
+ $job->fields["users_id_assign"] = $array["users_id_assign"];
+ $job->fields["groups_id_assign"] = $array["groups_id_assign"];
+ $job->fields["name"] = $array["name"];
+ $job->fields["content"] = $array["content"];
+ $job->fields["ticketscategories_id"] = $array["ticketscategories_id"];
+ $job->fields["priority"] = $array["priority"];
+ $job->fields["request_type"] = $array["request_type"];
+ $job->fields["hour"] = $array["hour"];
+ $job->fields["minute"] = $array["minute"];
+ $job->fields["date"] = $array["date"];
+ $job->fields["entity_restrict"] = $array["entity_restrict"];
+ $job->fields["status"] = $array["status"];
+ $job->fields["followup"] = $array["followup"];
+ }
if (!$job->canView()){
return false;
}
- $canupdate_descr=$canupdate||($job->numberOfFollowups()==0&&$job->fields["users_id"]==$_SESSION["glpiID"]);
+ $canupdate_descr=$canupdate||($job->numberOfFollowups()==0&&$job->fields['users_id']==$_SESSION['glpiID']);
$item=new CommonItem();
- $item->getFromDB($job->fields["itemtype"],$job->fields["items_id"]);
+ $item->getFromDB($job->fields['itemtype'],$job->fields['items_id']);
- //echo "<div class='center'>";
- echo "<form method='post' name='form_ticket' action='$target' enctype=\"multipart/form-data\">\n";
- echo "<div class='center' id='tabsbody'>";
+ echo '<form method="post" name="form_ticket" action="'.$target.'" enctype="multipart/form-data">';
+ echo '<div class="center" id="tabsbody">';
echo "<table class='tab_cadre_fixe' cellpadding='5'>";
+ if ($ID == '0') {
+ echo '<tr>';
+ echo '<th colspan="4">';
+ echo $LANG['job'][13];
+ echo '</th>';
+ echo '</tr>';
+ }
// OPtional line
if (isMultiEntitiesMode()){
- echo "<tr><th colspan='3'>";
- echo getDropdownName("glpi_entities",$job->fields["entities_id"]);
- echo "</th></tr>";
+ echo '<tr>';
+ echo '<th colspan="4">';
+ echo getDropdownName('glpi_entities',$job->fields['entities_id']);
+ echo '</th>';
+ echo '</tr>';
}
- // First line
- echo "<tr><th colspan='2' style='text-align:left;'><table><tr><td><span class='tracking_small'>";
+ echo "<tr>";
+ echo "<th style='text-align:left;' colspan='2' width='50%'>";
+ echo "<table>";
+
+ echo "<tr>";
+ echo "<td>";
+ echo "<span class='tracking_small'>";
echo $LANG['joblist'][11].": </span></td><td>";
+ if ($ID == "0") {
+ showDateTimeFormItem("date",date("Y-m-d H:i:s"),1);
+ } else {
showDateTimeFormItem("date",$job->fields["date"],1,false,$canupdate);
+ }
+ echo "</td>";
+ if ($ID > 0) {
+ echo "<td>";
+ echo "<span class='tracking_small'> ".$LANG['job'][2]." </span>";
+ echo "</td>";
- echo "</td><td><span class='tracking_small'> ".$LANG['job'][2]." </span></td><td>";
+ echo "<td>";
if ($canupdate){
dropdownAllUsers("users_id_recipient",$job->fields["users_id_recipient"],1,$job->fields["entities_id"]);
} else {
echo getUserName($job->fields["users_id_recipient"],$showuserlink);
}
+ echo "</td>";
+ }
+ echo "</tr>";
+ echo "</table>";
- echo "</td></tr></table>";
-
if (strstr($job->fields["status"],"old_")){
- echo "<table><tr><td>";
- echo "<span class='tracking_small'>".$LANG['joblist'][12].": </td><td>";
+ echo "<table>";
+ echo "<tr>";
+ echo "<td>";
+ echo "<span class='tracking_small'>".$LANG['joblist'][12].": ";
+ echo "</td>";
+ echo "<td>";
showDateTimeFormItem("closedate",$job->fields["closedate"],1,false,$canupdate);
- echo "</span></td></tr></table>\n";
- }
+ echo "</span>";
+ echo "</td>";
+ echo "</tr>";
+ echo "</table>\n";
+ }
echo "</th>";
- echo "<th><span class='tracking_small'>".$LANG['common'][26].":<br>";
+ echo "<th colspan='2' width='50%'>";
+ echo "<span class='tracking_small'>".$LANG['common'][26].":<br>";
echo convDateTime($job->fields["date_mod"])."\n";
+ echo "</span>";
+ echo "</th>";
+ echo "</tr>";
- echo "</span></th></tr>";
- echo "<tr class='tab_bg_2'>";
- // Premier Colonne
- echo "<td class='top' width='27%'>";
- echo "<table cellpadding='3'>";
- echo "<tr class='tab_bg_2'><td class='left'>";
- echo $LANG['joblist'][0].":</td><td>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left' width='60'>";
+ echo $LANG['joblist'][0].":";
+ echo "</td>";
+ echo "<td>";
if ($canupdate){
dropdownStatus("status",$job->fields["status"]);
} else {
echo getStatusName($job->fields["status"]);
}
- echo "</td></tr>";
+ echo "</td>";
+ echo "<th class='center' colspan='2'><strong>";
+ echo $LANG['job'][4].":";
+ echo "</strong></th>";
+ echo "</tr>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left'>";
+ echo $LANG['joblist'][29].":";
+ echo "</td>";
+ echo "<td>";
+ // TODO : PUT Urgence
+ echo "</td>";
+ echo "<td class='left'>";
+ if (($ID == "0") AND (haveRight("update_ticket","1"))) {
+ echo $LANG['job'][4].":";
+ echo "</td>";
+ echo "<td>";
- echo "<tr><td class='left'>";
- echo $LANG['joblist'][2].":</td><td>";
- if ($canupdate)
- dropdownPriority("priority",$job->fields["priority"]);
- else echo getPriorityName($job->fields["priority"]);
- echo "</td></tr>";
+ ///Check if the user have access to this entity only, or subentities too
+ if (haveAccessToEntity($_SESSION["glpiactive_entity"],true)){
+ $entities = getSonsOf("glpi_entities",$_SESSION["glpiactive_entity"]);
+ } else {
+ $entities = $_SESSION["glpiactive_entity"];
+ }
- echo "<tr><td class='left'>";
- echo $LANG['common'][36].":</td><td >";
- if ($canupdate)
- dropdownValue("glpi_ticketscategories","ticketscategories_id",$job->fields["ticketscategories_id"]);
- else echo getDropdownName("glpi_ticketscategories",$job->fields["ticketscategories_id"]);
- echo "</td></tr>";
+ //List all users in the active entity (and all it's sub-entities if needed)
+ $users_id_rand=dropdownAllUsers("users_id",$array["users_id"],1,$entities,1);
- echo "<tr><td class='center' colspan='2'><strong>";
- echo $LANG['job'][4].":</strong></td></tr>";
+ //Get all the user's entities
+ $all_entities = getUserEntities($array["users_id"], true);
+ $values = array();
- echo "<tr><td class='left'>";
- echo $LANG['common'][34].":</td><td>";
- if ($canupdate){
+ //For each user's entity, check if the technician which creates the ticket have access to it
+ foreach ($all_entities as $tmp => $ID_entity) {
+ if (haveAccessToEntity($ID_entity)) {
+ $values[]=$ID_entity;
+ }
+ }
+
+ $count = count($values);
+
+ if ($count>0 && !in_array($array["entity_restrict"],$values)) {
+ // If entity is not in the list of user's entities,
+ // then use as default value the first value of the user's entites list
+ $entity_restrict = $values[0];
+ }
+
+ //If user have access to more than one entity, then display a combobox
+ if ($count > 1) {
+ $rand = dropdownValue("glpi_entities", "entities_id", $array["entity_restrict"], 1, $values,'',array(),1);
+ } else {
+ echo "<input type='hidden' name='entities_id' value='".$array["entity_restrict"]."'>";
+ }
+ } else if ($canupdate){
+ echo $LANG['common'][34].":";
+ echo "</td>";
+ echo "<td>";
dropdownAllUsers("users_id",$job->fields["users_id"],1,$job->fields["entities_id"]);
} else {
+ echo $LANG['common'][34].":";
+ echo "</td>";
+ echo "<td>";
echo getUserName($job->fields["users_id"],$showuserlink);
}
- echo "</td></tr>";
+ echo "</td>";
+ echo "</tr>";
- echo "<tr><td class='left'>";
- echo $LANG['common'][35].":</td><td>";
- if ($canupdate){
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left'>";
+ echo $LANG['joblist'][30].":";
+ echo "</td>";
+ echo "<td>";
+ // TODO : PUT Impact
+ echo "</td>";
+ echo "<td class='left'>";
+ echo $LANG['common'][35].":";
+ echo "</td>";
+ echo "<td>";
+ if ($canupdate) {
dropdownValue("glpi_groups","groups_id",$job->fields["groups_id"],1,$job->fields["entities_id"]);
} else {
echo getDropdownName("glpi_groups",$job->fields["groups_id"]);
}
- echo "</td></tr>";
+ echo "</td>";
+ echo "</tr>";
-
- echo "</table></td>";
-
- // Deuxieme colonne
- echo "<td class='top' width='33%'>";
-
- echo "<table>";
-
- echo "<tr><td class='left'>";
- echo $LANG['job'][44].":</td><td>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left'>";
+ echo $LANG['joblist'][2].":";
+ echo "</td>";
+ echo "<td>";
if ($canupdate)
- dropdownRequestType("request_type",$job->fields["request_type"]);
- else echo getRequestTypeName($job->fields["request_type"]);
- echo "</td></tr>";
+ dropdownPriority("priority",$job->fields["priority"]);
+ else echo getPriorityName($job->fields["priority"]);
+ echo "</td>";
+ echo "<th class='center' colspan='2'><strong>";
+ echo $LANG['job'][5].":";
+ echo "</strong></th>";
+ echo "</tr>";
- echo "<tr><td class='left'>";
- echo $LANG['common'][1].":</td><td>";
- if ($canupdate){
- if (haveTypeRight($job->fields["itemtype"],'r')){
- echo $item->getType()." - ".$item->getLink(1);
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left'>";
+ echo $LANG['common'][36].":";
+ echo "</td>";
+ echo "<td >";
+ if ($canupdate) {
+ dropdownValue("glpi_ticketscategories","ticketscategories_id",$job->fields["ticketscategories_id"]);
} else {
- echo $item->getType()." ".$item->getNameID();
+ echo getDropdownName("glpi_ticketscategories",$job->fields["ticketscategories_id"]);
}
- dropdownTrackingAllDevices("itemtype",$job->fields["itemtype"],1,$job->fields["entities_id"]);
- }
- else {
- echo $item->getType()." ".$item->getNameID();
- }
-
- echo "</td></tr>";
-
-
- echo "<tr><td class='center' colspan='2'><strong>";
- echo $LANG['job'][5].":</strong></td></tr>";
-
- if (haveRight("assign_ticket","1")){
- echo "<tr><td class='left'>";
- echo $LANG['job'][6].":</td><td>";
+ echo "</td>";
+ if (haveRight("assign_ticket","1")) {
+ echo "<td class='left'>";
+ echo $LANG['job'][6].":";
+ echo "</td>";
+ echo "<td>";
dropdownUsers("users_id_assign",$job->fields["users_id_assign"],"own_ticket",0,1,$job->fields["entities_id"]);
- echo "</td></tr>";
+ echo "</td>";
} else if (haveRight("steal_ticket","1")) {
- echo "<tr><td class='right'>";
- echo $LANG['job'][6].":</td><td>";
+ echo "<td class='right'>";
+ echo $LANG['job'][6].":";
+ echo "</td>";
+ echo "<td>";
dropdownUsers("users_id_assign",$job->fields["users_id_assign"],"id",0,1,$job->fields["entities_id"]);
- echo "</td></tr>";
- } else if (haveRight("own_ticket","1") && $job->fields["users_id_assign"]==0){
- echo "<tr><td class='right'>";
- echo $LANG['job'][6].":</td><td>";
+ echo "</td>";
+ } else if (haveRight("own_ticket","1") && $job->fields["users_id_assign"]==0) {
+ echo "<td class='right'>";
+ echo $LANG['job'][6].":";
+ echo "</td>";
+ echo "<td>";
dropdownUsers("users_id_assign",$job->fields["users_id_assign"],"id",0,1,$job->fields["entities_id"]);
- echo "</td></tr>";
+ echo "</td>";
} else {
- echo "<tr><td class='left'>";
- echo $LANG['job'][6].":</td><td>";
+ echo "<td class='left'>";
+ echo $LANG['job'][6].":";
+ echo "</td>";
+ echo "<td>";
echo getUserName($job->fields["users_id_assign"],$showuserlink);
- echo "</td></tr>";
+ echo "</td>";
}
+ echo "</tr>";
- if (haveRight("assign_ticket","1")){
- echo "<tr><td class='left'>";
- echo $LANG['common'][35].":</td><td>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left'>";
+ echo $LANG['job'][44].":";
+ echo "</td>";
+ echo "<td>";
+ if ($canupdate) {
+ dropdownRequestType("request_type",$job->fields["request_type"]);
+ } else {
+ echo getRequestTypeName($job->fields["request_type"]);
+ }
+ echo "</td>";
+ if (haveRight("assign_ticket","1")) {
+ echo "<td class='left'>";
+ echo $LANG['common'][35].":";
+ echo "</td>";
+ echo "<td>";
dropdownValue("glpi_groups","groups_id_assign",$job->fields["groups_id_assign"],1,$job->fields["entities_id"]);
- echo "</td></tr>";
- echo "<tr><td class='left'>";
- echo $LANG['financial'][26].":</td><td>";
- dropdownValue("glpi_suppliers","suppliers_id_assign",$job->fields["suppliers_id_assign"],1,$job->fields["entities_id"]);
- echo "</td></tr>";
+ echo "</td>";
} else {
- echo "<tr><td class='left'>";
- echo $LANG['common'][35].":</td><td>";
+ echo "<td class='left'>";
+ echo $LANG['common'][35].":";
+ echo "</td>";
+ echo "<td>";
echo getDropdownName("glpi_groups",$job->fields["groups_id_assign"]);
- echo "</td></tr>";
- echo "<tr><td class='left'>";
- echo $LANG['financial'][26].":</td><td>";
- echo getDropdownName("glpi_suppliers",$job->fields["suppliers_id_assign"]);
- echo "</td></tr>";
+ echo "</td>";
}
- echo "</table>";
+ echo "</tr>";
-
+ echo "<tr class='tab_bg_1'>";
+ echo "<td class='left'>";
+ echo $LANG['common'][1].":";
echo "</td>";
+ echo "<td>";
+ if ($canupdate) {
+ if (haveTypeRight($job->fields["itemtype"],'r')){
+ echo $item->getType()." - ".$item->getLink(1);
+ } else {
+ echo $item->getType()." ".$item->getNameID();
+ }
+ dropdownTrackingAllDevices("itemtype",$job->fields["itemtype"],1,$job->fields["entities_id"]);
+ } else {
+ echo $item->getType()." ".$item->getNameID();
+ }
+ echo "</td>";
- // Troisieme Colonne
- echo "<td class='top' width='20%'>";
- echo "<table border='0'>";
-
- echo "<tr><td class='left'>";
- echo $LANG['job'][20].":</td><td>";
- echo "<strong>".getRealtime($job->fields["realtime"])."</strong>";
- echo "</td></tr>";
-
- if(haveRight("contract","r")){ // admin = oui on affiche les couts liés à l'interventions
-
- echo "<tr><td class='left'>";
- // cout
- echo $LANG['job'][40].": ";
- echo "</td><td><input type='text' maxlength='100' size='15' name='cost_time' value=\"".formatNumber($job->fields["cost_time"],true)."\"></td></tr>";
-
- echo "<tr><td class='left'>";
-
- echo $LANG['job'][41].": ";
- echo "</td><td><input type='text' maxlength='100' size='15' name='cost_fixed' value=\"".formatNumber($job->fields["cost_fixed"],true)."\">";
-
- echo "</td></tr>\n";
-
- echo "<tr><td class='left'>";
-
- echo $LANG['job'][42].": ";
- echo "</td><td><input type='text' maxlength='100' size='15' name='cost_material' value=\"".formatNumber($job->fields["cost_material"],true)."\">";
-
- echo "</td></tr>\n";
-
- echo "<tr><td class='left'>";
-
- echo $LANG['job'][43].": ";
- echo "</td><td><strong>";
- echo trackingTotalCost($job->fields["realtime"],$job->fields["cost_time"],$job->fields["cost_fixed"],$job->fields["cost_material"]);
- echo "</strong></td></tr>\n";
+ if ((haveRight("assign_ticket","1")) AND ($ID != "0")) {
+ echo "<td class='left'>";
+ echo $LANG['financial'][26].":";
+ echo "</td>";
+ echo "<td>";
+ dropdownValue("glpi_suppliers","suppliers_id_assign",$job->fields["suppliers_id_assign"],1,$job->fields["entities_id"]);
+ echo "</td>";
+ } else {
+ if ($ID != "0") {
+ echo "<td class='left'>";
+ echo $LANG['financial'][26].":";
+ echo "</td>";
+ echo "<td>";
+ echo getDropdownName("glpi_suppliers",$job->fields["suppliers_id_assign"]);
+ echo "</td>";
+ } else {
+ echo "<td colspan='2'>";
+ echo "</td>";
}
- echo '</table>';
- echo "</td></tr>";
+ }
+ echo "</tr>";
-
- // Deuxieme Ligne
- // Colonnes 1 et 2
- echo "<tr class='tab_bg_1'><td colspan='2'>";
- echo "<table width='99%' >";
- echo "<tr class='tab_bg_2'><th colspan='2'>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<th>";
+ echo $LANG['common'][57]." : ";
+ echo "</th>";
+ echo "<th>";
if ($canupdate_descr){
$rand=mt_rand();
echo "<script type='text/javascript' >\n";
echo "function showName$rand(){\n";
echo "Ext.get('name$rand').setDisplayed('none');";
$params=array('maxlength'=>250,
- 'size'=>80,
+ 'size'=>50,
'name'=>'name',
'data'=>rawurlencode($job->fields["name"]),
);
@@ -2136,6 +2238,11 @@
echo "<div id='viewname$rand'>\n";
echo "</div>\n";
+ if ($ID == 0) {
+ echo "<script type='text/javascript' >\n
+ showName$rand();
+ </script>";
+ }
//echo "<input type='text' maxlength='250' size='80' name='name' value=\"".$job->fields["name"]."\">";
} else {
if (empty($job->fields["name"])){
@@ -2144,10 +2251,17 @@
echo $job->fields["name"];
}
}
- echo "</th></tr>";
- echo "<tr class='tab_bg_2'><td width='15%'>".$LANG['joblist'][6]."</td>";
- echo "<td width='85%' class='left'>";
+ echo "</th>";
+ echo "<th colspan='2'>";
+ echo $LANG['title'][10];
+ echo "</th>";
+ echo "</tr>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<td rowspan='5'>";
+ echo $LANG['joblist'][6];
+ echo "</td>";
+ echo "<td class='left' rowspan='5'>";
if ($canupdate_descr){ // Admin =oui on autorise la modification de la description
$rand=mt_rand();
echo "<script type='text/javascript' >\n";
@@ -2155,7 +2269,7 @@
echo "Ext.get('desc$rand').setDisplayed('none');";
$params=array('rows'=>6,
- 'cols'=>60,
+ 'cols'=>50,
'name'=>'content',
'data'=>rawurlencode($job->fields["content"]),
);
@@ -2172,63 +2286,77 @@
echo "<div id='viewdesc$rand'>\n";
echo "</div>\n";
- } else echo nl2br($job->fields["content"]);
-
+ if ($ID == 0) {
+ echo "<script type='text/javascript' >\n
+ showDesc$rand();
+ </script>";
+ }
+ } else {
+ echo nl2br($job->fields["content"]);
+ }
echo "</td>";
- echo "</tr>";
- echo "</table>";
- echo "</td>";
- // Colonne 3
-
- echo "<td class='top'>";
-
// Mailing ? Y or no ?
-
if ($CFG_GLPI["use_mailing"]==1){
- echo "<table><tr><td class='right'>";
- echo $LANG['job'][19].":</td><td>";
+ echo "<td class='left'>";
+ echo $LANG['job'][19].":";
+ echo "</td>";
+ echo "<td>";
if ($canupdate){
dropdownYesNo('use_email_notification',$job->fields["use_email_notification"]);
} else {
if ($job->fields["use_email_notification"]) echo $LANG['choice'][1];
else $LANG['choice'][0];
}
- echo "</td></tr>";
+ } else {
+ echo "<td colspan='2'>";
+ }
+ echo "</td>";
+ echo "</tr>";
- echo "<tr><td class='right'>";
+ echo "<tr class='tab_bg_1'>";
+ // Mailing ? Y or no ?
+ if ($CFG_GLPI["use_mailing"] == 1) {
+ echo "<td class='left'>";
echo $LANG['joblist'][27].":";
- echo "</td><td>";
- if ($canupdate){
- autocompletionTextField("user_email","glpi_tickets","user_email",$job->fields["user_email"],15,$job->fields["entities_id"]);
-
- if (!empty($job->fields["user_email"]))
+ echo "</td>";
+ echo "<td>";
+ if ($canupdate) {
+ autocompletionTextField("user_email","glpi_tickets","user_email",$job->fields["user_email"],35,$job->fields["entities_id"]);
+ if (!empty($job->fields["user_email"])) {
echo "<a href='mailto:".$job->fields["user_email"]."'><img src='".$CFG_GLPI["root_doc"]."/pics/edit.png' alt='Mail'></a>";
- } else if (!empty($job->fields["user_email"]))
+ }
+ } else if (!empty($job->fields["user_email"])) {
echo "<a href='mailto:".$job->fields["user_email"]."'>".$job->fields["user_email"]."</a>";
- else echo " ";
- echo "</td></tr></table>";
-
-
+ } else {
+ echo " ";
}
+ echo "</td>";
+ } else {
+ echo "<td colspan='2'>";
+ }
+ echo "</td>";
+ echo "</tr>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<th colspan='2'>";
+ echo $LANG['document'][21];
+ echo "</th>";
+ echo "</tr>";
+ echo "<tr class='tab_bg_1'>";
+ echo "<td valign='top' colspan='2'>";
-
// File associated ?
$query2 = "SELECT *
FROM glpi_documents_items
WHERE glpi_documents_items.items_id = '".$job->fields["id"]."' AND glpi_documents_items.itemtype = '".TRACKING_TYPE."' ";
$result2 = $DB->query($query2);
$numfiles=$DB->numrows($result2);
- echo "<table width='100%'><tr><th colspan='2'>".$LANG['document'][21]."</th></tr>";
-
if ($numfiles>0){
$doc=new Document;
while ($data=$DB->fetch_array($result2)){
$doc->getFromDB($data["documents_id"]);
- echo "<tr><td>";
-
if (empty($doc->fields["filename"])){
if (haveRight("document","r")){
echo "<a href='".$CFG_GLPI["root_doc"]."/front/document.form.php?id=".$data["documents_id"]."'>".$doc->fields["name"]."</a>";
@@ -2240,32 +2368,42 @@
}
if (haveRight("document","w"))
echo "<a href='".$CFG_GLPI["root_doc"]."/front/document.form.php?deleteitem=delete&id=".$data["id"]."&devtype=".TRACKING_TYPE."&devid=".$ID."&docid=".$data["documents_id"]."'><img src='".$CFG_GLPI["root_doc"]."/pics/delete.png' alt='".$LANG['buttons'][6]."'></a>";
- echo "</td></tr>";
+
}
}
+ echo "</td>";
+ echo "</tr>";
+
+ echo "<tr class='tab_bg_1'>";
+ echo "<td valign='top' colspan='2'>";
+ // File associated ?
if ($canupdate||haveRight("comment_all_ticket","1")
||(haveRight("comment_ticket","1")&&!strstr($job->fields["status"],'old_'))
){
- echo "<tr><td colspan='2'>";
echo "<input type='file' name='filename' size='20'>";
if ($canupdate&&haveRight("document","r")){
echo "<br>";
dropdownDocument("document",$job->fields["entities_id"]);
}
- echo "</td></tr>";
}
- echo "</table>";
+ echo "</td>";
+ echo "</tr>";
- echo "</td></tr>";
- // Troisi�e Ligne
+
+
if ($canupdate||$canupdate_descr||haveRight("comment_all_ticket","1")
||(haveRight("comment_ticket","1")&&!strstr($job->fields["status"],'old_'))
||haveRight("assign_ticket","1")||haveRight("steal_ticket","1")
){
- echo "<tr class='tab_bg_1'><td colspan='3' class='center'>";
- echo "<input type='submit' class='submit' name='update' value='".$LANG['buttons'][14]."'></td></tr>";
+ echo "<tr class='tab_bg_1'><td colspan='4' class='center'>";
+ if ($ID == "0") {
+ echo "<input type='submit' name='add' value=\"".$LANG['buttons'][2]."\" class='submit'>";
+ } else {
+ echo "<input type='submit' class='submit' name='update' value='".$LANG['buttons'][14]."'>";
}
+ echo "</td></tr>";
+ }
echo "</table>";
echo "<input type='hidden' name='id' value='$ID'>";
@@ -2273,11 +2411,7 @@
echo "</form>";
return true;
- } else {
- echo "<div class='center'><strong>".$LANG['common'][54]."</strong></div>";
- return false;
}
-}
function showFollowupsSummary($tID){
global $DB,$LANG,$CFG_GLPI;
@@ -2870,4 +3004,82 @@
return false;
}
+
+function showJobCost($target,$ID) {
+ global $DB,$LANG;
+
+ $job=new Job();
+ $job->getFromDB($ID)&&haveAccessToEntity($job->fields["entities_id"]);
+
+ echo "<form method='post' name='form_ticket_cost' action='$target' >\n";
+ echo "<div class='center' id='tabsbody'>";
+ echo "<table class='tab_cadre_fixe' cellpadding='5'>";
+
+ echo "<tr><th colspan='2'>";
+ echo $LANG['job'][47];
+ echo "</th></tr>";
+
+ echo "<tr class='tab_bg_2'>";
+ echo "<td class='left'>";
+ echo $LANG['job'][20].":";
+ echo "</td>";
+
+ echo "<td>";
+ echo "<strong>".getRealtime($job->fields["realtime"])."</strong>";
+ echo "</td>";
+ echo "</tr>";
+
+ if(haveRight("contract","r")){ // admin = oui on affiche les couts liés à l'interventions
+ echo "<tr class='tab_bg_2'>";
+ echo "<td class='left'>";
+ echo $LANG['job'][40].": ";
+ echo "</td>";
+
+ echo "<td>";
+ echo "<input type='text' maxlength='100' size='15' name='cost_time' value=\"".formatNumber($job->fields["cost_time"],true)."\">";
+ echo "</td>";
+ echo "</tr>";
+
+ echo "<tr class='tab_bg_2'>";
+ echo "<td class='left'>";
+ echo $LANG['job'][41].": ";
+ echo "</td>";
+
+ echo "<td>";
+ echo "<input type='text' maxlength='100' size='15' name='cost_fixed' value=\"".formatNumber($job->fields["cost_fixed"],true)."\">";
+ echo "</td>";
+ echo "</tr>\n";
+
+ echo "<tr class='tab_bg_2'>";
+ echo "<td class='left'>";
+ echo $LANG['job'][42].": ";
+ echo "</td>";
+
+ echo "<td>";
+ echo "<input type='text' maxlength='100' size='15' name='cost_material' value=\"".formatNumber($job->fields["cost_material"],true)."\">";
+ echo "</td>";
+ echo "</tr>\n";
+
+ echo "<tr class='tab_bg_2'>";
+ echo "<td class='left'>";
+ echo $LANG['job'][43].": ";
+ echo "</td>";
+
+ echo "<td><strong>";
+ echo trackingTotalCost($job->fields["realtime"],$job->fields["cost_time"],$job->fields["cost_fixed"],$job->fields["cost_material"]);
+ echo "</strong></td>";
+ echo "</tr>\n";
+ }
+
+ echo "</table>";
+
+
+
+
+
+
+
+
+}
+
?>
Index: locales/fr_FR.php
--- locales/fr_FR.php Base (BASE)
+++ locales/fr_FR.php Locally Modified (Based On LOCAL)
@@ -743,25 +744,30 @@
$LANG['joblist'][26]="En attente";
$LANG['joblist'][27]="Email pour le suivi";
$LANG['joblist'][28]="Tickets sur les éléments liés";
+$LANG['joblist'][29]="Urgence";
+$LANG['joblist'][30]="Impact";
+$LANG['joblist'][31]="Date d'échéance";
+$LANG['jobresolution'][1]="Résolution";
+
$LANG['knowbase'][1]="Foire aux questions";
$LANG['knowbase'][3]="Question";
$LANG['knowbase'][4]="Réponse";
$LANG['knowbase'][5]="Placer cet item dans la FAQ publique";
$LANG['knowbase'][6]="Sélectionner une catégorie pour cet item :";
$LANG['knowbase'][7]="Retirer cet item de la FAQ publique";
$LANG['knowbase'][8]="Modifier cet item";
$LANG['knowbase'][9]="Supprimer cet item";
$LANG['knowbase'][10]="Cet item fait partie de la FAQ publique";
$LANG['knowbase'][11]="Cet item ne fait pas partie de la FAQ publique";
$LANG['knowbase'][12]="Racine";
$LANG['knowbase'][13]="Nom de la catégorie";
$LANG['knowbase'][14]="Sujet";
$LANG['knowbase'][15]="Contenu";
$LANG['knowbase'][24]="Accéder à la Foire aux questions";
$LANG['knowbase'][26]="Vues";
$LANG['knowbase'][27]="Le";
$LANG['knowbase'][29]="Sujets les plus récents";
$LANG['knowbase'][30]="Sujets les plus populaires";
$LANG['ldap'][0]="Import en masse d'utilisateurs depuis un annuaire";
_______________________________________________
Glpi-dev mailing list
[email protected]
https://mail.gna.org/listinfo/glpi-dev