dolibarr  7.0.0-beta
document.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) 2003-2007 Rodolphe Quiedeville <rodolphe@quiedeville.org>
3  * Copyright (C) 2004-2014 Laurent Destailleur <eldy@users.sourceforge.net>
4  * Copyright (C) 2005 Marc Barilley / Ocebo <marc@ocebo.com>
5  * Copyright (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com>
6  * Copyright (C) 2005 Simon TOSSER <simon@kornog-computing.com>
7  * Copyright (C) 2011 Juanjo Menent <jmenent@2byte.es>
8  * Copyright (C) 2013 C├ędric Salvador <csalvador@gpcsolutions.fr>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
30 require '../../main.inc.php';
31 require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
32 require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
33 require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
34 require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
35 require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
36 if (! empty($conf->projet->enabled))
37 {
38  require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
39  require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
40 }
41 
42 $langs->load("other");
43 $langs->load("companies");
44 $langs->load("compta");
45 $langs->load("bills");
46 
47 $id = GETPOST('id','int');
48 $action = GETPOST('action','aZ09');
49 $confirm = GETPOST('confirm', 'alpha');
50 
51 // Security check
52 if ($user->societe_id) $socid=$user->societe_id;
53 $result = restrictedArea($user, 'tax', $id, 'chargesociales','charges');
54 
55 
56 // Get parameters
57 $sortfield = GETPOST("sortfield",'alpha');
58 $sortorder = GETPOST("sortorder",'alpha');
59 $page = GETPOST("page",'int');
60 if ($page == -1) {
61  $page = 0;
62 }
63 $offset = $conf->liste_limit * $page;
64 $pageprev = $page - 1;
65 $pagenext = $page + 1;
66 if (! $sortorder) $sortorder="ASC";
67 if (! $sortfield) $sortfield="name";
68 
69 
70 $object = new ChargeSociales($db);
71 if ($id > 0) $object->fetch($id);
72 
73 $upload_dir = $conf->tax->dir_output.'/'.dol_sanitizeFileName($object->ref);
74 $modulepart='tax';
75 
76 
77 /*
78  * Actions
79  */
80 
81 include_once DOL_DOCUMENT_ROOT . '/core/actions_linkedfiles.inc.php';
82 
83 if ($action == 'setlib' && $user->rights->tax->charges->creer)
84 {
85  $object->fetch($id);
86  $result = $object->setValueFrom('libelle', GETPOST('lib'), '', '', 'text', '', $user, 'TAX_MODIFY');
87  if ($result < 0)
88  setEventMessages($object->error, $object->errors, 'errors');
89 }
90 
91 
92 /*
93  * View
94  */
95 
96 $form = new Form($db);
97 if (! empty($conf->projet->enabled)) { $formproject = new FormProjets($db); }
98 
99 $title = $langs->trans("SocialContribution") . ' - ' . $langs->trans("Documents");
100 $help_url='EN:Module_Taxes_and_social_contributions|FR:Module Taxes et dividendes|ES:M&oacute;dulo Impuestos y cargas sociales (IVA, impuestos)';
101 llxHeader("",$title,$help_url);
102 
103 if ($object->id)
104 {
105  $alreadypayed=$object->getSommePaiement();
106 
107  $head=tax_prepare_head($object);
108 
109  dol_fiche_head($head, 'documents', $langs->trans("SocialContribution"), -1, 'bill');
110 
111  $morehtmlref='<div class="refidno">';
112  // Label of social contribution
113  $morehtmlref.=$form->editfieldkey("Label", 'lib', $object->lib, $object, $user->rights->tax->charges->creer, 'string', '', 0, 1);
114  $morehtmlref.=$form->editfieldval("Label", 'lib', $object->lib, $object, $user->rights->tax->charges->creer, 'string', '', null, null, '', 1);
115  // Project
116  if (! empty($conf->projet->enabled))
117  {
118  $langs->load("projects");
119  $morehtmlref.='<br>'.$langs->trans('Project') . ' : ';
120  if (! empty($object->fk_project)) {
121  $proj = new Project($db);
122  $proj->fetch($object->fk_project);
123  $morehtmlref.='<a href="'.DOL_URL_ROOT.'/projet/card.php?id=' . $object->fk_project . '" title="' . $langs->trans('ShowProject') . '">';
124  $morehtmlref.=$proj->ref;
125  $morehtmlref.='</a>';
126  } else {
127  $morehtmlref.='';
128  }
129  }
130  $morehtmlref.='</div>';
131 
132  $linkback = '<a href="' . DOL_URL_ROOT . '/compta/sociales/index.php?restore_lastsearch_values=1">' . $langs->trans("BackToList") . '</a>';
133 
134  $object->totalpaye = $totalpaye; // To give a chance to dol_banner_tab to use already paid amount to show correct status
135 
136  dol_banner_tab($object, 'id', $linkback, 1, 'rowid', 'ref', $morehtmlref, '', 0, '', $morehtmlright);
137 
138  print '<div class="fichecenter">';
139  print '<div class="underbanner clearboth"></div>';
140 
141  // Construit liste des fichiers
142  $filearray=dol_dir_list($upload_dir,"files",0,'','(\.meta|_preview.*\.png)$',$sortfield,(strtolower($sortorder)=='desc'?SORT_DESC:SORT_ASC),1);
143  $totalsize=0;
144  foreach($filearray as $key => $file)
145  {
146  $totalsize+=$file['size'];
147  }
148 
149 
150  print '<table class="border" width="100%">';
151 
152  print '<tr><td class="titlefield">'.$langs->trans("NbOfAttachedFiles").'</td><td colspan="3">'.count($filearray).'</td></tr>';
153  print '<tr><td>'.$langs->trans("TotalSizeOfAttachedFiles").'</td><td colspan="3">'.$totalsize.' '.$langs->trans("bytes").'</td></tr>';
154  print '</table>';
155 
156  print '</div>';
157 
158  print '<div class="clearboth"></div>';
159 
160  dol_fiche_end();
161 
162  $modulepart = 'tax';
163  $permission = $user->rights->tax->charges->creer;
164  $permtoedit = $user->rights->fournisseur->facture->creer;
165  $param = '&id=' . $object->id;
166  include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php';
167 }
168 else
169 {
170  print $langs->trans("ErrorUnknown");
171 }
172 
173 
174 llxFooter();
175 
176 $db->close();
setEventMessages($mesg, $mesgs, $style='mesgs')
Set event messages in dol_events session object.
llxHeader()
Header empty.
Definition: document.php:70
dol_fiche_head($links=array(), $active='0', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='')
Show tab header of a card.
dol_sanitizeFileName($str, $newstr='_', $unaccent=1)
Clean a string to use it as a file name.
dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='rowid', $fieldref='ref', $morehtmlref='', $moreparam='', $nodbprefix=0, $morehtmlleft='', $morehtmlstatus='', $onlybanner=0, $morehtmlright='')
Show tab footer of a card.
if(empty($reshook)) $form
View.
Definition: perms.php:103
dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefilter=null, $sortcriteria="name", $sortorder=SORT_ASC, $mode=0, $nohook=0, $relativename="")
Scan a directory and return a list of files/directories.
Definition: files.lib.php:58
GETPOST($paramname, $check='none', $method=0, $filter=NULL, $options=NULL, $noreplace=0)
Return value of a param into GET or POST supervariable.
Class to manage generation of HTML components Only common components must be here.
Class to manage projects.
Class to manage building of HTML components.
if($_POST["cancel"]==$langs->trans("Cancel")&&!$id) if($action== 'setdatev'&&$user->rights->tax->charges->creer) if($action== 'add'&&$_POST["cancel"]<> $langs->trans("Cancel")) if($action== 'delete') $title
Actions.
Definition: card.php:183
dol_fiche_end($notab=0)
Show tab footer of a card.
tax_prepare_head(ChargeSociales $object)
Prepare array with list of tabs.
Definition: tax.lib.php:37
print
Draft customers invoices.
Definition: index.php:91
llxFooter()
Footer empty.
Definition: document.php:76
Classe permettant la gestion des paiements des charges La tva collectee n'est calculee que sur les fa...
restrictedArea($user, $features, $objectid=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $objcanvas=null)
Check permissions of a user to show a page and an object.