269 |
print '<tr><td>Tel Pro</td><td><input name="phone_pro" type="text" size="18" maxlength="80" value="'.$contact->phone_pro.'"></td>'; |
print '<tr><td>Tel Pro</td><td><input name="phone_pro" type="text" size="18" maxlength="80" value="'.$contact->phone_pro.'"></td>'; |
270 |
print '<td>Tel Perso</td><td><input name="phone_perso" type="text" size="18" maxlength="80" value="'.$contact->phone_perso.'"></td></tr>'; |
print '<td>Tel Perso</td><td><input name="phone_perso" type="text" size="18" maxlength="80" value="'.$contact->phone_perso.'"></td></tr>'; |
271 |
|
|
272 |
print '<tr><td>'.$langs->trans("Fax").'</td><td><input name="fax" type="text" size="18" maxlength="80"></td>'; |
print '<tr><td>Portable</td><td><input name="phone_mobile" type="text" size="18" maxlength="80" value="'.$contact->phone_mobile.'"></td>'; |
273 |
print '<td>Portable</td><td><input name="phone_mobile" type="text" size="18" maxlength="80" value="'.$contact->phone_mobile.'"></td></tr>'; |
print '<td>'.$langs->trans("Fax").'</td><td><input name="fax" type="text" size="18" maxlength="80"></td></tr>'; |
274 |
|
|
275 |
print '<tr><td>'.$langs->trans("Email").'</td><td colspan="3"><input name="email" type="text" size="50" maxlength="80" value="'.$contact->email.'"></td></tr>'; |
print '<tr><td>'.$langs->trans("Email").'</td><td colspan="3"><input name="email" type="text" size="50" maxlength="80" value="'.$contact->email.'"></td></tr>'; |
276 |
|
|
339 |
print '<tr><td>Portable</td><td><input name="phone_mobile" type="text" size="18" maxlength="80" value="'.$contact->phone_mobile.'"></td>'; |
print '<tr><td>Portable</td><td><input name="phone_mobile" type="text" size="18" maxlength="80" value="'.$contact->phone_mobile.'"></td>'; |
340 |
print '<td>'.$langs->trans("Fax").'</td><td><input name="fax" type="text" size="18" maxlength="80" value="'.$contact->fax.'"></td></tr>'; |
print '<td>'.$langs->trans("Fax").'</td><td><input name="fax" type="text" size="18" maxlength="80" value="'.$contact->fax.'"></td></tr>'; |
341 |
|
|
342 |
print '<tr><td>'.$langs->trans("EMail").'</td><td colspan="3"><input name="email" type="text" size="50" maxlength="80" value="'.$contact->email.'"></td></tr>'; |
print '<tr><td>'.$langs->trans("EMail").'</td><td><input name="email" type="text" size="50" maxlength="80" value="'.$contact->email.'"></td>'; |
343 |
|
if ($conf->mailing->enabled) |
344 |
|
{ |
345 |
|
$langs->load("mails"); |
346 |
|
print '<td nowrap>'.$langs->trans("NbOfEMailingsReceived").'</td>'; |
347 |
|
print '<td>'.$contact->getNbOfEMailings().'</td>'; |
348 |
|
} |
349 |
|
else |
350 |
|
{ |
351 |
|
print '<td colspan="2"> </td>'; |
352 |
|
} |
353 |
|
print '</tr>'; |
354 |
|
|
355 |
print '<tr><td>Jabberid</td><td colspan="3"><input name="jabberid" type="text" size="50" maxlength="80" value="'.$contact->jabberid.'"></td></tr>'; |
print '<tr><td>Jabberid</td><td colspan="3"><input name="jabberid" type="text" size="50" maxlength="80" value="'.$contact->jabberid.'"></td></tr>'; |
356 |
|
|
419 |
print '<tr><td>Tel Pro</td><td>'.$contact->phone_pro.'</td>'; |
print '<tr><td>Tel Pro</td><td>'.$contact->phone_pro.'</td>'; |
420 |
print '<td>Tel Perso</td><td>'.$contact->phone_perso.'</td></tr>'; |
print '<td>Tel Perso</td><td>'.$contact->phone_perso.'</td></tr>'; |
421 |
|
|
422 |
print '<td>Portable</td><td>'.$contact->phone_mobile.'</td>'; |
print '<tr><td>Portable</td><td>'.$contact->phone_mobile.'</td>'; |
423 |
print '<td>'.$langs->trans("Fax").'</td><td>'.$contact->fax.'</td></tr>'; |
print '<td>'.$langs->trans("Fax").'</td><td>'.$contact->fax.'</td></tr>'; |
424 |
|
|
425 |
print '<tr><td>'.$langs->trans("EMail").'</td><td colspan="3">'; |
print '<tr><td>'.$langs->trans("EMail").'</td><td>'; |
426 |
if ($contact->email && ! ValidEmail($contact->email)) |
if ($contact->email && ! ValidEmail($contact->email)) |
427 |
{ |
{ |
428 |
print '<div class="error">'.$langs->trans("ErrorBadEMail",$contact->email)."</div>"; |
print '<div class="error">'.$langs->trans("ErrorBadEMail",$contact->email)."</div>"; |
431 |
{ |
{ |
432 |
print $contact->email; |
print $contact->email; |
433 |
} |
} |
434 |
print '</td></tr>'; |
print '</td>'; |
435 |
|
if ($conf->mailing->enabled) |
436 |
|
{ |
437 |
|
$langs->load("mails"); |
438 |
|
print '<td nowrap>'.$langs->trans("NbOfEMailingsReceived").'</td>'; |
439 |
|
print '<td>'.$contact->getNbOfEMailings().'</td>'; |
440 |
|
} |
441 |
|
else |
442 |
|
{ |
443 |
|
print '<td colspan="2"> </td>'; |
444 |
|
} |
445 |
|
print '</tr>'; |
446 |
|
|
447 |
print '<tr><td>Jabberid</td><td colspan="3">'.$contact->jabberid.'</td></tr>'; |
print '<tr><td>Jabberid</td><td colspan="3">'.$contact->jabberid.'</td></tr>'; |
448 |
|
|
449 |
print '<tr><td>'.$langs->trans("Note").'</td><td colspan="3">'; |
print '<tr><td>'.$langs->trans("Note").'</td><td colspan="3">'; |
482 |
} |
} |
483 |
|
|
484 |
|
|
485 |
// Historique des actions vers ce contact |
// Historique des actions sur ce contact |
486 |
print_titre ($langs->trans("TasksHistoryForThisContact")); |
print_titre ($langs->trans("TasksHistoryForThisContact")); |
487 |
|
$histo=array(); |
488 |
|
$numaction = 0 ; |
489 |
|
|
490 |
print '<table width="100%" class="noborder">'; |
// Recherche histo sur actioncomm |
491 |
|
$sql = "SELECT a.id, ".$db->pdate("a.datea")." as da, a.note, a.percent as percent,"; |
492 |
print "<tr class=\"liste_titre\">"; |
$sql.= " c.code as acode, c.libelle,"; |
493 |
print "<td>".$langs->trans("Date")."</td><td>".$langs->trans("Actions")."</td>"; |
$sql.= " u.rowid as user_id, u.code"; |
494 |
print "<td>".$langs->trans("CreatedBy")."</td></tr>"; |
$sql.= " FROM ".MAIN_DB_PREFIX."actioncomm as a, ".MAIN_DB_PREFIX."c_actioncomm as c, ".MAIN_DB_PREFIX."user as u "; |
495 |
|
$sql.= " WHERE fk_contact = ".$contact->id; |
496 |
|
$sql.= " AND u.rowid = a.fk_user_author"; |
497 |
|
$sql.= " AND c.id=a.fk_action"; |
498 |
|
$sql.= " ORDER BY a.datea DESC, a.id DESC"; |
499 |
|
|
500 |
$sql = "SELECT a.id, ".$db->pdate("a.datea")." as da, c.libelle, u.code, a.propalrowid, a.fk_user_author, fk_contact, u.rowid "; |
$resql=$db->query($sql); |
501 |
$sql .= " FROM ".MAIN_DB_PREFIX."actioncomm as a, ".MAIN_DB_PREFIX."c_actioncomm as c, ".MAIN_DB_PREFIX."user as u "; |
if ($resql) |
|
$sql .= " WHERE fk_contact = ".$contact->id; |
|
|
$sql .= " AND u.rowid = a.fk_user_author"; |
|
|
$sql .= " AND c.id=a.fk_action "; |
|
|
|
|
|
if ($contactid) |
|
502 |
{ |
{ |
503 |
$sql .= " AND fk_contact = $contactid"; |
$i = 0 ; |
504 |
|
$num = $db->num_rows($resql); |
505 |
|
$var=true; |
506 |
|
while ($i < $num) |
507 |
|
{ |
508 |
|
$obj = $db->fetch_object($resql); |
509 |
|
$histo[$numaction]=array('type'=>'action','id'=>$obj->id,'date'=>$obj->da,'note'=>$obj->note,'percent'=>$obj->percent, |
510 |
|
'acode'=>$obj->acode,'libelle'=>$obj->libelle, |
511 |
|
'userid'=>$obj->user_id,'code'=>$obj->code); |
512 |
|
$numaction++; |
513 |
|
$i++; |
514 |
|
} |
515 |
} |
} |
516 |
$sql .= " ORDER BY a.datea DESC, a.id DESC"; |
else |
517 |
|
{ |
518 |
|
dolibarr_print_error($db); |
519 |
|
} |
520 |
|
|
521 |
|
// Recherche histo sur mailing |
522 |
|
$sql = "SELECT m.rowid as id, ".$db->pdate("mc.date_envoi")." as da, m.titre as note, '100' as percent,"; |
523 |
|
$sql.= " 'AC_EMAILING' as acode,"; |
524 |
|
$sql.= " u.rowid as user_id, u.code"; |
525 |
|
$sql.= " FROM ".MAIN_DB_PREFIX."mailing as m, ".MAIN_DB_PREFIX."mailing_cibles as mc, ".MAIN_DB_PREFIX."user as u "; |
526 |
|
$sql.= " WHERE mc.email = '".$contact->email."'"; |
527 |
|
$sql.= " AND mc.statut = 1"; |
528 |
|
$sql.= " AND u.rowid = m.fk_user_valid"; |
529 |
|
$sql.= " AND mc.fk_mailing=m.rowid"; |
530 |
|
$sql.= " ORDER BY mc.date_envoi DESC, m.rowid DESC"; |
531 |
|
|
532 |
$resql=$db->query($sql); |
$resql=$db->query($sql); |
533 |
if ($resql) |
if ($resql) |
534 |
{ |
{ |
538 |
while ($i < $num) |
while ($i < $num) |
539 |
{ |
{ |
540 |
$obj = $db->fetch_object($resql); |
$obj = $db->fetch_object($resql); |
541 |
$var=!$var; |
$histo[$numaction]=array('type'=>'mailing','id'=>$obj->id,'date'=>$obj->da,'note'=>$obj->note,'percent'=>$obj->percent, |
542 |
print "<tr $bc[$var]>"; |
'acode'=>$obj->acode,'libelle'=>$obj->libelle, |
543 |
|
'userid'=>$obj->user_id,'code'=>$obj->code); |
544 |
print "<td>". strftime("%d %b %Y %H:%M", $obj->da) ."</td>"; |
$numaction++; |
|
if ($obj->propalrowid) |
|
|
{ |
|
|
print "<td><a href=\"".DOL_URL_ROOT."/comm/propal.php?propalid=".$obj->propalrowid."\">".$obj->libelle."</a></td>"; |
|
|
} |
|
|
else |
|
|
{ |
|
|
print "<td>$obj->libelle</td>"; |
|
|
} |
|
|
|
|
|
print "<td>$obj->code </td>"; |
|
|
print "</tr>\n"; |
|
545 |
$i++; |
$i++; |
546 |
} |
} |
547 |
} |
} |
549 |
{ |
{ |
550 |
dolibarr_print_error($db); |
dolibarr_print_error($db); |
551 |
} |
} |
552 |
|
|
553 |
|
// Affichage actions sur contact |
554 |
|
print '<table width="100%" class="noborder">'; |
555 |
|
|
556 |
|
print '<tr class="liste_titre">'; |
557 |
|
print '<td>'.$langs->trans("Date").'</td>'; |
558 |
|
print '<td align="center">'.$langs->trans("Status").'</td>'; |
559 |
|
print '<td>'.$langs->trans("Actions").'</td>'; |
560 |
|
print '<td>'.$langs->trans("Comments").'</td>'; |
561 |
|
print '<td>'.$langs->trans("Author").'</td></tr>'; |
562 |
|
|
563 |
|
foreach ($histo as $key=>$value) |
564 |
|
{ |
565 |
|
$var=!$var; |
566 |
|
print "<tr $bc[$var]>"; |
567 |
|
|
568 |
|
// Date |
569 |
|
print "<td>". dolibarr_print_date($histo[$key]['date'],"%d %b %Y %H:%M") ."</td>"; |
570 |
|
|
571 |
|
// Status/Percent |
572 |
|
if ($histo[$key]['percent'] < 100) { |
573 |
|
print "<td align=\"center\">".$histo[$key]['percent']."%</td>"; |
574 |
|
} |
575 |
|
else { |
576 |
|
print "<td align=\"center\">".$langs->trans("Done")."</td>"; |
577 |
|
} |
578 |
|
|
579 |
|
// Action |
580 |
|
print '<td>'; |
581 |
|
if ($histo[$key]['type']=='action') |
582 |
|
{ |
583 |
|
print '<a href="'.DOL_URL_ROOT.'/comm/action/fiche.php?id='.$histo[$key]['id'].'">'.img_object($langs->trans("ShowTask"),"task").' '; |
584 |
|
$transcode=$langs->trans("Action".$histo[$key]['acode']); |
585 |
|
$libelle=($transcode!="Action".$histo[$key]['acode']?$transcode:$histo[$key]['libelle']); |
586 |
|
print dolibarr_trunc($libelle,30); |
587 |
|
print '</a>'; |
588 |
|
} |
589 |
|
if ($histo[$key]['type']=='mailing') |
590 |
|
{ |
591 |
|
print '<a href="'.DOL_URL_ROOT.'/comm/mailing/fiche.php?id='.$histo[$key]['id'].'">'.img_object($langs->trans("ShowEMailing"),"email").' '; |
592 |
|
$transcode=$langs->trans("Action".$histo[$key]['acode']); |
593 |
|
$libelle=($transcode!="Action".$histo[$key]['acode']?$transcode:'Send mass mailing'); |
594 |
|
print dolibarr_trunc($libelle,30); |
595 |
|
print '</a>'; |
596 |
|
} |
597 |
|
print '</td>'; |
598 |
|
|
599 |
|
// Note |
600 |
|
print '<td>'.dolibarr_trunc($histo[$key]['note'], 30).'</td>'; |
601 |
|
|
602 |
|
// Author |
603 |
|
print '<td>'; |
604 |
|
if ($histo[$key]['code']) |
605 |
|
{ |
606 |
|
print '<a href="'.DOL_URL_ROOT.'/user/fiche.php?id='.$histo[$key]['userid'].'">'.img_object($langs->trans("ShowUser"),'user').' '.$histo[$key]['code'].'</a>'; |
607 |
|
} |
608 |
|
else print " "; |
609 |
|
print "</td>"; |
610 |
|
print "</tr>\n"; |
611 |
|
} |
612 |
print "</table>"; |
print "</table>"; |
613 |
|
|
614 |
|
print '<br>'; |
615 |
} |
} |
616 |
|
|
617 |
$db->close(); |
$db->close(); |