2012-05-05 17:28:52 +02:00
< ? php
/* Copyright ( C ) 2001 - 2007 Rodolphe Quiedeville < rodolphe @ quiedeville . org >
* Copyright ( C ) 2004 - 2011 Laurent Destailleur < eldy @ users . sourceforge . net >
* Copyright ( C ) 2004 Eric Seigne < eric . seigne @ ryxeo . com >
* Copyright ( C ) 2005 Marc Barilley / Ocebo < marc @ ocebo . com >
2013-04-19 09:48:55 +02:00
* Copyright ( C ) 2005 - 2013 Regis Houssin < regis . houssin @ capnetworks . com >
2012-05-05 17:28:52 +02:00
* Copyright ( C ) 2006 Andre Cianfarani < acianfa @ free . fr >
* Copyright ( C ) 2010 - 2011 Juanjo Menent < jmenent @ 2 byte . es >
* Copyright ( C ) 2010 - 2011 Philippe Grand < philippe . grand @ atoo - net . com >
* Copyright ( C ) 2012 Christophe Battarel < christophe . battarel @ altairis . fr >
2013-09-10 16:43:06 +02:00
* Copyright ( C ) 2013 Cédric Salvador < csalvador @ gpcsolutions . fr >
2012-05-05 17:28:52 +02:00
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
2013-01-16 15:36:08 +01:00
* the Free Software Foundation ; either version 3 of the License , or
2012-05-05 17:28:52 +02:00
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program . If not , see < http :// www . gnu . org / licenses />.
*/
/**
2013-12-14 01:28:59 +01:00
* \file htdocs / comm / propal / list . php
* \ingroup propal
2012-05-05 17:28:52 +02:00
* \brief Page of commercial proposals card and list
*/
2012-08-22 23:24:21 +02:00
require '../../main.inc.php' ;
2012-08-22 23:11:24 +02:00
require_once DOL_DOCUMENT_ROOT . '/core/class/html.formother.class.php' ;
require_once DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php' ;
require_once DOL_DOCUMENT_ROOT . '/core/class/html.formpropal.class.php' ;
require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php' ;
require_once DOL_DOCUMENT_ROOT . '/comm/propal/class/propal.class.php' ;
2012-09-13 17:43:24 +02:00
if ( ! empty ( $conf -> projet -> enabled ))
require_once DOL_DOCUMENT_ROOT . '/projet/class/project.class.php' ;
2012-05-05 17:28:52 +02:00
$langs -> load ( 'companies' );
$langs -> load ( 'propal' );
$langs -> load ( 'compta' );
$langs -> load ( 'bills' );
$langs -> load ( 'orders' );
$langs -> load ( 'products' );
$socid = GETPOST ( 'socid' , 'int' );
$search_user = GETPOST ( 'search_user' , 'int' );
2012-06-23 20:39:20 +02:00
$search_sale = GETPOST ( 'search_sale' , 'int' );
2012-05-05 17:28:52 +02:00
$search_ref = GETPOST ( 'sf_ref' ) ? GETPOST ( 'sf_ref' , 'alpha' ) : GETPOST ( 'search_ref' , 'alpha' );
$search_refcustomer = GETPOST ( 'search_refcustomer' , 'alpha' );
$search_societe = GETPOST ( 'search_societe' , 'alpha' );
$search_montant_ht = GETPOST ( 'search_montant_ht' , 'alpha' );
2013-06-07 11:43:22 +02:00
$search_author = GETPOST ( 'search_author' , 'alpha' );
2013-07-19 14:00:08 +02:00
$search_town = GETPOST ( 'search_town' , 'alpha' );
2012-05-05 17:28:52 +02:00
$sall = GETPOST ( " sall " );
$mesg = ( GETPOST ( " msg " ) ? GETPOST ( " msg " ) : GETPOST ( " mesg " ));
$year = GETPOST ( " year " );
$month = GETPOST ( " month " );
// Nombre de ligne pour choix de produit/service predefinis
$NBLINES = 4 ;
// Security check
2012-08-01 18:40:47 +02:00
$module = 'propal' ;
$dbtable = '' ;
2012-08-25 19:40:08 +02:00
$objectid = '' ;
if ( ! empty ( $user -> societe_id )) $socid = $user -> societe_id ;
if ( ! empty ( $socid ))
2012-05-05 17:28:52 +02:00
{
$objectid = $socid ;
$module = 'societe' ;
$dbtable = '&societe' ;
}
$result = restrictedArea ( $user , $module , $objectid , $dbtable );
// Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array
2013-05-28 18:35:15 +02:00
$hookmanager -> initHooks ( array ( 'propallist' ));
2012-05-05 17:28:52 +02:00
/*
* Actions
*/
2013-05-28 18:35:15 +02:00
$parameters = array ( 'socid' => $socid );
$reshook = $hookmanager -> executeHooks ( 'doActions' , $parameters , $object , $action ); // Note that $action and $object may have been modified by some hooks
2012-05-05 17:28:52 +02:00
// Do we click on purge search criteria ?
if ( GETPOST ( " button_removefilter_x " ))
{
$search_categ = '' ;
$search_user = '' ;
2012-06-23 20:39:20 +02:00
$search_sale = '' ;
2012-05-05 17:28:52 +02:00
$search_ref = '' ;
$search_refcustomer = '' ;
$search_societe = '' ;
$search_montant_ht = '' ;
2013-06-07 11:43:22 +02:00
$search_author = '' ;
2013-07-19 14:00:08 +02:00
$search_town = '' ;
2012-05-05 17:28:52 +02:00
$year = '' ;
$month = '' ;
}
/*
* View
*/
llxHeader ( '' , $langs -> trans ( 'Proposal' ), 'EN:Commercial_Proposals|FR:Proposition_commerciale|ES:Presupuestos' );
$form = new Form ( $db );
$formother = new FormOther ( $db );
$formfile = new FormFile ( $db );
$formpropal = new FormPropal ( $db );
$companystatic = new Societe ( $db );
$now = dol_now ();
$sortfield = GETPOST ( " sortfield " , 'alpha' );
$sortorder = GETPOST ( " sortorder " , 'alpha' );
$page = GETPOST ( " page " , 'int' );
if ( $page == - 1 ) { $page = 0 ; }
$offset = $conf -> liste_limit * $page ;
$pageprev = $page - 1 ;
$pagenext = $page + 1 ;
$viewstatut = $db -> escape ( GETPOST ( 'viewstatut' ));
$object_statut = $db -> escape ( GETPOST ( 'propal_statut' ));
if ( $object_statut != '' )
$viewstatut = $object_statut ;
if ( ! $sortfield ) $sortfield = 'p.datep' ;
if ( ! $sortorder ) $sortorder = 'DESC' ;
$limit = $conf -> liste_limit ;
2013-08-06 16:41:36 +02:00
2013-10-30 11:51:23 +01:00
$sql = 'SELECT s.rowid, s.nom, s.town, s.client, s.code_client,' ;
$sql .= ' p.rowid as propalid, p.note_private, p.total_ht, p.ref, p.ref_client, p.fk_statut, p.fk_user_author, p.datep as dp, p.fin_validite as dfv,' ;
2012-05-05 17:28:52 +02:00
if ( ! $user -> rights -> societe -> client -> voir && ! $socid ) $sql .= " sc.fk_soc, sc.fk_user, " ;
$sql .= ' u.login' ;
$sql .= ' FROM ' . MAIN_DB_PREFIX . 'societe as s, ' . MAIN_DB_PREFIX . 'propal as p' ;
if ( $sall ) $sql .= ' LEFT JOIN ' . MAIN_DB_PREFIX . 'propaldet as pd ON p.rowid=pd.fk_propal' ;
$sql .= ' LEFT JOIN ' . MAIN_DB_PREFIX . 'user as u ON p.fk_user_author = u.rowid' ;
2012-06-23 20:39:20 +02:00
// We'll need this table joined to the select in order to filter by sale
if ( $search_sale || ( ! $user -> rights -> societe -> client -> voir && ! $socid )) $sql .= " , " . MAIN_DB_PREFIX . " societe_commerciaux as sc " ;
2012-05-05 17:28:52 +02:00
if ( $search_user > 0 )
{
$sql .= " , " . MAIN_DB_PREFIX . " element_contact as c " ;
$sql .= " , " . MAIN_DB_PREFIX . " c_type_contact as tc " ;
}
$sql .= ' WHERE p.fk_soc = s.rowid' ;
$sql .= ' AND p.entity = ' . $conf -> entity ;
if ( ! $user -> rights -> societe -> client -> voir && ! $socid ) //restriction
{
$sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = " . $user -> id ;
}
2013-09-10 16:43:06 +02:00
if ( $search_town ) { //restriction
2013-09-13 10:52:04 +02:00
$sql .= natural_search ( 's.town' , $search_town );
2013-07-18 09:20:18 +02:00
}
2013-09-10 16:43:06 +02:00
if ( $search_ref ) {
2013-09-13 10:52:04 +02:00
$sql .= natural_search ( 'p.ref' , $search_ref );
2012-05-05 17:28:52 +02:00
}
2013-09-10 16:43:06 +02:00
if ( $search_refcustomer ) {
2013-09-13 10:52:04 +02:00
$sql .= natural_search ( 'p.ref_client' , $search_refcustomer );
2012-05-05 17:28:52 +02:00
}
2013-09-10 16:43:06 +02:00
if ( $search_societe ) {
2013-09-13 10:52:04 +02:00
$sql .= natural_search ( 's.nom' , $search_societe );
2012-05-05 17:28:52 +02:00
}
2013-06-07 11:43:22 +02:00
if ( $search_author )
{
$sql .= " AND u.login LIKE '% " . $db -> escape ( trim ( $search_author )) . " %' " ;
}
2012-05-05 17:28:52 +02:00
if ( $search_montant_ht )
{
2013-04-19 09:48:55 +02:00
$sql .= " AND p.total_ht=' " . $db -> escape ( price2num ( trim ( $search_montant_ht ))) . " ' " ;
2012-05-05 17:28:52 +02:00
}
2013-09-10 16:43:06 +02:00
if ( $sall ) {
2013-12-01 16:05:09 +01:00
$sql .= natural_search ( array ( 's.nom' , 'p.note_private' , 'p.note_public' , 'pd.description' ), $sall );
2013-09-10 16:43:06 +02:00
}
2012-05-05 17:28:52 +02:00
if ( $socid ) $sql .= ' AND s.rowid = ' . $socid ;
if ( $viewstatut <> '' )
{
$sql .= ' AND p.fk_statut IN (' . $viewstatut . ')' ;
}
if ( $month > 0 )
{
2012-05-05 17:45:17 +02:00
if ( $year > 0 && empty ( $day ))
$sql .= " AND p.datep BETWEEN ' " . $db -> idate ( dol_get_first_day ( $year , $month , false )) . " ' AND ' " . $db -> idate ( dol_get_last_day ( $year , $month , false )) . " ' " ;
else if ( $year > 0 && ! empty ( $day ))
$sql .= " AND p.datep BETWEEN ' " . $db -> idate ( dol_mktime ( 0 , 0 , 0 , $month , $day , $year )) . " ' AND ' " . $db -> idate ( dol_mktime ( 23 , 59 , 59 , $month , $day , $year )) . " ' " ;
else
$sql .= " AND date_format(p.datep, '%m') = ' " . $month . " ' " ;
2012-05-05 17:28:52 +02:00
}
else if ( $year > 0 )
{
2012-05-05 17:45:17 +02:00
$sql .= " AND p.datep BETWEEN ' " . $db -> idate ( dol_get_first_day ( $year , 1 , false )) . " ' AND ' " . $db -> idate ( dol_get_last_day ( $year , 12 , false )) . " ' " ;
2012-05-05 17:28:52 +02:00
}
2012-06-23 20:39:20 +02:00
if ( $search_sale > 0 ) $sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = " . $search_sale ;
2012-05-05 17:28:52 +02:00
if ( $search_user > 0 )
{
$sql .= " AND c.fk_c_type_contact = tc.rowid AND tc.element='propal' AND tc.source='internal' AND c.element_id = p.rowid AND c.fk_socpeople = " . $search_user ;
}
$sql .= ' ORDER BY ' . $sortfield . ' ' . $sortorder . ', p.ref DESC' ;
2014-05-12 11:00:58 +02:00
$nbtotalofrecords = 0 ;
if ( empty ( $conf -> global -> MAIN_DISABLE_FULL_SCANLIST ))
{
$result = $db -> query ( $sql );
$nbtotalofrecords = $db -> num_rows ( $result );
}
2012-05-05 17:28:52 +02:00
$sql .= $db -> plimit ( $limit + 1 , $offset );
$result = $db -> query ( $sql );
if ( $result )
{
$objectstatic = new Propal ( $db );
$userstatic = new User ( $db );
$num = $db -> num_rows ( $result );
if ( $socid )
{
$soc = new Societe ( $db );
$soc -> fetch ( $socid );
}
2012-05-05 20:07:34 +02:00
$param = '&socid=' . $socid . '&viewstatut=' . $viewstatut ;
2012-06-23 20:39:20 +02:00
if ( $month ) $param .= '&month=' . $month ;
if ( $year ) $param .= '&year=' . $year ;
if ( $search_ref ) $param .= '&search_ref=' . $search_ref ;
2013-10-07 21:58:12 +02:00
if ( $search_refcustomer ) $param .= '&search_refcustomer=' . $search_refcustomer ;
2012-06-23 20:39:20 +02:00
if ( $search_societe ) $param .= '&search_societe=' . $search_societe ;
2012-05-05 20:07:34 +02:00
if ( $search_user > 0 ) $param .= '&search_user=' . $search_user ;
2012-06-23 20:39:20 +02:00
if ( $search_sale > 0 ) $param .= '&search_sale=' . $search_sale ;
if ( $search_montant_ht ) $param .= '&search_montant_ht=' . $search_montant_ht ;
2013-06-07 11:43:22 +02:00
if ( $search_author ) $param .= '&search_author=' . $search_author ;
2013-07-19 14:00:08 +02:00
if ( $search_town ) $param .= '&search_town=' . $search_town ;
2014-05-12 11:00:58 +02:00
print_barre_liste ( $langs -> trans ( 'ListOfProposals' ) . ' ' . ( $socid ? '- ' . $soc -> nom : '' ), $page , $_SERVER [ " PHP_SELF " ], $param , $sortfield , $sortorder , '' , $num , $nbtotalofrecords );
2012-05-05 17:28:52 +02:00
// Lignes des champs de filtre
print '<form method="GET" action="' . $_SERVER [ " PHP_SELF " ] . '">' ;
$i = 0 ;
print '<table class="liste" width="100%">' ;
2012-05-05 17:45:17 +02:00
2012-07-12 19:14:13 +02:00
$moreforfilter = '' ;
2012-06-23 20:39:20 +02:00
// If the user can view prospects other than his'
2012-07-13 10:15:47 +02:00
if ( $user -> rights -> societe -> client -> voir || $socid )
2012-06-23 20:39:20 +02:00
{
2012-10-13 17:00:38 +02:00
$langs -> load ( " commercial " );
2012-06-23 20:39:20 +02:00
$moreforfilter .= $langs -> trans ( 'ThirdPartiesOfSaleRepresentative' ) . ': ' ;
$moreforfilter .= $formother -> select_salesrepresentatives ( $search_sale , 'search_sale' , $user );
$moreforfilter .= ' ' ;
}
2012-05-05 17:28:52 +02:00
// If the user can view prospects other than his'
2012-07-13 10:15:47 +02:00
if ( $user -> rights -> societe -> client -> voir || $socid )
2012-05-05 17:28:52 +02:00
{
$moreforfilter .= $langs -> trans ( 'LinkedToSpecificUsers' ) . ': ' ;
$moreforfilter .= $form -> select_dolusers ( $search_user , 'search_user' , 1 );
}
2012-07-12 19:14:13 +02:00
if ( ! empty ( $moreforfilter ))
2012-05-05 17:28:52 +02:00
{
print '<tr class="liste_titre">' ;
2013-06-07 11:43:22 +02:00
print '<td class="liste_titre" colspan="10">' ;
2012-05-05 17:28:52 +02:00
print $moreforfilter ;
print '</td></tr>' ;
}
print '<tr class="liste_titre">' ;
print_liste_field_titre ( $langs -> trans ( 'Ref' ), $_SERVER [ " PHP_SELF " ], 'p.ref' , '' , $param , '' , $sortfield , $sortorder );
2013-10-07 21:58:12 +02:00
print_liste_field_titre ( $langs -> trans ( 'RefCustomer' ), $_SERVER [ " PHP_SELF " ], 'p.ref_client' , '' , $param , '' , $sortfield , $sortorder );
2012-05-05 17:28:52 +02:00
print_liste_field_titre ( $langs -> trans ( 'Company' ), $_SERVER [ " PHP_SELF " ], 's.nom' , '' , $param , '' , $sortfield , $sortorder );
2013-07-18 09:20:18 +02:00
print_liste_field_titre ( $langs -> trans ( 'Town' ), $_SERVER [ " PHP_SELF " ], 's.town' , '' , $param , '' , $sortfield , $sortorder );
2012-05-05 17:28:52 +02:00
print_liste_field_titre ( $langs -> trans ( 'Date' ), $_SERVER [ " PHP_SELF " ], 'p.datep' , '' , $param , 'align="center"' , $sortfield , $sortorder );
print_liste_field_titre ( $langs -> trans ( 'DateEndPropalShort' ), $_SERVER [ " PHP_SELF " ], 'dfv' , '' , $param , 'align="center"' , $sortfield , $sortorder );
print_liste_field_titre ( $langs -> trans ( 'AmountHT' ), $_SERVER [ " PHP_SELF " ], 'p.total_ht' , '' , $param , 'align="right"' , $sortfield , $sortorder );
print_liste_field_titre ( $langs -> trans ( 'Author' ), $_SERVER [ " PHP_SELF " ], 'u.login' , '' , $param , 'align="right"' , $sortfield , $sortorder );
print_liste_field_titre ( $langs -> trans ( 'Status' ), $_SERVER [ " PHP_SELF " ], 'p.fk_statut' , '' , $param , 'align="right"' , $sortfield , $sortorder );
print_liste_field_titre ( '' );
print " </tr> \n " ;
print '<tr class="liste_titre">' ;
print '<td class="liste_titre">' ;
2013-10-07 21:58:12 +02:00
print '<input class="flat" size="6" type="text" name="search_ref" value="' . $search_ref . '">' ;
print '</td>' ;
print '<td class="liste_titre">' ;
print '<input class="flat" size="6" type="text" name="search_refcustomer" value="' . $search_refcustomer . '">' ;
2012-05-05 17:28:52 +02:00
print '</td>' ;
print '<td class="liste_titre" align="left">' ;
print '<input class="flat" type="text" size="16" name="search_societe" value="' . $search_societe . '">' ;
print '</td>' ;
2013-09-10 16:43:06 +02:00
print '<td class="liste_titre"><input class="flat" type="text" size="16" name="search_town" value="' . $search_town . '"></td>' ;
2012-05-05 17:28:52 +02:00
print '<td class="liste_titre" colspan="1" align="center">' ;
print $langs -> trans ( 'Month' ) . ': <input class="flat" type="text" size="1" maxlength="2" name="month" value="' . $month . '">' ;
print ' ' . $langs -> trans ( 'Year' ) . ': ' ;
$syear = $year ;
$formother -> select_year ( $syear , 'year' , 1 , 20 , 5 );
print '</td>' ;
print '<td class="liste_titre" colspan="1"> </td>' ;
2013-06-07 11:43:22 +02:00
print '<td class="liste_titre" align="center">' ;
2012-05-05 17:28:52 +02:00
print '<input class="flat" type="text" size="10" name="search_montant_ht" value="' . $search_montant_ht . '">' ;
print '</td>' ;
2013-07-19 14:00:08 +02:00
2013-06-07 11:43:22 +02:00
print '<td class="liste_titre" align="right">' ;
print '<input class="flat" size="10" type="text" name="search_author" value="' . $search_author . '">' ;
print '</td>' ;
2012-05-05 17:28:52 +02:00
print '<td class="liste_titre" align="right">' ;
$formpropal -> select_propal_statut ( $viewstatut , 1 );
print '</td>' ;
2014-01-13 09:43:21 +01:00
print '<td class="liste_titre" align="right"><input class="liste_titre" type="image" src="' . img_picto ( $langs -> trans ( " Search " ), 'search.png' , '' , '' , 1 ) . '" value="' . dol_escape_htmltag ( $langs -> trans ( " Search " )) . '" title="' . dol_escape_htmltag ( $langs -> trans ( " Search " )) . '">' ;
2012-05-05 17:28:52 +02:00
print '</td>' ;
print " </tr> \n " ;
$var = true ;
2012-07-12 19:14:13 +02:00
$total = 0 ;
$subtotal = 0 ;
2012-05-05 17:28:52 +02:00
while ( $i < min ( $num , $limit ))
{
$objp = $db -> fetch_object ( $result );
2012-07-12 19:14:13 +02:00
$now = dol_now ();
2012-05-05 17:28:52 +02:00
$var =! $var ;
print '<tr ' . $bc [ $var ] . '>' ;
2013-04-25 01:13:13 +02:00
print '<td class="nowrap">' ;
2012-05-05 17:28:52 +02:00
$objectstatic -> id = $objp -> propalid ;
$objectstatic -> ref = $objp -> ref ;
print '<table class="nobordernopadding"><tr class="nocellnopadd">' ;
2013-04-25 01:13:13 +02:00
print '<td class="nobordernopadding nowrap">' ;
2012-05-05 17:28:52 +02:00
print $objectstatic -> getNomUrl ( 1 );
print '</td>' ;
2013-08-06 19:12:26 +02:00
print '<td style="min-width: 20px" class="nobordernopadding nowrap">' ;
2012-05-21 00:08:55 +02:00
if ( $objp -> fk_statut == 1 && $db -> jdate ( $objp -> dfv ) < ( $now - $conf -> propal -> cloture -> warning_delay )) print img_warning ( $langs -> trans ( " Late " ));
2013-08-06 19:12:26 +02:00
if ( ! empty ( $objp -> note_private ))
{
print ' <span class="note">' ;
print '<a href="' . DOL_URL_ROOT . '/comm/propal/note.php?id=' . $objp -> propalid . '">' . img_picto ( $langs -> trans ( " ViewPrivateNote " ), 'object_generic' ) . '</a>' ;
print '</span>' ;
}
2012-05-05 17:28:52 +02:00
print '</td>' ;
2013-10-07 21:58:12 +02:00
// Ref
2013-08-06 19:12:26 +02:00
print '<td width="16" align="right" class="nobordernopadding hideonsmartphone">' ;
2012-05-05 17:28:52 +02:00
$filename = dol_sanitizeFileName ( $objp -> ref );
$filedir = $conf -> propal -> dir_output . '/' . dol_sanitizeFileName ( $objp -> ref );
$urlsource = $_SERVER [ 'PHP_SELF' ] . '?id=' . $objp -> propalid ;
2012-09-15 09:02:20 +02:00
print $formfile -> getDocumentsLink ( $objectstatic -> element , $filename , $filedir );
2012-05-05 17:28:52 +02:00
print '</td></tr></table>' ;
2013-10-07 21:58:12 +02:00
print " </td> \n " ;
// Customer ref
print '<td class="nocellnopadd nowrap">' ;
print $objp -> ref_client ;
print '</td>' ;
2013-02-12 19:16:48 +01:00
$url = DOL_URL_ROOT . '/comm/fiche.php?socid=' . $objp -> rowid ;
2012-05-05 17:28:52 +02:00
// Company
$companystatic -> id = $objp -> rowid ;
$companystatic -> nom = $objp -> nom ;
$companystatic -> client = $objp -> client ;
2013-10-22 12:47:26 +02:00
$companystatic -> code_client = $objp -> code_client ;
2012-05-05 17:28:52 +02:00
print '<td>' ;
print $companystatic -> getNomUrl ( 1 , 'customer' );
print '</td>' ;
2013-07-19 14:00:08 +02:00
// Town
2013-07-18 09:20:18 +02:00
print '<td class="nocellnopadd">' ;
print $objp -> town ;
print '</td>' ;
2013-08-06 19:12:26 +02:00
2013-07-19 14:00:08 +02:00
// Date proposal
2012-05-05 17:28:52 +02:00
print '<td align="center">' ;
$y = dol_print_date ( $db -> jdate ( $objp -> dp ), '%Y' );
$m = dol_print_date ( $db -> jdate ( $objp -> dp ), '%m' );
$mt = dol_print_date ( $db -> jdate ( $objp -> dp ), '%b' );
$d = dol_print_date ( $db -> jdate ( $objp -> dp ), '%d' );
print $d . " \n " ;
print ' <a href="' . $_SERVER [ " PHP_SELF " ] . '?year=' . $y . '&month=' . $m . '">' ;
print $mt . " </a> \n " ;
print ' <a href="' . $_SERVER [ " PHP_SELF " ] . '?year=' . $y . '">' ;
print $y . " </a></td> \n " ;
2013-07-19 14:00:08 +02:00
// Date end validity
2012-05-05 17:28:52 +02:00
if ( $objp -> dfv )
{
print '<td align="center">' . dol_print_date ( $db -> jdate ( $objp -> dfv ), 'day' );
print '</td>' ;
}
else
{
print '<td> </td>' ;
}
print '<td align="right">' . price ( $objp -> total_ht ) . " </td> \n " ;
$userstatic -> id = $objp -> fk_user_author ;
$userstatic -> login = $objp -> login ;
print '<td align="center">' ;
if ( $userstatic -> id ) print $userstatic -> getLoginUrl ( 1 );
else print ' ' ;
print " </td> \n " ;
print '<td align="right">' . $objectstatic -> LibStatut ( $objp -> fk_statut , 5 ) . " </td> \n " ;
print '<td> </td>' ;
print " </tr> \n " ;
2012-07-12 19:14:13 +02:00
$total += $objp -> total_ht ;
$subtotal += $objp -> total_ht ;
2012-05-05 17:28:52 +02:00
$i ++ ;
}
2013-06-05 10:15:01 +02:00
if ( $total > 0 )
{
2013-06-18 10:59:19 +02:00
if ( $num < $limit ){
$var =! $var ;
2013-12-19 12:47:39 +01:00
print '<tr class="liste_total"><td align="left">' . $langs -> trans ( " TotalHT " ) . '</td>' ;
2013-07-18 09:20:18 +02:00
print '<td colspan="6" align="right"">' . price ( $total ) . '<td colspan="3"</td>' ;
2013-06-18 10:59:19 +02:00
print '</tr>' ;
}
else
{
$var =! $var ;
2013-12-19 12:47:39 +01:00
print '<tr class="liste_total"><td align="left">' . $langs -> trans ( " TotalHTforthispage " ) . '</td>' ;
2013-07-18 09:20:18 +02:00
print '<td colspan="6" align="right"">' . price ( $total ) . '<td colspan="3"</td>' ;
2013-06-18 10:59:19 +02:00
print '</tr>' ;
}
2013-07-19 14:00:08 +02:00
2013-06-05 10:15:01 +02:00
}
2013-07-19 14:00:08 +02:00
2012-05-05 17:28:52 +02:00
print '</table>' ;
print '</form>' ;
$db -> free ( $result );
}
else
{
dol_print_error ( $db );
}
// End of page
llxFooter ();
$db -> close ();
?>