Skip to content
Snippets Groups Projects
Commit 4ac99477 authored by Laurent Destailleur's avatar Laurent Destailleur
Browse files

Fix: project info are not lost when submiting actions on tasks

parent a15ab9c4
No related branches found
No related tags found
No related merge requests found
......@@ -66,7 +66,7 @@ if ($action == 'addcontact' && $user->rights->projet->creer)
if ($result >= 0)
{
Header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id);
Header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id.($withproject?'&withproject=1':''));
exit;
}
else
......@@ -104,7 +104,7 @@ if ($action == 'deleteline' && $user->rights->projet->creer)
if ($result >= 0)
{
Header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id);
Header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id.($withproject?'&withproject=1':''));
exit;
}
else
......@@ -125,7 +125,8 @@ if (! empty($project_ref) && ! empty($withproject))
}
else
{
Header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.(empty($mode)?'':'&mode='.$mode));
Header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.($withproject?'&withproject=1':'').(empty($mode)?'':'&mode='.$mode));
exit;
}
}
}
......@@ -282,6 +283,7 @@ if ($id > 0 || ! empty($ref))
print '<input type="hidden" name="action" value="addcontact">';
print '<input type="hidden" name="source" value="internal">';
print '<input type="hidden" name="id" value="'.$id.'">';
print '<input type="hidden" name="withproject" value="'.$withproject.'">';
// Ligne ajout pour contact interne
print "<tr $bc[$var]>";
......@@ -418,7 +420,7 @@ if ($id > 0 || ! empty($ref))
// Statut
print '<td align="center">';
// Activation desativation du contact
if ($object->statut >= 0) print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;action=swapstatut&amp;ligne='.$tab[$i]['rowid'].'">';
if ($object->statut >= 0) print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=swapstatut&ligne='.$tab[$i]['rowid'].($withproject?'&withproject=1':'').'">';
print $contactstatic->LibStatut($tab[$i]['status'],3);
if ($object->statut >= 0) print '</a>';
print '</td>';
......@@ -428,7 +430,7 @@ if ($id > 0 || ! empty($ref))
if ($user->rights->projet->creer)
{
print '&nbsp;';
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;action=deleteline&amp;lineid='.$tab[$i]['rowid'].'">';
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=deleteline&lineid='.$tab[$i]['rowid'].($withproject?'&withproject=1':'').'">';
print img_delete();
print '</a>';
}
......@@ -449,5 +451,6 @@ if ($id > 0 || ! empty($ref))
llxFooter();
$db->close();
?>
......@@ -67,9 +67,9 @@ if ($id > 0 || ! empty($ref))
if ($object->fetch($id,$ref) > 0)
{
$projectstatic->fetch($object->fk_project);
if (! empty($projectstatic->socid)) $projectstatic->societe->fetch($projectstatic->socid);
$upload_dir = $conf->projet->dir_output.'/'.dol_sanitizeFileName($projectstatic->ref).'/'.dol_sanitizeFileName($object->ref);
}
else
......@@ -135,7 +135,8 @@ if (! empty($project_ref) && ! empty($withproject))
}
else
{
Header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.(empty($mode)?'':'&mode='.$mode));
Header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.($withproject?'&withproject=1':'').(empty($mode)?'':'&mode='.$mode));
exit;
}
}
}
......@@ -152,20 +153,20 @@ llxHeader('',$langs->trans('Project'));
if ($object->id > 0)
{
if (! empty($projectstatic->socid)) $projectstatic->societe->fetch($projectstatic->socid);
$userWrite = $projectstatic->restrictedProjectArea($user,'write');
if (! empty($withproject))
{
// Tabs for project
$tab='tasks';
$head=project_prepare_head($projectstatic);
dol_fiche_head($head, $tab, $langs->trans("Project"),0,($projectstatic->public?'projectpub':'project'));
$param=($mode=='mine'?'&mode=mine':'');
print '<table class="border" width="100%">';
// Ref
print '<tr><td width="30%">';
print $langs->trans("Ref");
......@@ -178,37 +179,37 @@ if ($object->id > 0)
}
print $form->showrefnav($projectstatic,'project_ref','',1,'ref','ref','',$param.'&withproject=1');
print '</td></tr>';
print '<tr><td>'.$langs->trans("Label").'</td><td>'.$projectstatic->title.'</td></tr>';
print '<tr><td>'.$langs->trans("Company").'</td><td>';
if (! empty($projectstatic->societe->id)) print $projectstatic->societe->getNomUrl(1);
else print '&nbsp;';
print '</td>';
print '</tr>';
// Visibility
print '<tr><td>'.$langs->trans("Visibility").'</td><td>';
if ($projectstatic->public) print $langs->trans('SharedProject');
else print $langs->trans('PrivateProject');
print '</td></tr>';
// Statut
print '<tr><td>'.$langs->trans("Status").'</td><td>'.$projectstatic->getLibStatut(4).'</td></tr>';
print '</table>';
dol_fiche_end();
print '<br>';
}
$head = task_prepare_head($object);
dol_fiche_head($head, 'task_document', $langs->trans("Task"), 0, 'projecttask');
$param=(GETPOST('withproject')?'&withproject=1':'');
$linkback=GETPOST('withproject')?'<a href="'.DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.'">'.$langs->trans("BackToList").'</a>':'';
// Files list constructor
$filearray=dol_dir_list($upload_dir,"files",0,'','\.meta$',$sortfield,(strtolower($sortorder)=='desc'?SORT_DESC:SORT_ASC),1);
$totalsize=0;
......@@ -216,9 +217,9 @@ if ($object->id > 0)
{
$totalsize+=$file['size'];
}
print '<table class="border" width="100%">';
// Ref
print '<tr><td width="30%">';
print $langs->trans("Ref");
......@@ -232,42 +233,42 @@ if ($object->id > 0)
print $form->showrefnav($object,'id',$linkback,1,'rowid','ref','',$param);
print '</td>';
print '</tr>';
// Label
print '<tr><td>'.$langs->trans("Label").'</td><td colspan="3">'.$object->label.'</td></tr>';
// Project
if (empty($withproject))
{
print '<tr><td>'.$langs->trans("Project").'</td><td colspan="3">';
print $projectstatic->getNomUrl(1);
print '</td></tr>';
// Third party
print '<td>'.$langs->trans("Company").'</td><td colspan="3">';
if ($projectstatic->societe->id) print $projectstatic->societe->getNomUrl(1);
else print '&nbsp;';
print '</td></tr>';
}
// Files infos
print '<tr><td>'.$langs->trans("NbOfAttachedFiles").'</td><td colspan="3">'.count($filearray).'</td></tr>';
print '<tr><td>'.$langs->trans("TotalSizeOfAttachedFiles").'</td><td colspan="3">'.$totalsize.' '.$langs->trans("bytes").'</td></tr>';
print "</table>\n";
dol_fiche_end();
print '<br>';
dol_htmloutput_mesg($mesg);
// Affiche formulaire upload
$formfile=new FormFile($db);
$formfile->form_attach_new_file(DOL_URL_ROOT.'/projet/tasks/document.php?id='.$object->id,'',0,0,$user->rights->projet->creer);
$formfile->form_attach_new_file(DOL_URL_ROOT.'/projet/tasks/document.php?id='.$object->id.($withproject?'&withproject=1':''),'',0,0,$user->rights->projet->creer);
// List of document
$param='&id='.$object->id;
$formfile->list_of_documents($filearray,$object,'projet',$param,0,dol_sanitizeFileName($projectstatic->ref).'/'.dol_sanitizeFileName($object->ref).'/');
......@@ -280,5 +281,6 @@ else
llxFooter();
$db->close();
?>
......@@ -51,6 +51,7 @@ $projectstatic = new Project($db);
/*
* Actions
*/
if ($action == 'addtimespent' && $user->rights->projet->creer)
{
$error=0;
......@@ -155,7 +156,8 @@ if (! empty($project_ref) && ! empty($withproject))
}
else
{
Header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.(empty($mode)?'':'&mode='.$mode));
Header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.($withproject?'&withproject=1':'').(empty($mode)?'':'&mode='.$mode));
exit;
}
}
}
......@@ -236,7 +238,7 @@ if ($id > 0 || ! empty($ref))
if ($action == 'deleteline')
{
$ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$object->id.'&lineid='.$_GET["lineid"],$langs->trans("DeleteATimeSpent"),$langs->trans("ConfirmDeleteATimeSpent"),"confirm_delete",'','',1);
$ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$object->id.'&lineid='.$_GET["lineid"].($withproject?'&withproject=1':''),$langs->trans("DeleteATimeSpent"),$langs->trans("ConfirmDeleteATimeSpent"),"confirm_delete",'','',1);
if ($ret == 'html') print '<br>';
}
......@@ -291,6 +293,7 @@ if ($id > 0 || ! empty($ref))
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
print '<input type="hidden" name="action" value="addtimespent">';
print '<input type="hidden" name="id" value="'.$object->id.'">';
print '<input type="hidden" name="withproject" value="'.$withproject.'">';
print '<table class="noborder" width="100%">';
......@@ -451,12 +454,12 @@ if ($id > 0 || ! empty($ref))
else if ($user->rights->projet->creer)
{
print '&nbsp;';
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;action=editline&amp;lineid='.$task_time->rowid.'">';
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;action=editline&amp;lineid='.$task_time->rowid.($withproject?'&amp;withproject=1':'').'">';
print img_edit();
print '</a>';
print '&nbsp;';
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;action=deleteline&amp;lineid='.$task_time->rowid.'">';
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;action=deleteline&amp;lineid='.$task_time->rowid.($withproject?'&amp;withproject=1':'').'">';
print img_delete();
print '</a>';
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment