Files
dolibarr/doc/dev/php/html/functions_8inc_8php-source.html
2004-07-15 22:17:39 +00:00

1042 lines
60 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>dolibarr: htdocs/lib/functions.inc.php Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Généré par Doxygen 1.3.7 -->
<div class="qindex"><a class="qindex" href="index.html">Page&nbsp;principale</a> | <a class="qindex" href="classes.html">Liste&nbsp;alphabétique</a> | <a class="qindex" href="annotated.html">Liste&nbsp;des&nbsp;classes</a> | <a class="qindex" href="files.html">Liste&nbsp;des&nbsp;fichiers</a> | <a class="qindex" href="functions.html">Membres&nbsp;de&nbsp;classe</a> | <a class="qindex" href="globals.html">Membres&nbsp;de&nbsp;fichier</a></div>
<h1>htdocs/lib/functions.inc.php</h1><a href="functions_8inc_8php.html">Aller à la documentation de ce fichier.</a><pre class="fragment"><div>00001 &lt;?PHP
00002 <span class="comment">/* Copyright (C) 2000-2004 Rodolphe Quiedeville &lt;rodolphe@quiedeville.org&gt;</span>
00003 <span class="comment"> * Copyright (C) 2003 Jean-Louis Bergamo &lt;jlb@j1b.org&gt;</span>
00004 <span class="comment"> * Copyright (C) 2004 Laurent Destailleur &lt;eldy@users.sourceforge.net&gt;</span>
00005 <span class="comment"> *</span>
00006 <span class="comment"> * This program is free software; you can redistribute it and/or modify</span>
00007 <span class="comment"> * it under the terms of the GNU General Public License as published by</span>
00008 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span>
00009 <span class="comment"> * (at your option) any later version.</span>
00010 <span class="comment"> *</span>
00011 <span class="comment"> * This program is distributed in the hope that it will be useful,</span>
00012 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
00013 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
00014 <span class="comment"> * GNU General Public License for more details.</span>
00015 <span class="comment"> *</span>
00016 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
00017 <span class="comment"> * along with this program; if not, write to the Free Software</span>
00018 <span class="comment"> * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.</span>
00019 <span class="comment"> * or see http://www.gnu.org/</span>
00020 <span class="comment"> *</span>
00021 <span class="comment"> * $Id$</span>
00022 <span class="comment"> * $Source$</span>
00023 <span class="comment"> *</span>
00024 <span class="comment"> */</span>
00025
00036 $yn[0] = <span class="stringliteral">"non"</span>;
00037 $yn[1] = <span class="stringliteral">"oui"</span>;
00038
<a name="l00044"></a><a class="code" href="functions_8inc_8php.html#a1">00044</a> function <a class="code" href="functions_8inc_8php.html#a1">dolibarr_syslog</a>($message)
00045 {
00046 define_syslog_variables();
00047
00048 openlog(<span class="stringliteral">"dolibarr"</span>, LOG_PID | LOG_PERROR, LOG_USER); # LOG_USER au lieu de LOG_LOCAL0 car non accepté par tous les PHP
00049
00050 syslog(LOG_WARNING, $message);
00051
00052 closelog();
00053 }
00054
<a name="l00063"></a><a class="code" href="functions_8inc_8php.html#a2">00063</a> function <a class="code" href="functions_8inc_8php.html#a2">dolibarr_fiche_head</a>($links, $active=0)
00064 {
00065 print <span class="stringliteral">"&lt;!-- fiche --&gt;&lt;div class=\"tabs\"&gt;\n"</span>;
00066
00067 <span class="keywordflow">for</span> ($i = 0 ; $i &lt; <span class="keyword">sizeof</span>($links) ; $i++)
00068 {
00069 <span class="keywordflow">if</span> ($links[$i][2] == 'image')
00070 {
00071 print '&lt;a <span class="keyword">class</span>=<span class="stringliteral">"tabimage"</span> href=<span class="stringliteral">"'.$links[$i][0].'"</span>&gt;'.$links[$i][1].'&lt;/a&gt;'.<span class="stringliteral">"\n"</span>;
00072 }
00073 <span class="keywordflow">else</span>
00074 {
00075 <span class="keywordflow">if</span> ($i == $active)
00076 {
00077 print '&lt;a <span class="keywordtype">id</span>=<span class="stringliteral">"active"</span> <span class="keyword">class</span>=<span class="stringliteral">"tab"</span> href=<span class="stringliteral">"'.$links[$i][0].'"</span>&gt;'.$links[$i][1].'&lt;/a&gt;'.<span class="stringliteral">"\n"</span>;
00078 }
00079 <span class="keywordflow">else</span>
00080 {
00081 print '&lt;a <span class="keyword">class</span>=<span class="stringliteral">"tab"</span> href=<span class="stringliteral">"'.$links[$i][0].'"</span>&gt;'.$links[$i][1].'&lt;/a&gt;'.<span class="stringliteral">"\n"</span>;
00082 }
00083 }
00084 }
00085
00086 print <span class="stringliteral">"&lt;/div&gt;\n"</span>;
00087 print <span class="stringliteral">"&lt;div class=\"tabBar\"&gt;\n&lt;br&gt;\n"</span>;
00088 }
00089
<a name="l00103"></a><a class="code" href="functions_8inc_8php.html#a3">00103</a> function <a class="code" href="functions_8inc_8php.html#a3">dolibarr_set_const</a>($db, $name, $value, $type='chaine', $visible=0, $note='')
00104 {
00105 $sql = <span class="stringliteral">"REPLACE INTO llx_const SET name = '$name', value='$value', visible=$visible, type='$type', note='$note'"</span>;
00106
00107 <span class="keywordflow">if</span> ($db-&gt;query($sql))
00108 {
00109 <span class="keywordflow">return</span> 1;
00110 }
00111 <span class="keywordflow">else</span>
00112 {
00113 <span class="keywordflow">return</span> 0;
00114 }
00115 }
00116
<a name="l00124"></a><a class="code" href="functions_8inc_8php.html#a4">00124</a> function <a class="code" href="functions_8inc_8php.html#a4">dolibarr_del_const</a>($db, $name)
00125 {
00126 $sql = <span class="stringliteral">"DELETE FROM llx_const WHERE name='$name'"</span>;
00127
00128 <span class="keywordflow">if</span> ($db-&gt;query($sql))
00129 {
00130 <span class="keywordflow">return</span> 1;
00131 }
00132 <span class="keywordflow">else</span>
00133 {
00134 <span class="keywordflow">return</span> 0;
00135 }
00136 }
00137
<a name="l00144"></a><a class="code" href="functions_8inc_8php.html#a5">00144</a> function <a class="code" href="functions_8inc_8php.html#a5">dolibarr_print_ca</a>($ca)
00145 {
00146 <span class="keywordflow">if</span> ($ca &gt; 1000)
00147 {
00148 $cat = round(($ca / 1000),2);
00149 $cat = <span class="stringliteral">"$cat Keuros"</span>;
00150 }
00151 <span class="keywordflow">else</span>
00152 {
00153 $cat = round($ca,2);
00154 $cat = <span class="stringliteral">"$cat euros"</span>;
00155 }
00156
00157 <span class="keywordflow">if</span> ($ca &gt; 1000000)
00158 {
00159 $cat = round(($ca / 1000000),2);
00160 $cat = <span class="stringliteral">"$cat Meuros"</span>;
00161 }
00162
00163 <span class="keywordflow">return</span> $cat;
00164 }
00165
<a name="l00173"></a><a class="code" href="functions_8inc_8php.html#a6">00173</a> function <a class="code" href="functions_8inc_8php.html#a6">dolibarr_print_date</a>($time,$format=<span class="stringliteral">"%d %b %Y"</span>)
00174 {
00175 <span class="keywordflow">return</span> strftime($format,$time);
00176 }
00177
00178
<a name="l00184"></a><a class="code" href="functions_8inc_8php.html#a7">00184</a> function <a class="code" href="functions_8inc_8php.html#a7">dolibarr_print_object_info</a>($object)
00185 {
00186 print <span class="stringliteral">"Créé par : "</span> . $object-&gt;user_creation-&gt;fullname . '&lt;br&gt;';
00187 print <span class="stringliteral">"Date de création : "</span> . strftime(<span class="stringliteral">"%A %d %B %Y %H:%M:%S"</span>,$object-&gt;date_creation) . '&lt;br&gt;';
00188 print <span class="stringliteral">"Modifié par : "</span> . $object-&gt;user_modification-&gt;fullname . '&lt;br&gt;';
00189 print <span class="stringliteral">"Date de modification : "</span> . strftime(<span class="stringliteral">"%A %d %B %Y %H:%M:%S"</span>,$object-&gt;date_modification) . '&lt;br&gt;';
00190 }
00191
<a name="l00199"></a><a class="code" href="functions_8inc_8php.html#a8">00199</a> function <a class="code" href="functions_8inc_8php.html#a8">dolibarr_print_phone</a>($phone)
00200 {
00201 <span class="keywordflow">if</span> (strlen(trim($phone)) == 10)
00202 {
00203 <span class="keywordflow">return</span> substr($phone,0,2).<span class="stringliteral">" "</span>.substr($phone,2,2).<span class="stringliteral">" "</span>.substr($phone,4,2).<span class="stringliteral">" "</span>.substr($phone,6,2).<span class="stringliteral">" "</span>.substr($phone,8,2);
00204 }
00205 <span class="keywordflow">else</span>
00206 {
00207 <span class="keywordflow">return</span> $phone;
00208 }
00209 }
00210
00211 function img_file($alt = <span class="stringliteral">"Voir"</span>)
00212 {
00213 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/file.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00214 }
00215
00216 function img_file_new($alt = <span class="stringliteral">"Voir"</span>)
00217 {
00218 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/filenew.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00219 }
00220
00221
00222 function img_pdf($alt = <span class="stringliteral">"Voir"</span>)
00223 {
00224 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/pdf.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00225 }
00226
00227 function img_warning($alt = <span class="stringliteral">"Voir"</span>)
00228 {
00229 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/warning.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00230 }
00231
00232 function img_delete($alt = <span class="stringliteral">"Supprimer"</span>)
00233 {
00234 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/delete.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"Supprimer"</span>&gt;';
00235 }
00236
00237 function img_info($alt = <span class="stringliteral">"Informations"</span>)
00238 {
00239 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/info.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"Informations"</span>&gt;';
00240 }
00241
00242
00243 function img_edit($alt = <span class="stringliteral">"Modifier"</span>)
00244 {
00245 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/edit.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"Modifier"</span>&gt;';
00246 }
00247
00248 function img_phone_in($alt = <span class="stringliteral">"Modifier"</span>)
00249 {
00250 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/call.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00251 }
00252
00253 function img_phone_out($alt = <span class="stringliteral">"Modifier"</span>)
00254 {
00255 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/call_out.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00256 }
00257
00258
00259 function img_alerte($alt = <span class="stringliteral">"Alerte"</span>)
00260 {
00261 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/alerte.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00262 }
00263
00264
00265 function img_next($alt = <span class="stringliteral">"Suivant"</span>)
00266 {
00267 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/next.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00268 }
00269
00270 function img_previous($alt = <span class="stringliteral">"Précédent"</span>)
00271 {
00272 <span class="keywordflow">return</span> '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.MAIN_THEME.'/img/previous.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"'.$alt.'"</span> title=<span class="stringliteral">"'.$alt.'"</span>&gt;';
00273 }
00274
<a name="l00281"></a><a class="code" href="functions_8inc_8php.html#a21">00281</a> function <a class="code" href="functions_8inc_8php.html#a21">loginfunction</a>()
00282 {
00283 print '&lt;!DOCTYPE HTML PUBLIC <span class="stringliteral">"-//W3C//DTD HTML 4.01 Transitional//EN"</span> <span class="stringliteral">"http://www.w3.org/TR/html4/loose.dtd"</span>&gt;';
00284 print <span class="stringliteral">"\n&lt;html&gt;&lt;head&gt;&lt;title&gt;Dolibarr Authentification&lt;/title&gt;"</span>;
00285 print '&lt;style type=<span class="stringliteral">"text/css"</span>&gt;
00286 body {
00287 font-size:14px;
00288 font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
00289 background-color: #cac8c0;
00290 margin-left: 30%;
00291 margin-right: 30%;
00292 margin-top: 10%;
00293 margin-bottom: 1%;
00294 }
00295 div.main {
00296 background-color: white;
00297 text-align: left;
00298 border: solid black 1px;
00299 }
00300 div.main-inside {
00301 background-color: white;
00302 padding-left: 20px;
00303 padding-right: 50px;
00304 text-align: center;
00305 margin-bottom: 50px;
00306 margin-top: 30px;
00307 }
00308 div.footer {
00309 background-color: #dcdff4;
00310 font-size: 10px;
00311 border-top: solid black 1px;
00312 padding-left: 5px;
00313 text-align: center;
00314 }
00315 div.header {
00316 background-color: #dcdff4;
00317 border-bottom: solid black 1px;
00318 padding-left: 5px;
00319 text-align: center;
00320 }
00321 div.footer p {
00322 margin: 0px;
00323 }
00324 a:link,a:visited,a:active {
00325 text-decoration:none;
00326 color:blue;
00327 }
00328 a:hover {
00329 text-decoration:underline;
00330 color:blue;
00331 }
00332 &lt;/style&gt;
00333 &lt;meta http-equiv=<span class="stringliteral">"Content-Type"</span> content=<span class="stringliteral">"text/html; charset=iso-8859-15"</span>&gt;
00334 &lt;script language=<span class="stringliteral">"javascript"</span>&gt;
00335 function donnefocus(){
00336 document.identification.username.focus();
00337 }
00338 &lt;/script&gt;
00339 &lt;/head&gt;
00340 &lt;body onload=<span class="stringliteral">"donnefocus();"</span>&gt;
00341 &lt;div <span class="keyword">class</span>=<span class="stringliteral">"main"</span>&gt;
00342 &lt;div <span class="keyword">class</span>=<span class="stringliteral">"header"</span>&gt;';
00343 print 'Dolibarr '.DOL_VERSION;
00344 print '
00345 &lt;/div&gt;
00346 &lt;div <span class="keyword">class</span>=<span class="stringliteral">"main-inside"</span>&gt;
00347 ';
00348
00349 echo '&lt;form method=<span class="stringliteral">"post"</span> action=<span class="stringliteral">"' . $_SERVER['PHP_SELF'] . '"</span> name=<span class="stringliteral">"identification"</span>&gt;';
00350 print '&lt;table&gt;&lt;tr&gt;';
00351 print '&lt;td&gt;Login : &lt;/td&gt;&lt;td&gt;&lt;input type=<span class="stringliteral">"text"</span> name=<span class="stringliteral">"username"</span>&gt;&lt;/td&gt;&lt;/tr&gt;';;
00352 print '&lt;tr&gt;&lt;td&gt;Password : &lt;/td&gt;&lt;td&gt;&lt;input type=<span class="stringliteral">"password"</span> name=<span class="stringliteral">"password"</span>&gt;&lt;/td&gt;&lt;/tr&gt;';
00353
00354 echo '&lt;/table&gt;
00355 &lt;p align=<span class="stringliteral">"center"</span>&gt;&lt;input value=<span class="stringliteral">"Login"</span> type=<span class="stringliteral">"submit"</span>&gt;
00356 &lt;/form&gt;';
00357 }
00358
<a name="l00363"></a><a class="code" href="functions_8inc_8php.html#a22">00363</a> function <a class="code" href="functions_8inc_8php.html#a22">accessforbidden</a>()
00364 {
00365 llxHeader();
00366 print <span class="stringliteral">"Accés interdit"</span>;
00367 llxFooter();
00368 exit(0);
00369 }
00370
<a name="l00377"></a><a class="code" href="functions_8inc_8php.html#a23">00377</a> function <a class="code" href="functions_8inc_8php.html#a23">doliMoveFileUpload</a>($src_file, $dest_file)
00378 {
00379 $file_name = $dest_file;
00380
00381 <span class="keywordflow">if</span> (substr($file_name, strlen($file_name) -3 , 3) == 'php')
00382 {
00383 $file_name = $dest_file . <span class="stringliteral">".txt"</span>;
00384 }
00385
00386 <span class="keywordflow">return</span> move_uploaded_file($src_file, $file_name);
00387 }
00388
00389
00390 function dolibarr_user_page_param($db, &amp;$user)
00391 {
00392 foreach ($GLOBALS[<span class="stringliteral">"_GET"</span>] as $key=&gt;$value)
00393 {
00394 <span class="keywordflow">if</span> ($key == <span class="stringliteral">"sortfield"</span>)
00395 {
00396 $sql = <span class="stringliteral">"REPLACE INTO "</span>.MAIN_DB_PREFIX.<span class="stringliteral">"user_param "</span>;
00397 $sql .= <span class="stringliteral">" SET fk_user ="</span>.$user-&gt;id;
00398 $sql .= <span class="stringliteral">" ,page='"</span>.$GLOBALS[<span class="stringliteral">"SCRIPT_URL"</span>] . <span class="stringliteral">"'"</span>;
00399 $sql .= <span class="stringliteral">" ,param='sortfield'"</span>;
00400 $sql .= <span class="stringliteral">" ,value='"</span>.urlencode($value).<span class="stringliteral">"'"</span>;
00401
00402 $db-&gt;query($sql);
00403 $user-&gt;page_param[<span class="stringliteral">"sortfield"</span>] = $value;
00404 }
00405
00406 <span class="comment">// print $key . "=".$value . "&lt;br&gt;";</span>
00407
00408 <span class="keywordflow">if</span> ($key == <span class="stringliteral">"sortorder"</span>)
00409 {
00410 $sql = <span class="stringliteral">"REPLACE INTO "</span>.MAIN_DB_PREFIX.<span class="stringliteral">"user_param "</span>;
00411 $sql .= <span class="stringliteral">" SET fk_user ="</span>.$user-&gt;id;
00412 $sql .= <span class="stringliteral">" ,page='"</span>.$GLOBALS[<span class="stringliteral">"SCRIPT_URL"</span>] . <span class="stringliteral">"'"</span>;
00413 $sql .= <span class="stringliteral">" ,param='sortorder'"</span>;
00414 $sql .= <span class="stringliteral">" ,value='"</span>.urlencode($value).<span class="stringliteral">"'"</span>;
00415
00416 $db-&gt;query($sql);
00417 $user-&gt;page_param[<span class="stringliteral">"sortorder"</span>] = $value;
00418 }
00419 <span class="keywordflow">if</span> ($key == <span class="stringliteral">"begin"</span>)
00420 {
00421 $sql = <span class="stringliteral">"REPLACE INTO "</span>.MAIN_DB_PREFIX.<span class="stringliteral">"user_param "</span>;
00422 $sql .= <span class="stringliteral">" SET fk_user ="</span>.$user-&gt;id;
00423 $sql .= <span class="stringliteral">" ,page='"</span>.$GLOBALS[<span class="stringliteral">"SCRIPT_URL"</span>] . <span class="stringliteral">"'"</span>;
00424 $sql .= <span class="stringliteral">" ,param='begin'"</span>;
00425 $sql .= <span class="stringliteral">" ,value='"</span>.$value.<span class="stringliteral">"'"</span>;
00426
00427 $db-&gt;query($sql);
00428 $user-&gt;page_param[<span class="stringliteral">"begin"</span>] = $value;
00429 }
00430 <span class="keywordflow">if</span> ($key == <span class="stringliteral">"page"</span>)
00431 {
00432 $sql = <span class="stringliteral">"REPLACE INTO "</span>.MAIN_DB_PREFIX.<span class="stringliteral">"user_param "</span>;
00433 $sql .= <span class="stringliteral">" SET fk_user ="</span>.$user-&gt;id;
00434 $sql .= <span class="stringliteral">" ,page='"</span>.$GLOBALS[<span class="stringliteral">"SCRIPT_URL"</span>] . <span class="stringliteral">"'"</span>;
00435 $sql .= <span class="stringliteral">" ,param='page'"</span>;
00436 $sql .= <span class="stringliteral">" ,value='"</span>.$value.<span class="stringliteral">"'"</span>;
00437
00438 $db-&gt;query($sql);
00439 $user-&gt;page_param[<span class="stringliteral">"page"</span>] = $value;
00440 }
00441 }
00442 }
00443
<a name="l00451"></a><a class="code" href="functions_8inc_8php.html#a25">00451</a> function <a class="code" href="functions_8inc_8php.html#a25">transcoS2L</a>($zonein,$devise)
00452 {
00453 <span class="comment">// Open source offert par &lt;A HREF="mailto:alainfloch@free.fr?subject=chif2let"&gt;alainfloch@free.fr&lt;/A&gt; 28/10/2001, sans garantie.</span>
00454 <span class="comment">// début de la fonction de transcodification de somme en toutes lettres</span>
00455
00456 <span class="comment">/* $zonein = "123,56";</span>
00457 <span class="comment"> * $devise = "E"; // préciser F si francs , sinon ce sera de l'euro</span>
00458 <span class="comment"> * $r = transcoS2L($zonein,$devise); // appeler la fonction</span>
00459 <span class="comment"> * echo "résultat vaut $r&lt;br&gt;";</span>
00460 <span class="comment"> * $zonelettresM = strtoupper($r); // si vous voulez la même zone mais tout en majuscules</span>
00461 <span class="comment"> * echo "résultat en Majuscules vaut $zonelettresM&lt;br&gt;";</span>
00462 <span class="comment"> * $zonein = "1,01";</span>
00463 <span class="comment"> * $r = transcoS2L($zonein,$devise);</span>
00464 <span class="comment"> * echo "résultat vaut $r&lt;br&gt;";</span>
00465 <span class="comment"> */</span>
00466
00467
00468 <span class="keywordflow">if</span> ($devise == <span class="stringliteral">"F"</span>)
00469 {
00470 $unite_singulier = <span class="stringliteral">" franc "</span>;
00471 $unite_pluriel = <span class="stringliteral">" francs "</span>;
00472 $cent_singulier = <span class="stringliteral">" centime"</span>;
00473 }
00474 <span class="keywordflow">else</span>
00475 {
00476 $unite_singulier = <span class="stringliteral">" euro "</span>;
00477 $unite_pluriel = <span class="stringliteral">" euros "</span>;
00478 $cent_singulier = <span class="stringliteral">" centime"</span>;
00479 }
00480
00481 $arr1_99 = array(<span class="stringliteral">"zéro"</span>,<span class="stringliteral">"un"</span>,<span class="stringliteral">"deux"</span>,<span class="stringliteral">"trois"</span>,
00482 <span class="stringliteral">"quatre"</span>,<span class="stringliteral">"cinq"</span>,<span class="stringliteral">"six"</span>,<span class="stringliteral">"sept"</span>,
00483 <span class="stringliteral">"huit"</span>,<span class="stringliteral">"neuf"</span>,<span class="stringliteral">"dix"</span>,<span class="stringliteral">"onze"</span>,<span class="stringliteral">"douze"</span>,
00484 <span class="stringliteral">"treize"</span>,<span class="stringliteral">"quatorze"</span>,<span class="stringliteral">"quinze"</span>,<span class="stringliteral">"seize"</span>,
00485 <span class="stringliteral">"dix-sept"</span>,<span class="stringliteral">"dix-huit"</span>,<span class="stringliteral">"dix-neuf"</span>,<span class="stringliteral">"vingt "</span>);
00486
00487 $arr1_99[30] = <span class="stringliteral">"trente "</span>;
00488 $arr1_99[40] = <span class="stringliteral">"quarante "</span>;
00489 $arr1_99[50] = <span class="stringliteral">"cinquante "</span>;
00490 $arr1_99[60] = <span class="stringliteral">"soixante "</span>;
00491 $arr1_99[70] = <span class="stringliteral">"soixante-dix "</span>;
00492 $arr1_99[71] = <span class="stringliteral">"soixante et onze"</span>;
00493 $arr1_99[80] = <span class="stringliteral">"quatre-vingts "</span>;
00494 $i = 22;
00495 <span class="keywordflow">while</span> ($i &lt; 63) {<span class="comment">// initialise la table</span>
00496 $arr1_99[$i - 1] = $arr1_99[$i - 2].<span class="stringliteral">" et un"</span>;
00497 $j = 0;
00498 <span class="keywordflow">while</span> ($j &lt; 8) {
00499 $k = $i + $j;
00500 $arr1_99[$k] = $arr1_99[$i - 2].$arr1_99[$j + 2];
00501 $j++;
00502 }
00503 $i = $i + 10;
00504 } <span class="comment">// fin initialise la table</span>
00505
00506 $i = 12;
00507 <span class="keywordflow">while</span> ($i &lt; 20) {<span class="comment">// initialise la table (suite)</span>
00508 $j = 60 + $i;
00509 $arr1_99[$j] = <span class="stringliteral">"soixante-"</span>.$arr1_99[$i];
00510 $i++;
00511 } <span class="comment">// fin initialise la table (suite)</span>
00512
00513 $i = 1;
00514 <span class="keywordflow">while</span> ($i &lt; 20) {<span class="comment">// initialise la table (fin)</span>
00515 $j = 80 + $i;
00516 $arr1_99[$j] = <span class="stringliteral">"quatre-vingt-"</span>.$arr1_99[$i];
00517 $i++;
00518 } <span class="comment">// fin initialise la table (fin)</span>
00519 <span class="comment">// echo "Pour une valeur en entrée = $zonein&lt;br&gt;"; //pour ceux qui ne croient que ce qu'ils voient !</span>
00520 <span class="comment">// quelques petits controles s'imposent !! </span>
00521 $valid = <span class="stringliteral">"[a-zA-Z\&amp;\é\"\'\(\-\è\_\ç\à\)\=\;\:\!\*\$\^&lt;&gt;]"</span>;
00522 <span class="keywordflow">if</span> (ereg($valid,$zonein))
00523 {
00524 $r = <span class="stringliteral">"&lt;b&gt;la chaîne "</span>.$zonein.<span class="stringliteral">" n'est pas valide&lt;/b&gt;"</span>;
00525 <span class="keywordflow">return</span>($r);
00526 }
00527 $zone = explode(<span class="stringliteral">" "</span>,$zonein); <span class="comment">// supprimer les blancs séparateurs</span>
00528 $zonein = implode(<span class="stringliteral">""</span>,$zone); <span class="comment">// reconcatène la zone input</span>
00529 $zone = explode(<span class="stringliteral">"."</span>,$zonein); <span class="comment">// supprimer les points séparateurs</span>
00530 $zonein = implode(<span class="stringliteral">""</span>,$zone); <span class="comment">// reconcatène la zone input, ça c'est fort ! merci PHP</span>
00531 $virg = strpos($zonein,<span class="stringliteral">","</span>,1); <span class="comment">// à la poursuite de la virgule</span>
00532 $i = strlen($zonein); <span class="comment">// et de la longueur de la zone input</span>
00533 <span class="keywordflow">if</span> ($virg == 0) { <span class="comment">// ya pas de virgule</span>
00534 <span class="keywordflow">if</span> ($i &gt; 7)
00535 {
00536 $r = <span class="stringliteral">"&lt;b&gt;la chaîne "</span>.$zonein.<span class="stringliteral">" est trop longue (maxi = 9 millions)&lt;/b&gt;"</span>;
00537 <span class="keywordflow">return</span>($r);
00538 }
00539 $deb = 7 - $i;
00540 $zoneanaly = substr($zonechiffres,0,$deb).$zonein.<span class="stringliteral">",00"</span>;
00541 }
00542 <span class="keywordflow">else</span>
00543 { <span class="comment">//ya une virgule</span>
00544 $ti = explode(<span class="stringliteral">","</span>,$zonein); <span class="comment">// mettre de côté ce qu'il y a devant la virgule</span>
00545 $i = strlen($ti[0]); <span class="comment">// en controler la longueur</span>
00546 $zonechiffres = <span class="stringliteral">"0000000,00"</span>;
00547 <span class="keywordflow">if</span> ($i &gt; 7)
00548 {
00549 $r = <span class="stringliteral">"&lt;b&gt;la chaîne "</span>.$zonein.<span class="stringliteral">" est trop longue (maxi = 9 millions,00)&lt;/b&gt;"</span>;
00550 <span class="keywordflow">return</span>($r);
00551 }
00552 $deb = 7 - $i;
00553 $zoneanaly = substr($zonechiffres,0,$deb).$zonein;
00554 }
00555 $M= substr($zoneanaly,0,1);
00556 <span class="keywordflow">if</span> ($M != 0)
00557 { <span class="comment">// qui veut gagner des millions</span>
00558 $r = $arr1_99[$M].<span class="stringliteral">" million"</span>;
00559 <span class="keywordflow">if</span> ($M ==1) $r = $r.<span class="stringliteral">" "</span>;
00560 <span class="keywordflow">else</span> $r = $r.<span class="stringliteral">"s "</span>;
00561 <span class="keywordflow">if</span> (substr($zoneanaly,1,6)==0)
00562 {
00563 <span class="keywordflow">if</span> ($devise == <span class="charliteral">'F'</span>) $r = $r.<span class="stringliteral">" de "</span>;
00564 <span class="keywordflow">else</span> $r = $r.<span class="stringliteral">"d'"</span>;
00565 }
00566 }
00567 $CM= substr($zoneanaly,1,1);
00568 <span class="keywordflow">if</span> ($CM == 1)
00569 { <span class="comment">// qui veut gagner des centaines de mille</span>
00570 $r = $r.<span class="stringliteral">" cent "</span>;
00571 }
00572 <span class="keywordflow">else</span>
00573 { <span class="comment">// ya des centaines de mille</span>
00574 <span class="keywordflow">if</span> ($CM &gt; 1)
00575 {
00576 $r = $r. $arr1_99[$CM].<span class="stringliteral">" cent "</span>;
00577 }
00578 } <span class="comment">// fin du else ya des centaines de mille</span>
00579 $MM= substr($zoneanaly,2,2);
00580 <span class="keywordflow">if</span> (substr($zoneanaly,2,1)==0){ $MM = substr($zoneanaly,3,1);} <span class="comment">// enlever le zéro des milliers cause indexation</span>
00581 <span class="keywordflow">if</span> ($MM ==0 &amp;&amp; $CM &gt; 0)
00582 {
00583 $r = $r.<span class="stringliteral">"mille "</span>;
00584 }
00585 <span class="keywordflow">if</span> ($MM != 0)
00586 {
00587 <span class="keywordflow">if</span> ($MM == 80)
00588 {
00589 $r = $r.<span class="stringliteral">"quatre-vingt mille "</span>;
00590 }
00591 <span class="keywordflow">else</span>
00592 {
00593 <span class="keywordflow">if</span> ($MM &gt; 1 )
00594 {
00595 $r = $r.$arr1_99[$MM].<span class="stringliteral">" mille "</span>;
00596 }
00597 <span class="keywordflow">else</span>
00598 {
00599 <span class="keywordflow">if</span> ($CM == 0) $r = $r.<span class="stringliteral">" mille "</span>;
00600 <span class="keywordflow">else</span>
00601 {
00602 $r = $r.$arr1_99[$MM].<span class="stringliteral">" mille "</span>;
00603 }
00604 }
00605 }
00606 }
00607 $C2= substr($zoneanaly,5,2);
00608 <span class="keywordflow">if</span> (substr($zoneanaly,5,1)==0){ $C2 = substr($zoneanaly,6,1);} <span class="comment">// enlever le zéro des centaines cause indexation</span>
00609 $C1= substr($zoneanaly,4,1);
00610 <span class="keywordflow">if</span> ($C2 ==0 &amp;&amp; $C1 &gt; 1)
00611 {
00612 $r = $r.$arr1_99[$C1].<span class="stringliteral">" cents "</span>;
00613 }
00614 <span class="keywordflow">else</span>
00615 {
00616 <span class="keywordflow">if</span> ($C1 == 1) $r = $r.<span class="stringliteral">" cent "</span>;
00617 <span class="keywordflow">else</span>
00618 {
00619 <span class="keywordflow">if</span> ($C1 &gt; 1) $r = $r.$arr1_99[$C1].<span class="stringliteral">" cent "</span>;
00620 }
00621 }
00622 <span class="keywordflow">if</span> ($C2 != 0)
00623 {
00624 $r = $r.$arr1_99[$C2];
00625 }
00626 <span class="keywordflow">if</span> ($virg !=0)
00627 {
00628 <span class="keywordflow">if</span> ($ti[0] &gt; 1) $r = $r. $unite_pluriel; <span class="keywordflow">else</span> $r = <span class="stringliteral">"un "</span>.$unite_singulier;
00629 }
00630 <span class="keywordflow">else</span>
00631 {
00632 <span class="keywordflow">if</span> ($zonein &gt; 1) $r = $r.$unite_pluriel; <span class="keywordflow">else</span> $r = <span class="stringliteral">"un "</span>.$unite_singulier;
00633 }
00634 $UN= substr($zoneanaly,8,2);
00635 <span class="keywordflow">if</span> ($UN != <span class="stringliteral">"00"</span>)
00636 {
00637 $cts = $UN;
00638 <span class="keywordflow">if</span> (substr($UN,0,1)==0){ $cts = substr($UN,1,1);} <span class="comment">// enlever le zéro des centimes cause indexation</span>
00639 $r = $r.<span class="stringliteral">" et "</span>. $arr1_99[$cts].$cent_singulier;
00640 <span class="keywordflow">if</span> ($UN &gt; 1) $r =$r.<span class="stringliteral">"s"</span>; <span class="comment">// accorde au pluriel</span>
00641 }
00642 $r1 = ltrim($r); <span class="comment">// enleve quelques blancs possibles en début de zone</span>
00643 $r = ucfirst($r1); <span class="comment">// met le 1er caractère en Majuscule, c'est + zoli</span>
00644 <span class="keywordflow">return</span>($r); <span class="comment">// retourne le résultat</span>
00645 } <span class="comment">// fin fonction transcoS2L</span>
00646
<a name="l00658"></a><a class="code" href="functions_8inc_8php.html#a26">00658</a> function <a class="code" href="functions_8inc_8php.html#a26">print_liste_field_titre</a>($name, $file, $field, $begin=<span class="stringliteral">""</span>, $options=<span class="stringliteral">""</span>)
00659 {
00660 global $conf;
00661
00662 print $name.<span class="stringliteral">"&amp;nbsp;"</span>;
00663 print '&lt;a href=<span class="stringliteral">"'.$file.'?sortfield='.$field.'&amp;amp;sortorder=asc&amp;amp;begin='.$begin.$options.'"</span>&gt;';
00664 print '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.$conf-&gt;theme.'/img/1downarrow.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"A-Z"</span>&gt;&lt;/a&gt;';
00665 print '&lt;a href=<span class="stringliteral">"'.$file.'?sortfield='.$field.'&amp;amp;sortorder=desc&amp;amp;begin='.$begin.$options.'"</span>&gt;';
00666 print '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.$conf-&gt;theme.'/img/1uparrow.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"Z-A"</span>&gt;&lt;/a&gt;';
00667 }
00668
<a name="l00684"></a><a class="code" href="functions_8inc_8php.html#a27">00684</a> function <a class="code" href="functions_8inc_8php.html#a27">print_liste_field_titre_new</a>($name, $file, $field, $begin=<span class="stringliteral">""</span>, $options=<span class="stringliteral">""</span>, $td=<span class="stringliteral">""</span>, $sortfield=<span class="stringliteral">""</span>)
00685 {
00686 global $conf;
00687 <span class="keywordflow">if</span> ($sortfield == $field)
00688 {
00689 print '&lt;td <span class="keyword">class</span>=<span class="stringliteral">"menusel"</span> '. $td.<span class="charliteral">'&gt;'</span>;
00690 }
00691 <span class="keywordflow">else</span>
00692 {
00693 print '&lt;td '. $td.<span class="charliteral">'&gt;'</span>;
00694 }
00695 print $name.<span class="stringliteral">"&amp;nbsp;"</span>;
00696 print '&lt;a href=<span class="stringliteral">"'.$file.'?sortfield='.$field.'&amp;amp;sortorder=asc&amp;amp;begin='.$begin.$options.'"</span>&gt;';
00697 print '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.$conf-&gt;theme.'/img/1downarrow.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"A-Z"</span>&gt;&lt;/a&gt;';
00698 print '&lt;a href=<span class="stringliteral">"'.$file.'?sortfield='.$field.'&amp;amp;sortorder=desc&amp;amp;begin='.$begin.$options.'"</span>&gt;';
00699 print '&lt;img src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.$conf-&gt;theme.'/img/1uparrow.png"</span> border=<span class="stringliteral">"0"</span> alt=<span class="stringliteral">"Z-A"</span>&gt;&lt;/a&gt;';
00700 print <span class="stringliteral">"&lt;/td&gt;"</span>;
00701 }
00702
<a name="l00708"></a><a class="code" href="functions_8inc_8php.html#a28">00708</a> function <a class="code" href="functions_8inc_8php.html#a28">print_titre</a>($titre)
00709 {
00710 print '&lt;div <span class="keyword">class</span>=<span class="stringliteral">"titre"</span>&gt;'.$titre.'&lt;/div&gt;';
00711 }
00712
<a name="l00719"></a><a class="code" href="functions_8inc_8php.html#a29">00719</a> function <a class="code" href="functions_8inc_8php.html#a29">print_fiche_titre</a>($titre, $mesg='')
00720 {
00721 print <span class="stringliteral">"\n"</span>.'&lt;table width=<span class="stringliteral">"100%"</span> border=<span class="stringliteral">"0"</span> cellpadding=<span class="stringliteral">"3"</span> cellspacing=<span class="stringliteral">"0"</span>&gt;';
00722 print '&lt;tr&gt;&lt;td&gt;&lt;div <span class="keyword">class</span>=<span class="stringliteral">"titre"</span> valign=<span class="stringliteral">"middle"</span>&gt;'.$titre.'&lt;/div&gt;&lt;/td&gt;';
00723 <span class="keywordflow">if</span> (strlen($mesg))
00724 {
00725 print '&lt;td align=<span class="stringliteral">"right"</span> valign=<span class="stringliteral">"middle"</span>&gt;&lt;b&gt;'.$mesg.'&lt;/b&gt;&lt;/td&gt;';
00726 }
00727 print '&lt;/tr&gt;&lt;/table&gt;'.<span class="stringliteral">"\n"</span>;
00728 }
00729
<a name="l00735"></a><a class="code" href="functions_8inc_8php.html#a30">00735</a> function <a class="code" href="functions_8inc_8php.html#a30">dol_delete_file</a>($file)
00736 {
00737 <span class="keywordflow">return</span> unlink($file);
00738 }
00739
<a name="l00744"></a><a class="code" href="functions_8inc_8php.html#a31">00744</a> function <a class="code" href="functions_8inc_8php.html#a31">block_access</a>()
00745 {
00746 llxHeader();
00747 print <span class="stringliteral">"Accés refusé"</span>;
00748 llxFooter();
00749 }
00750
00751 <span class="comment">/*</span>
00752 <span class="comment"> *</span>
00753 <span class="comment"> *</span>
00754 <span class="comment"> */</span>
00755
00756 function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $form='', $num=-1)
00757 {
00758 global $conf;
00759
00760 <span class="keywordflow">if</span> ($num &gt; $conf-&gt;liste_limit or $num == -1)
00761 {
00762 $nextpage = 1;
00763 }
00764 <span class="keywordflow">else</span>
00765 {
00766 $nextpage = 0;
00767 }
00768
00769 print '&lt;table width=<span class="stringliteral">"100%"</span> border=<span class="stringliteral">"0"</span> cellpadding=<span class="stringliteral">"3"</span> cellspacing=<span class="stringliteral">"0"</span>&gt;';
00770
00771 <span class="keywordflow">if</span> ($page &gt; 0)
00772 {
00773 print '&lt;tr&gt;&lt;td&gt;&lt;div <span class="keyword">class</span>=<span class="stringliteral">"titre"</span>&gt;'.$titre.' - page '.($page+1).'&lt;/div&gt;&lt;/td&gt;';
00774 }
00775 <span class="keywordflow">else</span>
00776 {
00777 print '&lt;tr&gt;&lt;td&gt;&lt;div <span class="keyword">class</span>=<span class="stringliteral">"titre"</span>&gt;'.$titre.'&lt;/div&gt;&lt;/td&gt;';
00778 }
00779
00780 <span class="keywordflow">if</span> ($form)
00781 {
00782 print '&lt;td align=<span class="stringliteral">"left"</span>&gt;'.$form.'&lt;/td&gt;';
00783 }
00784
00785 print '&lt;td align=<span class="stringliteral">"right"</span>&gt;';
00786
00787 <span class="keywordflow">if</span> (strlen($sortfield))
00788 {
00789 $options .= <span class="stringliteral">"&amp;amp;sortfield=$sortfield"</span>;
00790 }
00791
00792 <span class="keywordflow">if</span> (strlen($sortorder))
00793 {
00794 $options .= <span class="stringliteral">"&amp;amp;sortorder=$sortorder"</span>;
00795 }
00796
00797 <span class="comment">// affichage des fleches de navigation</span>
00798
00799 <a class="code" href="functions_8inc_8php.html#a33">print_fleche_navigation</a>($page,$file,$options, $nextpage);
00800
00801 print '&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;';
00802 }
00803
<a name="l00812"></a><a class="code" href="functions_8inc_8php.html#a33">00812</a> function <a class="code" href="functions_8inc_8php.html#a33">print_fleche_navigation</a>($page,$file,$options='', $nextpage)
00813 {
00814 global $conf;
00815 <span class="keywordflow">if</span> ($page &gt; 0)
00816 {
00817 print '&lt;a href=<span class="stringliteral">"'.$file.'?page='.($page-1).$options.'"</span>&gt;&lt;img alt=<span class="stringliteral">"Page précédente"</span> src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.$conf-&gt;theme.'/img/1leftarrow.png"</span> border=<span class="stringliteral">"0"</span>&gt;&lt;/a&gt;';
00818 }
00819
00820 <span class="keywordflow">if</span> ($nextpage &gt; 0)
00821 {
00822 print '&lt;a href=<span class="stringliteral">"'.$file.'?page='.($page+1).$options.'"</span>&gt;&lt;img alt=<span class="stringliteral">"Page suivante"</span> src=<span class="stringliteral">"'.DOL_URL_ROOT.'/theme/'.$conf-&gt;theme.'/img/1rightarrow.png"</span> border=<span class="stringliteral">"0"</span>&gt;&lt;/a&gt;';
00823 }
00824 }
00825
<a name="l00832"></a><a class="code" href="functions_8inc_8php.html#a34">00832</a> function <a class="code" href="functions_8inc_8php.html#a34">print_oui_non</a>($value)
00833 {
00834 <span class="keywordflow">if</span> ($value)
00835 {
00836 print '&lt;option value=<span class="stringliteral">"0"</span>&gt;non';
00837 print '&lt;option value=<span class="stringliteral">"1"</span> selected&gt;oui';
00838 }
00839 <span class="keywordflow">else</span>
00840 {
00841 print '&lt;option value=<span class="stringliteral">"0"</span> selected&gt;non';
00842 print '&lt;option value=<span class="stringliteral">"1"</span>&gt;oui';
00843 }
00844 }
00845
<a name="l00852"></a><a class="code" href="functions_8inc_8php.html#a35">00852</a> function <a class="code" href="functions_8inc_8php.html#a35">print_date_select</a>($set_time='')
00853 {
00854 <span class="keywordflow">if</span> (! $set_time)
00855 {
00856 $set_time = time();
00857 }
00858
00859 $strmonth[1] = <span class="stringliteral">"Janvier"</span>;
00860 $strmonth[2] = <span class="stringliteral">"F&amp;eacute;vrier"</span>;
00861 $strmonth[3] = <span class="stringliteral">"Mars"</span>;
00862 $strmonth[4] = <span class="stringliteral">"Avril"</span>;
00863 $strmonth[5] = <span class="stringliteral">"Mai"</span>;
00864 $strmonth[6] = <span class="stringliteral">"Juin"</span>;
00865 $strmonth[7] = <span class="stringliteral">"Juillet"</span>;
00866 $strmonth[8] = <span class="stringliteral">"Ao&amp;ucirc;t"</span>;
00867 $strmonth[9] = <span class="stringliteral">"Septembre"</span>;
00868 $strmonth[10] = <span class="stringliteral">"Octobre"</span>;
00869 $strmonth[11] = <span class="stringliteral">"Novembre"</span>;
00870 $strmonth[12] = <span class="stringliteral">"D&amp;eacute;cembre"</span>;
00871
00872 $smonth = 1; $endmonth = 12;
00873 $sday = 1; $endday = 31;
00874
00875 $cday = date(<span class="stringliteral">"d"</span>, $set_time);
00876 $cmonth = date(<span class="stringliteral">"n"</span>, $set_time);
00877 $syear = date(<span class="stringliteral">"Y"</span>, $set_time);
00878
00879 print <span class="stringliteral">"&lt;select name=\"reday\"&gt;"</span>;
00880
00881 <span class="keywordflow">for</span> ($day = 1 ; $day &lt;= $endday ; $day++)
00882 {
00883 <span class="keywordflow">if</span> ($day == $cday)
00884 {
00885 print <span class="stringliteral">"&lt;option value=\"$day\" selected&gt;$day"</span>;
00886 }
00887 <span class="keywordflow">else</span>
00888 {
00889 print <span class="stringliteral">"&lt;option value=\"$day\"&gt;$day"</span>;
00890 }
00891 }
00892
00893 print <span class="stringliteral">"&lt;/select&gt;"</span>;
00894
00895
00896 print <span class="stringliteral">"&lt;select name=\"remonth\"&gt;"</span>;
00897 <span class="keywordflow">for</span> ($month = $smonth ; $month &lt;= $endmonth ; $month++)
00898 {
00899 <span class="keywordflow">if</span> ($month == $cmonth)
00900 {
00901 print <span class="stringliteral">"&lt;option value=\"$month\" selected&gt;"</span> . $strmonth[$month];
00902 }
00903 <span class="keywordflow">else</span>
00904 {
00905 print <span class="stringliteral">"&lt;option value=\"$month\"&gt;"</span> . $strmonth[$month];
00906 }
00907 }
00908 print <span class="stringliteral">"&lt;/select&gt;"</span>;
00909
00910 print <span class="stringliteral">"&lt;select name=\"reyear\"&gt;"</span>;
00911
00912 <span class="keywordflow">for</span> ($year = $syear - 2; $year &lt; $syear + 5 ; $year++)
00913 {
00914 <span class="keywordflow">if</span> ($year == $syear)
00915 {
00916 print <span class="stringliteral">"&lt;option value=\"$year\" SELECTED&gt;$year"</span>;
00917 }
00918 <span class="keywordflow">else</span>
00919 {
00920 print <span class="stringliteral">"&lt;option value=\"$year\"&gt;$year"</span>;
00921 }
00922 }
00923 print <span class="stringliteral">"&lt;/select&gt;\n"</span>;
00924
00925 }
<a name="l00935"></a><a class="code" href="functions_8inc_8php.html#a36">00935</a> function <a class="code" href="functions_8inc_8php.html#a36">print_heure_select</a>($prefix,$begin=1,$end=23) {
00936
00937 print '&lt;select name=<span class="stringliteral">"'.$prefix.'hour"</span>&gt;';
00938 <span class="keywordflow">for</span> ($hour = $begin ; $hour &lt;= $end ; $hour++) {
00939 print <span class="stringliteral">"&lt;option value=\"$hour\"&gt;$hour"</span>;
00940 }
00941 print <span class="stringliteral">"&lt;/select&gt;&amp;nbsp;H&amp;nbsp;"</span>;
00942 print '&lt;select name=<span class="stringliteral">"'.$prefix.'min"</span>&gt;';
00943 <span class="keywordflow">for</span> ($min = 0 ; $min &lt; 60 ; $min=$min+5) {
00944 <span class="keywordflow">if</span> ($min &lt; 10) {
00945 $min = <span class="stringliteral">"0"</span> . $min;
00946 }
00947 print <span class="stringliteral">"&lt;option value=\"$min\"&gt;$min"</span>;
00948 }
00949 print <span class="stringliteral">"&lt;/select&gt;\n"</span>;
00950 }
00951
<a name="l00957"></a><a class="code" href="functions_8inc_8php.html#a37">00957</a> function <a class="code" href="functions_8inc_8php.html#a37">print_duree_select</a>($prefix)
00958 {
00959 print '&lt;select name=<span class="stringliteral">"'.$prefix.'hour"</span>&gt;';
00960 print <span class="stringliteral">"&lt;option value=\"0\"&gt;0"</span>;
00961 print <span class="stringliteral">"&lt;option value=\"1\" SELECTED&gt;1"</span>;
00962
00963 <span class="keywordflow">for</span> ($hour = 2 ; $hour &lt; 13 ; $hour++)
00964 {
00965 print <span class="stringliteral">"&lt;option value=\"$hour\"&gt;$hour"</span>;
00966 }
00967 print <span class="stringliteral">"&lt;/select&gt;&amp;nbsp;H&amp;nbsp;"</span>;
00968 print '&lt;select name=<span class="stringliteral">"'.$prefix.'min"</span>&gt;';
00969 <span class="keywordflow">for</span> ($min = 0 ; $min &lt; 55 ; $min=$min+5)
00970 {
00971 print <span class="stringliteral">"&lt;option value=\"$min\"&gt;$min"</span>;
00972 }
00973 print <span class="stringliteral">"&lt;/select&gt;\n"</span>;
00974 }
00975
<a name="l00985"></a><a class="code" href="functions_8inc_8php.html#a38">00985</a> function <a class="code" href="functions_8inc_8php.html#a38">price</a>($amount, $html=0)
00986 {
00987 <span class="keywordflow">if</span> ($html)
00988 {
00989
00990 $dec=<span class="charliteral">'.'</span>; $thousand=<span class="charliteral">' '</span>;
00991 <span class="keywordflow">return</span> ereg_replace(<span class="charliteral">' '</span>,'&amp;nbsp;',number_format($amount, 2, $dec, $thousand));
00992
00993 }
00994 <span class="keywordflow">else</span>
00995 {
00996 <span class="keywordflow">return</span> number_format($amount, 2, <span class="charliteral">'.'</span>, <span class="charliteral">' '</span>);
00997 }
00998
00999 }
01000
<a name="l01007"></a><a class="code" href="functions_8inc_8php.html#a39">01007</a> function <a class="code" href="functions_8inc_8php.html#a39">francs</a>($euros)
01008 {
01009 <span class="keywordflow">return</span> <a class="code" href="functions_8inc_8php.html#a38">price</a>($euros * 6.55957);
01010 }
01011
<a name="l01018"></a><a class="code" href="functions_8inc_8php.html#a40">01018</a> function <a class="code" href="functions_8inc_8php.html#a40">tva</a>($euros, $taux=19.6)
01019 {
01020 $taux = $taux / 100 ;
01021
01022 <span class="keywordflow">return</span> sprintf(<span class="stringliteral">"%01.2f"</span>,($euros * $taux));
01023 }
01024
<a name="l01031"></a><a class="code" href="functions_8inc_8php.html#a41">01031</a> function <a class="code" href="functions_8inc_8php.html#a41">inctva</a>($euros, $taux=1.196)
01032 {
01033 <span class="keywordflow">return</span> sprintf(<span class="stringliteral">"%01.2f"</span>,($euros * $taux));
01034 }
01035
<a name="l01046"></a><a class="code" href="functions_8inc_8php.html#a42">01046</a> function <a class="code" href="functions_8inc_8php.html#a42">stat_print</a>($basename,$bc1,$bc2,$ftc, $jour) {
01047
01048 $db = pg_Connect(<span class="stringliteral">""</span>,<span class="stringliteral">""</span>,<span class="stringliteral">""</span>,<span class="stringliteral">""</span>,<span class="stringliteral">"$basename"</span>);
01049 <span class="keywordflow">if</span> (!$db) {
01050 echo <span class="stringliteral">"Pas de connexion a la base\n"</span>;
01051 exit ;
01052 }
01053
01054 $offset = $jour * 9;
01055
01056 $sql=<span class="stringliteral">"SELECT s.date, s.nb, l.libelle FROM stat_base as s, stat_cat as l WHERE s.cat = l.id ORDER by s.date DESC, s.cat ASC LIMIT 9 OFFSET $offset"</span>;
01057
01058 $result = $db-&gt;query($sql);
01059 <span class="keywordflow">if</span> (!$result) {
01060 print <span class="stringliteral">"Erreur SELECT&lt;br&gt;&lt;h1&gt;$sql&lt;/h1&gt;&lt;br&gt;"</span>;
01061 <span class="keywordflow">return</span> 1;
01062 }
01063
01064 print <span class="stringliteral">"&lt;table border=1 cellspacing=0 cellpadding=2&gt;"</span>;
01065 print <span class="stringliteral">"&lt;tr&gt;&lt;td&gt;&lt;font color=\"white\"&gt;base &lt;b&gt;$basename&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;"</span>;
01066 print <span class="stringliteral">"&lt;td&gt;&lt;font color=\"white\"&gt;libelle&lt;/font&gt;&lt;/td&gt;"</span>;
01067 print <span class="stringliteral">"&lt;/tr&gt;"</span>;
01068
01069 $num = $db-&gt;num_rows();
01070 $i = 0;
01071
01072 $tag = 1;
01073 <span class="keywordflow">while</span> ( $i &lt; $num) {
01074 $obj = $db-&gt;fetch_object( $i);
01075
01076 $tag = !$tag;
01077
01078 print <span class="stringliteral">"&lt;TR&gt;&lt;TD&gt;$obj-&gt;date&lt;/TD&gt;&lt;TD&gt;$obj-&gt;libelle&lt;/TD&gt;\n"</span>;
01079 print <span class="stringliteral">"&lt;TD align=\"center\"&gt;$obj-&gt;nb&lt;/TD&gt;&lt;/TR&gt;\n"</span>;
01080 $i++;
01081 }
01082 print <span class="stringliteral">"&lt;/TABLE&gt;"</span>;
01083 $db-&gt;free();
01084
01085 $db-&gt;close();
01086
01087 }
01088
01089 function tab_count($basename,$bc1,$bc2,$ftc) {
01090
01091 $db = pg_Connect(<span class="stringliteral">""</span>,<span class="stringliteral">""</span>,<span class="stringliteral">""</span>,<span class="stringliteral">""</span>,<span class="stringliteral">"$basename"</span>);
01092 <span class="keywordflow">if</span> (!$db) {
01093 echo <span class="stringliteral">"Pas de connexion a la base\n"</span>;
01094 exit ;
01095 }
01096
01097 $sql=<span class="stringliteral">"SELECT count(*) AS nbcv from candidat WHERE active=1"</span>;
01098 $result = $db-&gt;query($sql);
01099 <span class="keywordflow">if</span> (!$result) {
01100 print <span class="stringliteral">"Erreur SELECT&lt;br&gt;&lt;h1&gt;$sql&lt;/h1&gt;&lt;br&gt;"</span>;
01101 <span class="keywordflow">return</span> 1;
01102 }
01103 print <span class="stringliteral">"&lt;table border=0 bgcolor=black cellspacing=0 cellpadding=0&gt;&lt;tr&gt;&lt;td&gt;"</span>;
01104
01105 print <span class="stringliteral">"&lt;table border=0 cellspacing=1 cellpadding=1&gt;"</span>;
01106 print <span class="stringliteral">"&lt;tr&gt;&lt;td&gt;&lt;font color=\"white\"&gt;base &lt;b&gt;$basename&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;"</span>;
01107 print <span class="stringliteral">"&lt;td&gt;&lt;font color=\"white\"&gt;libelle&lt;/font&gt;&lt;/td&gt;"</span>;
01108 print <span class="stringliteral">"&lt;/tr&gt;"</span>;
01109 $nbcv = $db-&gt;result( $i, <span class="stringliteral">"nbcv"</span>);
01110
01111 print <span class="stringliteral">"&lt;tr $bc1&gt;&lt;td&gt;&lt;b&gt;$ftc Nombre de CV&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;\n"</span>;
01112 print <span class="stringliteral">"&lt;td align=\"center\"&gt;$ftc $nbcv&lt;/td&gt;\n"</span>;
01113 print <span class="stringliteral">"&lt;/tr&gt;\n"</span>;
01114 $db-&gt;free();
01115
01116 $sql=<span class="stringliteral">"SELECT count(*) AS nbcv from offre WHERE active=1"</span>;
01117
01118 $result = $db-&gt;query($sql);
01119 <span class="keywordflow">if</span> (!$result) {
01120 print <span class="stringliteral">"Erreur SELECT&lt;br&gt;&lt;h1&gt;$sql&lt;/h1&gt;&lt;br&gt;"</span>;
01121 }
01122 $nbcv = $db-&gt;result( $i, <span class="stringliteral">"nbcv"</span>);
01123
01124 print <span class="stringliteral">"&lt;tr $bc2&gt;&lt;td&gt;&lt;b&gt;$ftc Nombre d'offre&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;"</span>;
01125 print <span class="stringliteral">"&lt;td align=\"center\"&gt;$ftc $nbcv&lt;/td&gt;"</span>;
01126 print <span class="stringliteral">"&lt;/tr&gt;"</span>;
01127
01128 $db-&gt;free();
01129
01130
01131 $sql=<span class="stringliteral">"SELECT count(*) AS nbcv from candidat WHERE active=0"</span>;
01132
01133 $result = $db-&gt;query($sql);
01134 <span class="keywordflow">if</span> (!$result) {
01135 print <span class="stringliteral">"Erreur SELECT&lt;br&gt;&lt;h1&gt;$sql&lt;/h1&gt;&lt;br&gt;"</span>;
01136 }
01137
01138 $nbcv = $db-&gt;result( $i, <span class="stringliteral">"nbcv"</span>);
01139
01140 print <span class="stringliteral">"&lt;tr $bc1&gt;&lt;td&gt;&lt;b&gt;$ftc Nombre de CV inactifs&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;\n"</span>;
01141 print <span class="stringliteral">"&lt;td align=\"center\"&gt;$ftc $nbcv&lt;/td&gt;"</span>;
01142 print <span class="stringliteral">"&lt;/tr&gt;"</span>;
01143
01144 $db-&gt;free();
01145
01146
01147 $sql=<span class="stringliteral">"SELECT count(*) AS nbcv from offre WHERE active=0"</span>;
01148
01149 $result = $db-&gt;query($sql);
01150 <span class="keywordflow">if</span> (!$result) {
01151 print <span class="stringliteral">"Erreur SELECT&lt;br&gt;&lt;h1&gt;$sql&lt;/h1&gt;&lt;br&gt;"</span>;
01152 }
01153
01154 $nbcv = $db-&gt;result( $i, <span class="stringliteral">"nbcv"</span>);
01155
01156 print <span class="stringliteral">"&lt;tr $bc2&gt;&lt;td&gt;&lt;b&gt;$ftc Nombre d'offres inactives&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;\n"</span>;
01157 print <span class="stringliteral">"&lt;td align=\"center\"&gt;$ftc $nbcv&lt;/td&gt;\n"</span>;
01158 print <span class="stringliteral">"&lt;/tr&gt;\n"</span>;
01159
01160 $db-&gt;free();
01161
01162 $sql=<span class="stringliteral">"SELECT count(*) AS nbsoc from logsoc"</span>;
01163
01164 $result = $db-&gt;query($sql);
01165 <span class="keywordflow">if</span> (!$result) {
01166 print <span class="stringliteral">"Erreur SELECT&lt;br&gt;&lt;h1&gt;$sql&lt;/h1&gt;&lt;br&gt;"</span>;
01167 }
01168
01169 $nbsoc = $db-&gt;result( $i, <span class="stringliteral">"nbsoc"</span>);
01170
01171 print <span class="stringliteral">"&lt;tr $bc1&gt;&lt;td&gt;&lt;b&gt;$ftc Nombre de logins societes&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;\n"</span>;
01172 print <span class="stringliteral">"&lt;td align=\"center\"&gt;$ftc $nbsoc&lt;/td&gt;"</span>;
01173 print <span class="stringliteral">"&lt;/tr&gt;"</span>;
01174
01175 print <span class="stringliteral">"&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;"</span>;
01176
01177 $db-&gt;close();
01178
01179 }
01180
<a name="l01188"></a><a class="code" href="functions_8inc_8php.html#a44">01188</a> function <a class="code" href="functions_8inc_8php.html#a44">logfile</a>($str,$log=<span class="stringliteral">"/var/log/dolibarr/dolibarr.log"</span>)
01189 {
01190 <span class="keywordflow">if</span> (defined(<span class="stringliteral">"MAIN_DEBUG"</span>) &amp;&amp; MAIN_DEBUG ==1)
01191 {
01192 <span class="keywordflow">if</span> (!file_exists($log))
01193 {
01194 <span class="keywordflow">if</span> (!$file=fopen($log,<span class="stringliteral">"w"</span>))
01195 {
01196 <span class="keywordflow">return</span> 0;
01197 }
01198 }
01199 <span class="keywordflow">else</span>
01200 {
01201 <span class="keywordflow">if</span> (!$file=fopen($log,<span class="stringliteral">"a+"</span>))
01202 {
01203 <span class="keywordflow">return</span> 0;
01204 }
01205 }
01206 $logentry=date(<span class="stringliteral">"[d/M/Y:H:i:s] "</span>).$str.<span class="stringliteral">"\n"</span>;
01207 <span class="keywordflow">if</span>(!fwrite($file,$logentry)) {
01208 fclose($file);
01209 <span class="keywordflow">return</span> 0;
01210 }
01211 fclose($file);
01212 <span class="keywordflow">return</span> 1;
01213 }
01214 }
01215
<a name="l01224"></a><a class="code" href="functions_8inc_8php.html#a45">01224</a> function <a class="code" href="functions_8inc_8php.html#a45">creer_pass_aleatoire</a>($longueur = 8, $sel = <span class="stringliteral">""</span>) {
01225 $seed = (<span class="keywordtype">double</span>) (microtime() + 1) * time();
01226 srand($seed);
01227
01228 <span class="keywordflow">for</span> ($i = 0; $i &lt; $longueur; $i++) {
01229 <span class="keywordflow">if</span> (!$s) {
01230 <span class="keywordflow">if</span> (!$s) $s = rand();
01231 $s = substr(md5(uniqid($s).$sel), 0, 16);
01232 }
01233 $r = unpack(<span class="stringliteral">"Cr"</span>, pack(<span class="stringliteral">"H2"</span>, $s.$s));
01234 $x = $r[<span class="charliteral">'r'</span>] &amp; 63;
01235 <span class="keywordflow">if</span> ($x &lt; 10) $x = chr($x + 48);
01236 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ($x &lt; 36) $x = chr($x + 55);
01237 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ($x &lt; 62) $x = chr($x + 61);
01238 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ($x == 63) $x = <span class="charliteral">'/'</span>;
01239 <span class="keywordflow">else</span> $x = <span class="charliteral">'.'</span>;
01240 $pass .= $x;
01241 $s = substr($s, 2);
01242 }
01243 <span class="keywordflow">return</span> $pass;
01244 }
01245
<a name="l01251"></a><a class="code" href="functions_8inc_8php.html#a46">01251</a> function <a class="code" href="functions_8inc_8php.html#a46">initialiser_sel</a>() {
01252 global $htsalt;
01253
01254 $htsalt = '$1$'.creer_pass_aleatoire();
01255 }
01256
01257 ?&gt;
</div></pre><hr size="1"><address style="align: right;"><small>Généré le Fri Jul 16 00:31:06 2004 pour dolibarr par
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.7 </small></address>
</body>
</html>