commit
6ecc6b8b48
20
ChangeLog
20
ChangeLog
@ -2,6 +2,18 @@
|
||||
English Dolibarr ChangeLog
|
||||
--------------------------------------------------------------
|
||||
|
||||
|
||||
***** ChangeLog for 9.0.0 compared to 8.0.0 *****
|
||||
|
||||
For Users:
|
||||
NEW: Stable module: Website
|
||||
NEW: Stable module: WebDAV
|
||||
NEW: Stable module: Module Builder
|
||||
NEW: Dolibarr can provide information in page title when multicompany is enabled of not, making
|
||||
Android application like DoliDroid able to provide native features for multicompany module
|
||||
|
||||
|
||||
|
||||
***** ChangeLog for 8.0.0 compared to 7.0.0 *****
|
||||
|
||||
For Users:
|
||||
@ -10,11 +22,11 @@ NEW: Experimental module: WebDAV
|
||||
NEW: Accept anonymous events (no user assigned)
|
||||
NEW: Accountancy - Add import on general ledger
|
||||
NEW: Accountancy - Show journal name on journal page and hide button draft export (Add an option in admin)
|
||||
NEW: Can create event from record card of a company and member
|
||||
NEW: Add a button to create Stripe customer from the Payment mode tab
|
||||
NEW: Can create event from record card of a company and/or member
|
||||
NEW: Add a button to create Stripe customer from the customer Payment mode tab
|
||||
NEW: Add accounting account number on product tooltip
|
||||
NEW: add any predefined mail content
|
||||
NEW: Add arrows to navigate into containers in website module
|
||||
NEW: Add any predefined mail content
|
||||
NEW: Add arrows to navigate into containers in experimental website module
|
||||
NEW: Add a tab to specify accountant/auditor of the company
|
||||
NEW: Add Date delivery and Availability on Propals List
|
||||
NEW: Add date in goods reception supplier order table
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
<exclude-pattern type="relative">*/nltechno*</exclude-pattern>
|
||||
<exclude-pattern type="relative">*/htdocs/includes</exclude-pattern>
|
||||
<exclude-pattern type="relative">*.min.css</exclude-pattern>
|
||||
<exclude-pattern type="relative">*.js</exclude-pattern>
|
||||
|
||||
<!-- List of all tests -->
|
||||
|
||||
@ -157,7 +158,7 @@
|
||||
<!-- Disabled as this does not support tab -->
|
||||
<!-- <rule ref="Generic.WhiteSpace.ScopeIndent" /> -->
|
||||
|
||||
|
||||
<rule ref="Squiz.Functions.MultiLineFunctionDeclaration" />
|
||||
|
||||
<!-- Rules from PEAR Standard -->
|
||||
|
||||
|
||||
@ -359,7 +359,8 @@ class AccountancyCategory // extends CommonObject
|
||||
* @param int $id Id
|
||||
* @return int <0 if KO, 0 if not found, >0 if OK
|
||||
*/
|
||||
public function display($id) {
|
||||
public function display($id)
|
||||
{
|
||||
global $conf;
|
||||
$sql = "SELECT t.rowid, t.account_number, t.label";
|
||||
$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account as t";
|
||||
@ -394,7 +395,8 @@ class AccountancyCategory // extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, 0 if not found, >0 if OK
|
||||
*/
|
||||
public function getCptBK($id) {
|
||||
public function getCptBK($id)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$sql = "SELECT t.numero_compte, t.label_operation, t.doc_ref";
|
||||
@ -442,8 +444,9 @@ class AccountancyCategory // extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, 0 if not found, >0 if OK
|
||||
*/
|
||||
public function getAccountsWithNoCategory($id) {
|
||||
global $conf;
|
||||
public function getAccountsWithNoCategory($id)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$sql = "SELECT aa.account_number as numero_compte, aa.label as label_compte";
|
||||
$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account as aa";
|
||||
@ -485,7 +488,8 @@ class AccountancyCategory // extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function updateAccAcc($id_cat, $cpts = array()) {
|
||||
public function updateAccAcc($id_cat, $cpts = array())
|
||||
{
|
||||
global $conf;
|
||||
$error = 0;
|
||||
|
||||
@ -548,7 +552,8 @@ class AccountancyCategory // extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function deleteCptCat($cpt_id) {
|
||||
public function deleteCptCat($cpt_id)
|
||||
{
|
||||
$error = 0;
|
||||
|
||||
$sql = "UPDATE " . MAIN_DB_PREFIX . "accounting_account as aa";
|
||||
|
||||
@ -55,11 +55,11 @@ class AccountancyExport
|
||||
public static $EXPORT_TYPE_AGIRIS = 9;
|
||||
public static $EXPORT_TYPE_CONFIGURABLE = 10;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array ();
|
||||
public $errors = array();
|
||||
|
||||
/**
|
||||
*
|
||||
@ -78,7 +78,8 @@ class AccountancyExport
|
||||
*
|
||||
* @param DoliDb $db Database handler
|
||||
*/
|
||||
public function __construct(DoliDB &$db) {
|
||||
public function __construct(DoliDB &$db)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$this->db = &$db;
|
||||
@ -91,7 +92,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return array of type
|
||||
*/
|
||||
public static function getType() {
|
||||
public static function getType()
|
||||
{
|
||||
global $langs;
|
||||
|
||||
return array (
|
||||
@ -113,7 +115,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return array of type
|
||||
*/
|
||||
public static function getTypeConfig() {
|
||||
public static function getTypeConfig()
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
return array (
|
||||
@ -175,7 +178,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public static function downloadFile() {
|
||||
public static function downloadFile()
|
||||
{
|
||||
global $conf;
|
||||
$filename = 'general_ledger';
|
||||
include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php';
|
||||
@ -187,7 +191,8 @@ class AccountancyExport
|
||||
* @param unknown $TData data
|
||||
* @return void
|
||||
*/
|
||||
public function export(&$TData) {
|
||||
public function export(&$TData)
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
self::downloadFile();
|
||||
@ -236,7 +241,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportNormal($objectLines) {
|
||||
public function exportNormal($objectLines)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
foreach ( $objectLines as $line ) {
|
||||
@ -260,7 +266,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportCegid($objectLines) {
|
||||
public function exportCegid($objectLines)
|
||||
{
|
||||
foreach ( $objectLines as $line ) {
|
||||
$date = dol_print_date($line->doc_date, '%d%m%Y');
|
||||
$separator = ";";
|
||||
@ -285,7 +292,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportCogilog($objectLines) {
|
||||
public function exportCogilog($objectLines)
|
||||
{
|
||||
foreach ( $objectLines as $line ) {
|
||||
$date = dol_print_date($line->doc_date, '%d%m%Y');
|
||||
$separator = ";";
|
||||
@ -318,7 +326,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportCoala($objectLines) {
|
||||
public function exportCoala($objectLines)
|
||||
{
|
||||
// Coala export
|
||||
$separator = ";";
|
||||
$end_line = "\n";
|
||||
@ -345,7 +354,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportBob50($objectLines) {
|
||||
public function exportBob50($objectLines)
|
||||
{
|
||||
|
||||
// Bob50
|
||||
$separator = ";";
|
||||
@ -383,7 +393,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportCiel(&$TData) {
|
||||
public function exportCiel(&$TData)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$end_line ="\r\n";
|
||||
@ -423,7 +434,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportQuadratus(&$TData) {
|
||||
public function exportQuadratus(&$TData)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$end_line ="\r\n";
|
||||
@ -506,7 +518,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportEbp($objectLines) {
|
||||
public function exportEbp($objectLines)
|
||||
{
|
||||
|
||||
$separator = ',';
|
||||
$end_line = "\n";
|
||||
@ -538,7 +551,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportAgiris($objectLines) {
|
||||
public function exportAgiris($objectLines)
|
||||
{
|
||||
|
||||
$separator = ';';
|
||||
$end_line = "\n";
|
||||
@ -575,7 +589,8 @@ class AccountancyExport
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function exportConfigurable($objectLines) {
|
||||
public function exportConfigurable($objectLines)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
foreach ($objectLines as $line) {
|
||||
@ -605,7 +620,8 @@ class AccountancyExport
|
||||
* @param integer $size data
|
||||
* @return string
|
||||
*/
|
||||
public static function trunc($str, $size) {
|
||||
public static function trunc($str, $size)
|
||||
{
|
||||
return dol_trunc($str, $size, 'right', 'UTF-8', 1);
|
||||
}
|
||||
}
|
||||
|
||||
@ -29,7 +29,11 @@
|
||||
class AccountancySystem
|
||||
{
|
||||
var $db;
|
||||
var $error;
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
var $rowid;
|
||||
var $fk_pcg_version;
|
||||
var $pcg_type;
|
||||
@ -43,7 +47,8 @@ class AccountancySystem
|
||||
*
|
||||
* @param DoliDB $db handler
|
||||
*/
|
||||
function __construct($db) {
|
||||
function __construct($db)
|
||||
{
|
||||
$this->db = $db;
|
||||
}
|
||||
|
||||
@ -102,7 +107,8 @@ class AccountancySystem
|
||||
* @param User $user making insert
|
||||
* @return int if KO, Id of line if OK
|
||||
*/
|
||||
function create($user) {
|
||||
function create($user)
|
||||
{
|
||||
$now = dol_now();
|
||||
|
||||
$sql = "INSERT INTO " . MAIN_DB_PREFIX . "accounting_system";
|
||||
@ -130,4 +136,4 @@ class AccountancySystem
|
||||
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -46,8 +46,18 @@ class AccountingAccount extends CommonObject
|
||||
public $restrictiononfksoc = 1;
|
||||
|
||||
var $db;
|
||||
var $error;
|
||||
var $errors;
|
||||
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
var $id;
|
||||
var $rowid;
|
||||
var $datec; // Creation date
|
||||
@ -69,7 +79,8 @@ class AccountingAccount extends CommonObject
|
||||
*
|
||||
* @param DoliDB $db Database handle
|
||||
*/
|
||||
function __construct($db) {
|
||||
function __construct($db)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$this->db = $db;
|
||||
@ -146,7 +157,8 @@ class AccountingAccount extends CommonObject
|
||||
* @param int $notrigger Disable triggers
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function create($user, $notrigger = 0) {
|
||||
function create($user, $notrigger = 0)
|
||||
{
|
||||
global $conf;
|
||||
$error = 0;
|
||||
$now = dol_now();
|
||||
@ -297,7 +309,8 @@ class AccountingAccount extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function checkUsage() {
|
||||
function checkUsage()
|
||||
{
|
||||
global $langs;
|
||||
|
||||
$sql = "(SELECT fk_code_ventilation FROM " . MAIN_DB_PREFIX . "facturedet";
|
||||
@ -330,7 +343,8 @@ class AccountingAccount extends CommonObject
|
||||
* @param int $notrigger 0=triggers after, 1=disable triggers
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function delete($user, $notrigger = 0) {
|
||||
function delete($user, $notrigger = 0)
|
||||
{
|
||||
$error = 0;
|
||||
|
||||
$result = $this->checkUsage();
|
||||
@ -457,7 +471,8 @@ class AccountingAccount extends CommonObject
|
||||
* @param int $id of record
|
||||
* @return void
|
||||
*/
|
||||
function info($id) {
|
||||
function info($id)
|
||||
{
|
||||
$sql = 'SELECT a.rowid, a.datec, a.fk_user_author, a.fk_user_modif, a.tms';
|
||||
$sql .= ' FROM ' . MAIN_DB_PREFIX . 'accounting_account as a';
|
||||
$sql .= ' WHERE a.rowid = ' . $id;
|
||||
@ -494,7 +509,8 @@ class AccountingAccount extends CommonObject
|
||||
* @param int $id Id
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function account_desactivate($id) {
|
||||
function account_desactivate($id)
|
||||
{
|
||||
$result = $this->checkUsage();
|
||||
|
||||
if ($result > 0) {
|
||||
@ -526,7 +542,8 @@ class AccountingAccount extends CommonObject
|
||||
* @param int $id Id
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function account_activate($id) {
|
||||
function account_activate($id)
|
||||
{
|
||||
$this->db->begin();
|
||||
|
||||
$sql = "UPDATE " . MAIN_DB_PREFIX . "accounting_account ";
|
||||
|
||||
@ -46,7 +46,8 @@ class AccountingJournal extends CommonObject
|
||||
*
|
||||
* @param DoliDB $db Database handle
|
||||
*/
|
||||
function __construct($db) {
|
||||
function __construct($db)
|
||||
{
|
||||
$this->db = $db;
|
||||
}
|
||||
|
||||
@ -117,7 +118,8 @@ class AccountingJournal extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function fetchAll($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND') {
|
||||
function fetchAll($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND')
|
||||
{
|
||||
$sql = "SELECT rowid, code, label, nature, active";
|
||||
$sql .= ' FROM ' . MAIN_DB_PREFIX . $this->table_element . ' as t';
|
||||
// Manage filter
|
||||
|
||||
@ -88,7 +88,8 @@ class BookKeeping extends CommonObject
|
||||
*
|
||||
* @param DoliDb $db Database handler
|
||||
*/
|
||||
public function __construct(DoliDB $db) {
|
||||
public function __construct(DoliDB $db)
|
||||
{
|
||||
$this->db = $db;
|
||||
}
|
||||
|
||||
@ -99,7 +100,8 @@ class BookKeeping extends CommonObject
|
||||
* @param bool $notrigger false=launch triggers after, true=disable triggers
|
||||
* @return int <0 if KO, Id of created object if OK
|
||||
*/
|
||||
public function create(User $user, $notrigger = false) {
|
||||
public function create(User $user, $notrigger = false)
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
@ -420,7 +422,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $mode Mode
|
||||
* @return int <0 if KO, Id of created object if OK
|
||||
*/
|
||||
public function createStd(User $user, $notrigger = false, $mode='') {
|
||||
public function createStd(User $user, $notrigger = false, $mode='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
@ -590,7 +593,8 @@ class BookKeeping extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, 0 if not found, >0 if OK
|
||||
*/
|
||||
public function fetch($id, $ref = null, $mode='') {
|
||||
public function fetch($id, $ref = null, $mode='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
@ -687,7 +691,8 @@ class BookKeeping extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, >=0 if OK
|
||||
*/
|
||||
public function fetchAllByAccount($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND') {
|
||||
public function fetchAllByAccount($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
@ -811,7 +816,8 @@ class BookKeeping extends CommonObject
|
||||
*
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function fetchAll($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND') {
|
||||
public function fetchAll($sortorder = '', $sortfield = '', $limit = 0, $offset = 0, array $filter = array(), $filtermode = 'AND')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
@ -1016,7 +1022,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $mode Mode
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function update(User $user, $notrigger = false, $mode='') {
|
||||
public function update(User $user, $notrigger = false, $mode='')
|
||||
{
|
||||
$error = 0;
|
||||
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
@ -1185,7 +1192,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $mode Mode
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function delete(User $user, $notrigger = false, $mode='') {
|
||||
public function delete(User $user, $notrigger = false, $mode='')
|
||||
{
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
|
||||
$error = 0;
|
||||
@ -1234,7 +1242,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $importkey Import key
|
||||
* @return int Result
|
||||
*/
|
||||
function deleteByImportkey($importkey) {
|
||||
function deleteByImportkey($importkey)
|
||||
{
|
||||
$this->db->begin();
|
||||
|
||||
// first check if line not yet in bookkeeping
|
||||
@ -1263,7 +1272,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $mode Mode
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function deleteByYearAndJournal($delyear='', $journal='', $mode='') {
|
||||
function deleteByYearAndJournal($delyear='', $journal='', $mode='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
if (empty($delyear) && empty($journal))
|
||||
@ -1302,7 +1312,8 @@ class BookKeeping extends CommonObject
|
||||
* @param int $piecenum Piecenum to delete
|
||||
* @return int Result
|
||||
*/
|
||||
function deleteMvtNum($piecenum) {
|
||||
function deleteMvtNum($piecenum)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$this->db->begin();
|
||||
@ -1336,7 +1347,8 @@ class BookKeeping extends CommonObject
|
||||
*
|
||||
* @return int New id of clone
|
||||
*/
|
||||
public function createFromClone($fromid) {
|
||||
public function createFromClone($fromid)
|
||||
{
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
|
||||
global $user;
|
||||
@ -1381,7 +1393,8 @@ class BookKeeping extends CommonObject
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function initAsSpecimen() {
|
||||
public function initAsSpecimen()
|
||||
{
|
||||
global $user;
|
||||
|
||||
$now=dol_now();
|
||||
@ -1417,7 +1430,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $mode Mode
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function fetchPerMvt($piecenum, $mode='') {
|
||||
public function fetchPerMvt($piecenum, $mode='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$sql = "SELECT piece_num,doc_date,code_journal,journal_label,doc_ref,doc_type,date_creation";
|
||||
@ -1481,7 +1495,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $mode Mode
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function fetchAllPerMvt($piecenum, $mode='') {
|
||||
function fetchAllPerMvt($piecenum, $mode='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$sql = "SELECT rowid, doc_date, doc_type,";
|
||||
@ -1539,7 +1554,8 @@ class BookKeeping extends CommonObject
|
||||
* @param string $model Model
|
||||
* @return int Result
|
||||
*/
|
||||
function export_bookkeping($model = 'ebp') {
|
||||
function export_bookkeping($model = 'ebp')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$sql = "SELECT rowid, doc_date, doc_type,";
|
||||
@ -1696,7 +1712,8 @@ class BookKeeping extends CommonObject
|
||||
* @param int $aabase Set accounting_account base class to display empty=all or from 1 to 8 will display only account beginning by this number
|
||||
* @return string String with HTML select
|
||||
*/
|
||||
function select_account($selectid, $htmlname = 'account', $showempty = 0, $event = array(), $select_in = 0, $select_out = 0, $aabase = '') {
|
||||
function select_account($selectid, $htmlname = 'account', $showempty = 0, $event = array(), $select_in = 0, $select_out = 0, $aabase = '')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php';
|
||||
|
||||
@ -41,10 +41,16 @@ abstract class ActionsAdherentCardCommon
|
||||
var $tpl = array();
|
||||
//! Object container
|
||||
var $object;
|
||||
//! Error string
|
||||
var $error;
|
||||
//! Error array
|
||||
var $errors=array();
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -91,7 +91,8 @@ class Members extends DolibarrApi
|
||||
*
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $typeid = '', $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $typeid = '', $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -293,7 +294,8 @@ class Members extends DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
|
||||
@ -31,7 +31,7 @@ class MembersTypes extends DolibarrApi
|
||||
* @var array $FIELDS Mandatory fields, checked when create and update object
|
||||
*/
|
||||
static $FIELDS = array(
|
||||
'label'
|
||||
'label',
|
||||
);
|
||||
|
||||
/**
|
||||
@ -86,7 +86,8 @@ class MembersTypes extends DolibarrApi
|
||||
*
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -271,7 +272,8 @@ class MembersTypes extends DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
|
||||
@ -34,7 +34,7 @@ class Subscriptions extends DolibarrApi
|
||||
'fk_adherent',
|
||||
'dateh',
|
||||
'datef',
|
||||
'amount'
|
||||
'amount',
|
||||
);
|
||||
|
||||
/**
|
||||
@ -85,7 +85,8 @@ class Subscriptions extends DolibarrApi
|
||||
*
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "dateadh", $sortorder = 'ASC', $limit = 100, $page = 0, $sqlfilters = '') {
|
||||
function index($sortfield = "dateadh", $sortorder = 'ASC', $limit = 100, $page = 0, $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
|
||||
@ -69,7 +69,8 @@ class PrestaShopWebservice
|
||||
* @param string $key Authentification key
|
||||
* @param mixed $debug Debug mode Activated (true) or deactivated (false)
|
||||
*/
|
||||
function __construct($url, $key, $debug = true) {
|
||||
function __construct($url, $key, $debug = true)
|
||||
{
|
||||
if (!extension_loaded('curl'))
|
||||
throw new PrestaShopWebserviceException('Please activate the PHP extension \'curl\' to allow use of PrestaShop webservice library');
|
||||
$this->url = $url;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/* Copyright (C) 2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||
* Copyright (C) 2004-2015 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2004-2018 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2004 Benoit Mortier <benoit.mortier@opensides.be>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||
* Copyright (C) 2010-2016 Juanjo Menent <jmenent@2byte.es>
|
||||
@ -990,7 +990,7 @@ function fieldList($fieldlist, $obj='', $tabname='', $context='')
|
||||
print '<td>';
|
||||
if (! empty($conf->global->MAIN_MULTILANGS))
|
||||
{
|
||||
$selectedlang = $langs->defaultlang;
|
||||
$selectedlang = GETPOSTISSET('langcode','aZ09')?GETPOST('langcode','aZ09'):$langs->defaultlang;
|
||||
if ($context == 'edit') $selectedlang = $obj->{$fieldlist[$field]};
|
||||
print $formadmin->select_language($selectedlang, 'langcode', 0, null, 1, 0, 0, 'maxwidth150');
|
||||
}
|
||||
|
||||
@ -94,10 +94,12 @@ class DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
// Remove $db object property for object
|
||||
unset($object->db);
|
||||
unset($object->isextrafieldmanaged);
|
||||
unset($object->ismultientitymanaged);
|
||||
unset($object->restrictiononfksoc);
|
||||
|
||||
@ -220,7 +222,8 @@ class DolibarrApi
|
||||
* @return bool
|
||||
* @throws RestException
|
||||
*/
|
||||
static function _checkAccessToResource($resource, $resource_id=0, $dbtablename='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid') {
|
||||
static function _checkAccessToResource($resource, $resource_id=0, $dbtablename='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid')
|
||||
{
|
||||
|
||||
// Features/modules to check
|
||||
$featuresarray = array($resource);
|
||||
|
||||
@ -26,7 +26,8 @@ require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
|
||||
class Login
|
||||
{
|
||||
|
||||
function __construct() {
|
||||
function __construct()
|
||||
{
|
||||
global $db;
|
||||
$this->db = $db;
|
||||
}
|
||||
@ -51,7 +52,8 @@ class Login
|
||||
* @url GET /
|
||||
* @url POST /
|
||||
*/
|
||||
public function index($login, $password, $entity='', $reset=0) {
|
||||
public function index($login, $password, $entity='', $reset=0)
|
||||
{
|
||||
|
||||
global $conf, $dolibarr_main_authentication, $dolibarr_auto_user;
|
||||
|
||||
|
||||
@ -26,19 +26,21 @@ require_once DOL_DOCUMENT_ROOT . '/core/lib/functions.lib.php';
|
||||
*/
|
||||
class Status
|
||||
{
|
||||
/**
|
||||
/**
|
||||
* Get status (Dolibarr version)
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function index() {
|
||||
global $conf;
|
||||
*/
|
||||
function index()
|
||||
{
|
||||
global $conf;
|
||||
|
||||
return array(
|
||||
'success' => array(
|
||||
'code' => 200,
|
||||
'dolibarr_version' => DOL_VERSION,
|
||||
'access_locked' => (empty($conf->global->MAIN_ONLY_LOGIN_ALLOWED)?'0':$conf->global->MAIN_ONLY_LOGIN_ALLOWED)
|
||||
)
|
||||
);
|
||||
return array(
|
||||
'success' => array(
|
||||
'code' => 200,
|
||||
'dolibarr_version' => DOL_VERSION,
|
||||
'access_locked' => (empty($conf->global->MAIN_ONLY_LOGIN_ALLOWED)?'0':$conf->global->MAIN_ONLY_LOGIN_ALLOWED),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@ -50,7 +50,8 @@ class BlockedLogAuthority
|
||||
*
|
||||
* @param DoliDB $db Database handler
|
||||
*/
|
||||
public function __construct($db) {
|
||||
public function __construct($db)
|
||||
{
|
||||
|
||||
$this->db = $db;
|
||||
|
||||
@ -61,7 +62,8 @@ class BlockedLogAuthority
|
||||
*
|
||||
* @return string blockchain
|
||||
*/
|
||||
public function getLocalBlockChain() {
|
||||
public function getLocalBlockChain()
|
||||
{
|
||||
|
||||
$block_static = new BlockedLog($this->db);
|
||||
|
||||
@ -84,7 +86,8 @@ class BlockedLogAuthority
|
||||
*
|
||||
* @return string hash md5 of blockchain
|
||||
*/
|
||||
public function getBlockchainHash() {
|
||||
public function getBlockchainHash()
|
||||
{
|
||||
|
||||
return md5($this->signature.$this->blockchain);
|
||||
|
||||
@ -96,7 +99,8 @@ class BlockedLogAuthority
|
||||
* @param string $hash hash md5 of blockchain to test
|
||||
* @return boolean
|
||||
*/
|
||||
public function checkBlockchain($hash) {
|
||||
public function checkBlockchain($hash)
|
||||
{
|
||||
|
||||
return ($hash === $this->getBlockchainHash() );
|
||||
|
||||
@ -108,7 +112,8 @@ class BlockedLogAuthority
|
||||
* @param string $block new block to chain
|
||||
* @return void
|
||||
*/
|
||||
public function addBlock($block) {
|
||||
public function addBlock($block)
|
||||
{
|
||||
|
||||
$this->blockchain.=$block;
|
||||
|
||||
@ -120,7 +125,8 @@ class BlockedLogAuthority
|
||||
* @param string $block new block to chain
|
||||
* @return boolean
|
||||
*/
|
||||
public function checkBlock($block) {
|
||||
public function checkBlock($block)
|
||||
{
|
||||
|
||||
if(strlen($block)!=64) return false;
|
||||
|
||||
@ -142,7 +148,8 @@ class BlockedLogAuthority
|
||||
* @param string $signature Signature of object to load
|
||||
* @return int >0 if OK, <0 if KO, 0 if not found
|
||||
*/
|
||||
public function fetch($id, $signature='') {
|
||||
public function fetch($id, $signature='')
|
||||
{
|
||||
|
||||
global $langs;
|
||||
|
||||
@ -199,7 +206,8 @@ class BlockedLogAuthority
|
||||
* @param User $user Object user that create
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function create($user) {
|
||||
public function create($user)
|
||||
{
|
||||
|
||||
global $conf,$langs,$hookmanager;
|
||||
|
||||
@ -253,7 +261,8 @@ class BlockedLogAuthority
|
||||
* @param User $user Object user that create
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function update($user) {
|
||||
public function update($user)
|
||||
{
|
||||
|
||||
global $conf,$langs,$hookmanager;
|
||||
|
||||
@ -290,7 +299,8 @@ class BlockedLogAuthority
|
||||
*
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function syncSignatureWithAuthority() {
|
||||
public function syncSignatureWithAuthority()
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
//TODO create cron task on activation
|
||||
@ -331,4 +341,4 @@ class BlockedLogAuthority
|
||||
return 1;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -608,7 +608,8 @@ class BlockedLog
|
||||
* @param int $id Id of object to load
|
||||
* @return int >0 if OK, <0 if KO, 0 if not found
|
||||
*/
|
||||
public function fetch($id) {
|
||||
public function fetch($id)
|
||||
{
|
||||
|
||||
global $langs;
|
||||
|
||||
@ -704,7 +705,8 @@ class BlockedLog
|
||||
*
|
||||
* @return boolean
|
||||
*/
|
||||
public function setCertified() {
|
||||
public function setCertified()
|
||||
{
|
||||
|
||||
$res = $this->db->query("UPDATE ".MAIN_DB_PREFIX."blockedlog SET certified=1 WHERE rowid=".$this->id);
|
||||
if($res===false) return false;
|
||||
@ -721,7 +723,8 @@ class BlockedLog
|
||||
* @param int $forcesignature Force signature (for example '0000000000' when we disabled the module)
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
public function create($user, $forcesignature='') {
|
||||
public function create($user, $forcesignature='')
|
||||
{
|
||||
|
||||
global $conf,$langs,$hookmanager;
|
||||
|
||||
|
||||
@ -310,7 +310,7 @@ class Facturation
|
||||
* @return string Ref
|
||||
*/
|
||||
public function ref($aRef=null)
|
||||
{
|
||||
{
|
||||
|
||||
if (is_null($aRef))
|
||||
{
|
||||
@ -652,7 +652,7 @@ class Facturation
|
||||
{
|
||||
return $this->prix_total_ttc;
|
||||
}
|
||||
else if ( $aTotalTtc == 'RESET' )
|
||||
elseif ( $aTotalTtc == 'RESET' )
|
||||
{
|
||||
$this->prix_total_ttc = null;
|
||||
}
|
||||
@ -663,4 +663,3 @@ class Facturation
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -103,7 +103,8 @@ class Categories extends DolibarrApi
|
||||
*
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $type = '', $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $type = '', $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -266,7 +267,8 @@ class Categories extends DolibarrApi
|
||||
* @param Categorie $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
|
||||
@ -46,8 +46,8 @@ class AgendaEvents extends DolibarrApi
|
||||
*/
|
||||
function __construct()
|
||||
{
|
||||
global $db, $conf;
|
||||
$this->db = $db;
|
||||
global $db, $conf;
|
||||
$this->db = $db;
|
||||
$this->actioncomm = new ActionComm($this->db);
|
||||
}
|
||||
|
||||
@ -99,13 +99,14 @@ class AgendaEvents extends DolibarrApi
|
||||
* @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.label:like:'%dol%') and (t.datec:<:'20160101')"
|
||||
* @return array Array of Agenda Events objects
|
||||
*/
|
||||
function index($sortfield = "t.id", $sortorder = 'ASC', $limit = 100, $page = 0, $user_ids = 0, $sqlfilters = '') {
|
||||
function index($sortfield = "t.id", $sortorder = 'ASC', $limit = 100, $page = 0, $user_ids = 0, $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
|
||||
if (! DolibarrApiAccess::$user->rights->agenda->myactions->read) {
|
||||
throw new RestException(401, "Insuffisant rights to read events");
|
||||
throw new RestException(401, "Insuffisant rights to read events");
|
||||
}
|
||||
|
||||
// case of external user
|
||||
@ -226,7 +227,8 @@ class AgendaEvents extends DolibarrApi
|
||||
* @return int
|
||||
*/
|
||||
/*
|
||||
function put($id, $request_data = null) {
|
||||
function put($id, $request_data = null)
|
||||
{
|
||||
if (! DolibarrApiAccess::$user->rights->agenda->myactions->create) {
|
||||
throw new RestException(401, "Insuffisant rights to create your Agenda Event");
|
||||
}
|
||||
@ -319,7 +321,8 @@ class AgendaEvents extends DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
|
||||
@ -28,7 +28,11 @@
|
||||
*/
|
||||
class CActionComm
|
||||
{
|
||||
var $error;
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
var $db;
|
||||
|
||||
var $id;
|
||||
|
||||
@ -30,8 +30,17 @@ class AdvanceTargetingMailing extends CommonObject
|
||||
{
|
||||
|
||||
var $db; //!< To store db handler
|
||||
var $error; //!< To return error code (or message)
|
||||
var $errors = array(); //!< To return several error codes (or messages)
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
var $element='advtargetemailing'; //!< Id that identify managed objects
|
||||
var $table_element='advtargetemailing'; //!< Name of table without prefix where object is stored
|
||||
|
||||
@ -916,7 +925,8 @@ class AdvanceTargetingMailing extends CommonObject
|
||||
* For exemple jean;joe;jim%%;!jimo;!jima%> will target all jean, joe, start with jim but not jimo and not everythnig taht start by jima
|
||||
* @return string Sql to use for the where condition
|
||||
*/
|
||||
public function transformToSQL($column_to_test,$criteria) {
|
||||
public function transformToSQL($column_to_test,$criteria)
|
||||
{
|
||||
$return_sql_criteria = '(';
|
||||
|
||||
//This is a multiple value test
|
||||
|
||||
@ -27,14 +27,18 @@
|
||||
class FormAdvTargetEmailing extends Form
|
||||
{
|
||||
var $db;
|
||||
var $error;
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param DoliDB $db handler
|
||||
*/
|
||||
function __construct($db) {
|
||||
function __construct($db)
|
||||
{
|
||||
global $langs;
|
||||
|
||||
$this->db = $db;
|
||||
@ -47,7 +51,8 @@ class FormAdvTargetEmailing extends Form
|
||||
* @param string $htmlname select field
|
||||
* @return string select field
|
||||
*/
|
||||
function multiselectProspectionStatus($selected_array = array(), $htmlname = 'cust_prospect_status') {
|
||||
function multiselectProspectionStatus($selected_array = array(), $htmlname = 'cust_prospect_status')
|
||||
{
|
||||
global $conf, $langs;
|
||||
$options_array = array();
|
||||
|
||||
@ -83,7 +88,8 @@ class FormAdvTargetEmailing extends Form
|
||||
* @param array $selected_array or Code or Label of preselected country
|
||||
* @return string HTML string with select
|
||||
*/
|
||||
function multiselectCountry($htmlname = 'country_id', $selected_array=array()) {
|
||||
function multiselectCountry($htmlname = 'country_id', $selected_array=array())
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
$langs->load("dict");
|
||||
@ -143,7 +149,8 @@ class FormAdvTargetEmailing extends Form
|
||||
* @param User $user User action
|
||||
* @return string combo list code
|
||||
*/
|
||||
function multiselectselectSalesRepresentatives($htmlname, $selected_array, $user) {
|
||||
function multiselectselectSalesRepresentatives($htmlname, $selected_array, $user)
|
||||
{
|
||||
|
||||
global $conf;
|
||||
|
||||
@ -184,7 +191,8 @@ class FormAdvTargetEmailing extends Form
|
||||
* @param array $selected_array selected array
|
||||
* @return string combo list code
|
||||
*/
|
||||
function multiselectselectLanguage($htmlname='', $selected_array=array()) {
|
||||
function multiselectselectLanguage($htmlname='', $selected_array=array())
|
||||
{
|
||||
|
||||
global $conf,$langs;
|
||||
|
||||
@ -330,7 +338,8 @@ class FormAdvTargetEmailing extends Form
|
||||
* @param int $showempty show empty
|
||||
* @return string HTML combo
|
||||
*/
|
||||
function advMultiselectarray($htmlname, $options_array = array(), $selected_array = array(), $showempty = 0) {
|
||||
function advMultiselectarray($htmlname, $options_array = array(), $selected_array = array(), $showempty = 0)
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
$form=new Form($this->db);
|
||||
@ -417,7 +426,8 @@ class FormAdvTargetEmailing extends Form
|
||||
* @param string $type_element Type element. Example: 'mailing'
|
||||
* @return string HTML combo
|
||||
*/
|
||||
public function selectAdvtargetemailingTemplate($htmlname='template_id', $selected=0, $showempty=0, $type_element='mailing') {
|
||||
public function selectAdvtargetemailingTemplate($htmlname='template_id', $selected=0, $showempty=0, $type_element='mailing')
|
||||
{
|
||||
global $conf, $user, $langs;
|
||||
|
||||
$out = '';
|
||||
@ -460,4 +470,4 @@ class FormAdvTargetEmailing extends Form
|
||||
$this->db->free ( $resql );
|
||||
return $out;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -97,7 +97,8 @@ class Proposals extends DolibarrApi
|
||||
* @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.datec:<:'20160101')"
|
||||
* @return array Array of order objects
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -215,7 +216,8 @@ class Proposals extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function getLines($id) {
|
||||
function getLines($id)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->propal->lire) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -381,7 +383,8 @@ class Proposals extends DolibarrApi
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
*/
|
||||
function deleteLine($id, $lineid) {
|
||||
function deleteLine($id, $lineid)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->propal->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -415,7 +418,8 @@ class Proposals extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function put($id, $request_data = null) {
|
||||
function put($id, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->propal->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -703,23 +707,24 @@ class Proposals extends DolibarrApi
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clean sensible object datas
|
||||
*
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
/**
|
||||
* Clean sensible object datas
|
||||
*
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
unset($object->note);
|
||||
unset($object->name);
|
||||
unset($object->lastname);
|
||||
unset($object->firstname);
|
||||
unset($object->civility_id);
|
||||
unset($object->address);
|
||||
unset($object->note);
|
||||
unset($object->name);
|
||||
unset($object->lastname);
|
||||
unset($object->firstname);
|
||||
unset($object->civility_id);
|
||||
unset($object->address);
|
||||
|
||||
return $object;
|
||||
}
|
||||
return $object;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1337,10 +1337,10 @@ class Propal extends CommonObject
|
||||
$sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_incoterms as i ON p.fk_incoterms = i.rowid';
|
||||
|
||||
if ($ref) {
|
||||
$sql.= " AND p.entity IN (".getEntity('propal').")"; // Dont't use entity if you use rowid
|
||||
$sql.= " WHERE p.entity IN (".getEntity('propal').")"; // Dont't use entity if you use rowid
|
||||
$sql.= " AND p.ref='".$this->db->escape($ref)."'";
|
||||
}
|
||||
else $sql.= " AND p.rowid=".$rowid;
|
||||
else $sql.= " WHERE p.rowid=".$rowid;
|
||||
|
||||
dol_syslog(get_class($this)."::fetch", LOG_DEBUG);
|
||||
$resql=$this->db->query($sql);
|
||||
@ -3144,7 +3144,7 @@ class Propal extends CommonObject
|
||||
|
||||
$clause = " WHERE";
|
||||
|
||||
$sql = "SELECT p.rowid, p.ref, p.datec as datec, p.fin_validite as datefin";
|
||||
$sql = "SELECT p.rowid, p.ref, p.datec as datec, p.fin_validite as datefin, p.total_ht";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."propal as p";
|
||||
if (!$user->rights->societe->client->voir && !$user->societe_id)
|
||||
{
|
||||
@ -3188,6 +3188,8 @@ class Propal extends CommonObject
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
$response->nbtodo++;
|
||||
$response->total+=$obj->total_ht;
|
||||
|
||||
if ($mode == 'opened')
|
||||
{
|
||||
$datelimit = $this->db->jdate($obj->datefin);
|
||||
|
||||
@ -97,9 +97,10 @@ class Orders extends DolibarrApi
|
||||
* @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.date_creation:<:'20160101')"
|
||||
* @return array Array of order objects
|
||||
*
|
||||
* @throws RestException
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -218,7 +219,8 @@ class Orders extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function getLines($id) {
|
||||
function getLines($id)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->commande->lire) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -249,7 +251,8 @@ class Orders extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function postLine($id, $request_data = null) {
|
||||
function postLine($id, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->commande->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -311,7 +314,8 @@ class Orders extends DolibarrApi
|
||||
*
|
||||
* @return object
|
||||
*/
|
||||
function putLine($id, $lineid, $request_data = null) {
|
||||
function putLine($id, $lineid, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->commande->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -371,7 +375,8 @@ class Orders extends DolibarrApi
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
*/
|
||||
function deleteLine($id, $lineid) {
|
||||
function deleteLine($id, $lineid)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->commande->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -403,7 +408,8 @@ class Orders extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function put($id, $request_data = null) {
|
||||
function put($id, $request_data = null)
|
||||
{
|
||||
if (! DolibarrApiAccess::$user->rights->commande->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -544,7 +550,8 @@ class Orders extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function reopen($id) {
|
||||
function reopen($id)
|
||||
{
|
||||
|
||||
if(! DolibarrApiAccess::$user->rights->commande->creer) {
|
||||
throw new RestException(401);
|
||||
@ -581,7 +588,8 @@ class Orders extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function setinvoiced($id) {
|
||||
function setinvoiced($id)
|
||||
{
|
||||
|
||||
if(! DolibarrApiAccess::$user->rights->commande->creer) {
|
||||
throw new RestException(401);
|
||||
@ -706,21 +714,22 @@ class Orders extends DolibarrApi
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create an order using an existing proposal.
|
||||
*
|
||||
*
|
||||
* @param int $proposalid Id of the proposal
|
||||
*
|
||||
* @url POST /createfromproposal/{proposalid}
|
||||
*
|
||||
* @return int
|
||||
* @throws 400
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function createOrderFromProposal($proposalid) {
|
||||
/**
|
||||
* Create an order using an existing proposal.
|
||||
*
|
||||
*
|
||||
* @param int $proposalid Id of the proposal
|
||||
*
|
||||
* @url POST /createfromproposal/{proposalid}
|
||||
*
|
||||
* @return int
|
||||
* @throws 400
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function createOrderFromProposal($proposalid)
|
||||
{
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT . '/comm/propal/class/propal.class.php';
|
||||
|
||||
@ -756,7 +765,8 @@ class Orders extends DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
|
||||
@ -3243,7 +3243,7 @@ class Commande extends CommonOrder
|
||||
|
||||
$clause = " WHERE";
|
||||
|
||||
$sql = "SELECT c.rowid, c.date_creation as datec, c.date_commande, c.date_livraison as delivery_date, c.fk_statut";
|
||||
$sql = "SELECT c.rowid, c.date_creation as datec, c.date_commande, c.date_livraison as delivery_date, c.fk_statut, c.total_ht";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."commande as c";
|
||||
if (!$user->rights->societe->client->voir && !$user->societe_id)
|
||||
{
|
||||
@ -3270,6 +3270,7 @@ class Commande extends CommonOrder
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
$response->nbtodo++;
|
||||
$response->total+= $obj->total_ht;
|
||||
|
||||
$generic_commande->statut = $obj->fk_statut;
|
||||
$generic_commande->date_commande = $this->db->jdate($obj->date_commande);
|
||||
|
||||
@ -1423,14 +1423,14 @@ if ($resql)
|
||||
|
||||
if (! empty($arrayfields['b.conciliated']['checked']))
|
||||
{
|
||||
print '<td class="nowrap" align="center">';
|
||||
print '<td class="nowraponall" align="center">';
|
||||
print $objp->conciliated?$langs->trans("Yes"):$langs->trans("No");
|
||||
print '</td>';
|
||||
if (! $i) $totalarray['nbfield']++;
|
||||
}
|
||||
|
||||
// Action edit/delete
|
||||
print '<td class="nowrap" align="center">';
|
||||
print '<td class="nowraponall" align="center">';
|
||||
// Transaction reconciliated or edit link
|
||||
if ($objp->conciliated && $bankaccount->canBeConciliated() > 0) // If line not conciliated and account can be conciliated
|
||||
{
|
||||
|
||||
@ -945,7 +945,8 @@ class Account extends CommonObject
|
||||
* @param int[]|int $categories Category or categories IDs
|
||||
* @return void
|
||||
*/
|
||||
public function setCategories($categories) {
|
||||
public function setCategories($categories)
|
||||
{
|
||||
// Handle single category
|
||||
if (! is_array($categories)) {
|
||||
$categories = array($categories);
|
||||
|
||||
@ -32,7 +32,7 @@ class Invoices extends DolibarrApi
|
||||
* @var array $FIELDS Mandatory fields, checked when create and update object
|
||||
*/
|
||||
static $FIELDS = array(
|
||||
'socid'
|
||||
'socid',
|
||||
);
|
||||
|
||||
/**
|
||||
@ -104,7 +104,8 @@ class Invoices extends DolibarrApi
|
||||
*
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids='', $status='', $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids='', $status='', $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -245,7 +246,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function createInvoiceFromOrder($orderid) {
|
||||
function createInvoiceFromOrder($orderid)
|
||||
{
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT . '/commande/class/commande.class.php';
|
||||
|
||||
@ -282,7 +284,8 @@ class Invoices extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function getLines($id) {
|
||||
function getLines($id)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->facture->lire) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -319,7 +322,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
*/
|
||||
function putLine($id, $lineid, $request_data = null) {
|
||||
function putLine($id, $lineid, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->facture->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -383,7 +387,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function deleteLine($id, $lineid) {
|
||||
function deleteLine($id, $lineid)
|
||||
{
|
||||
|
||||
if(! DolibarrApiAccess::$user->rights->facture->creer) {
|
||||
throw new RestException(401);
|
||||
@ -511,7 +516,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 400
|
||||
*/
|
||||
function postLine($id, $request_data = null) {
|
||||
function postLine($id, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->facture->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -849,7 +855,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function useDiscount($id, $discountid) {
|
||||
function useDiscount($id, $discountid)
|
||||
{
|
||||
|
||||
if(! DolibarrApiAccess::$user->rights->facture->creer) {
|
||||
throw new RestException(401);
|
||||
@ -894,7 +901,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function useCreditNote($id, $discountid) {
|
||||
function useCreditNote($id, $discountid)
|
||||
{
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT . '/core/class/discount.class.php';
|
||||
|
||||
@ -938,7 +946,8 @@ class Invoices extends DolibarrApi
|
||||
* @throws 404
|
||||
* @throws 405
|
||||
*/
|
||||
function getPayments($id) {
|
||||
function getPayments($id)
|
||||
{
|
||||
|
||||
if(! DolibarrApiAccess::$user->rights->facture->lire) {
|
||||
throw new RestException(401);
|
||||
@ -985,8 +994,9 @@ class Invoices extends DolibarrApi
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
*/
|
||||
function addPayment($id, $datepaye, $paiementid, $closepaidinvoices, $accountid, $num_paiement='', $comment='', $chqemetteur='', $chqbank='') {
|
||||
global $conf;
|
||||
function addPayment($id, $datepaye, $paiementid, $closepaidinvoices, $accountid, $num_paiement='', $comment='', $chqemetteur='', $chqbank='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT . '/compta/paiement/class/paiement.class.php';
|
||||
|
||||
@ -1215,18 +1225,19 @@ class Invoices extends DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
unset($object->note);
|
||||
unset($object->address);
|
||||
unset($object->barcode_type);
|
||||
unset($object->barcode_type_code);
|
||||
unset($object->barcode_type_label);
|
||||
unset($object->barcode_type_coder);
|
||||
unset($object->address);
|
||||
unset($object->barcode_type);
|
||||
unset($object->barcode_type_code);
|
||||
unset($object->barcode_type_label);
|
||||
unset($object->barcode_type_coder);
|
||||
|
||||
return $object;
|
||||
return $object;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1241,8 +1252,9 @@ class Invoices extends DolibarrApi
|
||||
{
|
||||
$invoice = array();
|
||||
foreach (Invoices::$FIELDS as $field) {
|
||||
if (!isset($data[$field]))
|
||||
if (!isset($data[$field])) {
|
||||
throw new RestException(400, "$field field missing");
|
||||
}
|
||||
$invoice[$field] = $data[$field];
|
||||
}
|
||||
return $invoice;
|
||||
|
||||
@ -3726,7 +3726,7 @@ class Facture extends CommonInvoice
|
||||
|
||||
$clause = " WHERE";
|
||||
|
||||
$sql = "SELECT f.rowid, f.date_lim_reglement as datefin,f.fk_statut";
|
||||
$sql = "SELECT f.rowid, f.date_lim_reglement as datefin,f.fk_statut, f.total";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."facture as f";
|
||||
if (!$user->rights->societe->client->voir && !$user->societe_id)
|
||||
{
|
||||
@ -3759,6 +3759,7 @@ class Facture extends CommonInvoice
|
||||
$generic_facture->statut = $obj->fk_statut;
|
||||
|
||||
$response->nbtodo++;
|
||||
$response->total += $obj->total;
|
||||
|
||||
if ($generic_facture->hasDelay()) {
|
||||
$response->nbtodolate++;
|
||||
|
||||
@ -30,7 +30,12 @@ class PaymentTerm // extends CommonObject
|
||||
{
|
||||
var $db; //!< To store db handler
|
||||
var $error; //!< To return error code (or message)
|
||||
var $errors=array(); //!< To return several error codes (or messages)
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
//public $element='c_payment_term'; //!< Id that identify managed objects
|
||||
//public $table_element='c_payment_term'; //!< Name of table without prefix where object is stored
|
||||
var $context =array();
|
||||
|
||||
@ -1513,7 +1513,7 @@ else
|
||||
//var_dump(dol_print_date($object->date_when+60, 'dayhour').' - '.dol_print_date($now, 'dayhour'));
|
||||
if (! $object->isMaxNbGenReached())
|
||||
{
|
||||
if ($action != 'editdate_when' && $object->frequency > 0 && $object->date_when && $object->date_when < $now) print img_warning($langs->trans("Late"));
|
||||
if (! $object->suspended && $action != 'editdate_when' && $object->frequency > 0 && $object->date_when && $object->date_when < $now) print img_warning($langs->trans("Late"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -607,7 +607,7 @@ if ($resql)
|
||||
print ($objp->frequency ? ($invoicerectmp->isMaxNbGenReached()?'<strike>':'').dol_print_date($db->jdate($objp->date_when),'day').($invoicerectmp->isMaxNbGenReached()?'</strike>':'') : '<span class="opacitymedium">'.$langs->trans('NA').'</span>');
|
||||
if (! $invoicerectmp->isMaxNbGenReached())
|
||||
{
|
||||
if ($objp->frequency > 0 && $db->jdate($objp->date_when) && $db->jdate($objp->date_when) < $now) print img_warning($langs->trans("Late"));
|
||||
if (! $objp->suspended && $objp->frequency > 0 && $db->jdate($objp->date_when) && $db->jdate($objp->date_when) < $now) print img_warning($langs->trans("Late"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -923,6 +923,9 @@ if ($resql)
|
||||
$facturestatic->id=$obj->id;
|
||||
$facturestatic->ref=$obj->ref;
|
||||
$facturestatic->type=$obj->type;
|
||||
$facturestatic->total_ht=$obj->total_ht;
|
||||
$facturestatic->total_tva=$obj->total_vat;
|
||||
$facturestatic->total_ttc=$obj->total_ttc;
|
||||
$facturestatic->statut=$obj->fk_statut;
|
||||
$facturestatic->date_lim_reglement=$db->jdate($obj->datelimite);
|
||||
$facturestatic->note_public=$obj->note_public;
|
||||
|
||||
@ -722,7 +722,7 @@ if (! empty($conf->facture->enabled) && ! empty($conf->commande->enabled) && $us
|
||||
$reshook=$hookmanager->executeHooks('printFieldListWhereCustomerOrderToBill',$parameters);
|
||||
$sql.=$hookmanager->resPrint;
|
||||
|
||||
$sql.= " GROUP BY s.nom, s.rowid, s.email, s.code_client, s.code_compta, c.rowid, c.ref, c.facture, c.fk_statut, c.tva, c.total_ht, c.total_ttc";
|
||||
$sql.= " GROUP BY s.nom, s.email, s.rowid, s.code_client, s.code_compta, c.rowid, c.ref, c.facture, c.fk_statut, c.total_ht, c.tva, c.total_ttc, cc.rowid, cc.code";
|
||||
|
||||
$resql = $db->query($sql);
|
||||
if ( $resql )
|
||||
|
||||
@ -39,8 +39,12 @@ abstract class ActionsContactCardCommon
|
||||
var $object;
|
||||
//! Error string
|
||||
var $error;
|
||||
//! Error array
|
||||
var $errors=array();
|
||||
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -100,7 +100,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @throws RestException
|
||||
*/
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $sqlfilters = '') {
|
||||
function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $sqlfilters = '')
|
||||
{
|
||||
global $db, $conf;
|
||||
|
||||
$obj_ret = array();
|
||||
@ -216,7 +217,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function getLines($id) {
|
||||
function getLines($id)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->lire) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -247,7 +249,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function postLine($id, $request_data = null) {
|
||||
function postLine($id, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -300,7 +303,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @return object
|
||||
*/
|
||||
function putLine($id, $lineid, $request_data = null) {
|
||||
function putLine($id, $lineid, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -359,7 +363,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @return object
|
||||
*/
|
||||
function activateLine($id, $lineid, $datestart, $dateend = null, $comment = null) {
|
||||
function activateLine($id, $lineid, $datestart, $dateend = null, $comment = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -396,7 +401,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @return object
|
||||
*/
|
||||
function unactivateLine($id, $lineid, $datestart, $comment = null) {
|
||||
function unactivateLine($id, $lineid, $datestart, $comment = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -436,7 +442,8 @@ class Contracts extends DolibarrApi
|
||||
* @throws 401
|
||||
* @throws 404
|
||||
*/
|
||||
function deleteLine($id, $lineid) {
|
||||
function deleteLine($id, $lineid)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -470,7 +477,8 @@ class Contracts extends DolibarrApi
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
function put($id, $request_data = null) {
|
||||
function put($id, $request_data = null)
|
||||
{
|
||||
if(! DolibarrApiAccess::$user->rights->contrat->creer) {
|
||||
throw new RestException(401);
|
||||
}
|
||||
@ -632,7 +640,8 @@ class Contracts extends DolibarrApi
|
||||
* @param object $object Object to clean
|
||||
* @return array Array of cleaned object properties
|
||||
*/
|
||||
function _cleanObjectDatas($object) {
|
||||
function _cleanObjectDatas($object)
|
||||
{
|
||||
|
||||
$object = parent::_cleanObjectDatas($object);
|
||||
|
||||
|
||||
@ -2350,7 +2350,8 @@ class Contrat extends CommonObject
|
||||
* @param int $notrigger 1=Does not execute triggers, 0= execute triggers
|
||||
* @return int New id of clone
|
||||
*/
|
||||
function createFromClone($socid = 0, $notrigger=0) {
|
||||
function createFromClone($socid = 0, $notrigger=0)
|
||||
{
|
||||
global $db, $user, $langs, $conf, $hookmanager;
|
||||
|
||||
dol_include_once('/projet/class/project.class.php');
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/* Copyright (C) 2014-2016 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2014 Frederic France <frederic.france@free.fr>
|
||||
* Copyright (C) 2014-2018 Frederic France <frederic.france@netlogic.fr>
|
||||
*
|
||||
* 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
|
||||
@ -28,7 +28,7 @@
|
||||
// Filename to print must be provided into 'file' parameter
|
||||
|
||||
// Print file
|
||||
if ($action == 'print_file' and $user->rights->printing->read)
|
||||
if ($action == 'print_file' && $user->rights->printing->read)
|
||||
{
|
||||
$langs->load("printing");
|
||||
require_once DOL_DOCUMENT_ROOT . '/core/modules/printing/modules_printing.php';
|
||||
|
||||
@ -26,13 +26,17 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \class AntiVir
|
||||
* \brief Class to scan for virus
|
||||
* Class to scan for virus
|
||||
*/
|
||||
class AntiVir
|
||||
{
|
||||
var $error;
|
||||
var $errors;
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
var $output;
|
||||
var $db;
|
||||
|
||||
|
||||
@ -30,7 +30,11 @@ class Canvas
|
||||
{
|
||||
var $db;
|
||||
var $error;
|
||||
var $errors=array();
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
var $actiontype;
|
||||
|
||||
|
||||
@ -34,7 +34,12 @@ class Ccountry // extends CommonObject
|
||||
{
|
||||
var $db; //!< To store db handler
|
||||
var $error; //!< To return error code (or message)
|
||||
var $errors=array(); //!< To return several error codes (or messages)
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
//var $element='ccountry'; //!< Id that identify managed objects
|
||||
//var $table_element='ccountry'; //!< Name of table without prefix where object is stored
|
||||
|
||||
|
||||
@ -42,9 +42,10 @@ abstract class CommonDocGenerator
|
||||
*
|
||||
* @param DoliDB $db Database handler
|
||||
*/
|
||||
public function __construct($db) {
|
||||
$this->db = $db;
|
||||
}
|
||||
public function __construct($db)
|
||||
{
|
||||
$this->db = $db;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
@ -228,7 +229,8 @@ abstract class CommonDocGenerator
|
||||
* @param array_key $array_key Name of the key for return array
|
||||
* @return array of substitution key->code
|
||||
*/
|
||||
function get_substitutionarray_contact($object, $outputlangs, $array_key = 'object') {
|
||||
function get_substitutionarray_contact($object, $outputlangs, $array_key = 'object')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
if(empty($object->country) && ! empty($object->country_code))
|
||||
@ -652,7 +654,8 @@ abstract class CommonDocGenerator
|
||||
* @param boolean $recursive Want to fetch child array or child object
|
||||
* @return array Array of substitution key->code
|
||||
*/
|
||||
function get_substitutionarray_each_var_object(&$object,$outputlangs,$recursive=true) {
|
||||
function get_substitutionarray_each_var_object(&$object,$outputlangs,$recursive=true)
|
||||
{
|
||||
$array_other = array();
|
||||
if(!empty($object)) {
|
||||
foreach($object as $key => $value) {
|
||||
@ -769,10 +772,9 @@ abstract class CommonDocGenerator
|
||||
*/
|
||||
function printRect($pdf, $x, $y, $l, $h, $hidetop=0, $hidebottom=0)
|
||||
{
|
||||
if (empty($hidetop) || $hidetop==-1) $pdf->line($x, $y, $x+$l, $y);
|
||||
$pdf->line($x+$l, $y, $x+$l, $y+$h);
|
||||
if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h);
|
||||
$pdf->line($x, $y+$h, $x, $y);
|
||||
if (empty($hidetop) || $hidetop==-1) $pdf->line($x, $y, $x+$l, $y);
|
||||
$pdf->line($x+$l, $y, $x+$l, $y+$h);
|
||||
if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h);
|
||||
$pdf->line($x, $y+$h, $x, $y);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -6874,7 +6874,8 @@ abstract class CommonObject
|
||||
* @param array $fieldsentry Properties of field
|
||||
* @return string
|
||||
*/
|
||||
protected function quote($value, $fieldsentry) {
|
||||
protected function quote($value, $fieldsentry)
|
||||
{
|
||||
if (is_null($value)) return 'NULL';
|
||||
else if (preg_match('/^(int|double|real)/i', $fieldsentry['type'])) return $this->db->escape("$value");
|
||||
else return "'".$this->db->escape($value)."'";
|
||||
|
||||
@ -93,7 +93,7 @@ abstract class CommonStickerGenerator
|
||||
{
|
||||
$this->db = $db;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function to build PDF on disk, then output on HTTP strem.
|
||||
*
|
||||
@ -114,7 +114,7 @@ abstract class CommonStickerGenerator
|
||||
* @return void
|
||||
*/
|
||||
abstract function addSticker(&$pdf,$outputlangs,$param);
|
||||
|
||||
|
||||
/**
|
||||
* Methode qui permet de modifier la taille des caracteres
|
||||
* Cela modiera aussi l'espace entre chaque ligne
|
||||
@ -130,7 +130,7 @@ abstract class CommonStickerGenerator
|
||||
$this->_Line_Height = $this->_Get_Height_Chars($pt);
|
||||
$pdf->SetFont('','',$pt);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* protected Print dot line
|
||||
@ -216,7 +216,7 @@ abstract class CommonStickerGenerator
|
||||
* @param string $dest to
|
||||
* @return float value value after conversion
|
||||
*/
|
||||
function _Convert_Metric ($value, $src, $dest)
|
||||
function _Convert_Metric($value, $src, $dest)
|
||||
{
|
||||
if ($src != $dest) {
|
||||
$tab['in'] = 39.37008;
|
||||
@ -251,7 +251,7 @@ abstract class CommonStickerGenerator
|
||||
* @param string $format Format
|
||||
* @return void
|
||||
*/
|
||||
function _Set_Format(&$pdf, $format)
|
||||
function _Set_Format(&$pdf, $format)
|
||||
{
|
||||
$this->_Metric = $format['metric'];
|
||||
$this->_Avery_Name = $format['name'];
|
||||
|
||||
@ -34,7 +34,12 @@ class Cstate // extends CommonObject
|
||||
{
|
||||
var $db; //!< To store db handler
|
||||
var $error; //!< To return error code (or message)
|
||||
var $errors=array(); //!< To return several error codes (or messages)
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
//var $element='cstate'; //!< Id that identify managed objects
|
||||
//var $table_element='cstate'; //!< Name of table without prefix where object is stored
|
||||
|
||||
|
||||
@ -29,7 +29,12 @@ class Ctypent // extends CommonObject
|
||||
{
|
||||
var $db; //!< To store db handler
|
||||
var $error; //!< To return error code (or message)
|
||||
var $errors=array(); //!< To return several error codes (or messages)
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
//var $element='ctypent'; //!< Id that identify managed objects
|
||||
//var $table_element='ctypent'; //!< Name of table without prefix where object is stored
|
||||
|
||||
|
||||
@ -110,7 +110,11 @@ class dolReceiptPrinter extends Escpos
|
||||
var $printer;
|
||||
var $template;
|
||||
var $error;
|
||||
var $errors;
|
||||
/**
|
||||
*
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array ();
|
||||
|
||||
|
||||
|
||||
|
||||
@ -31,7 +31,11 @@ class HookManager
|
||||
{
|
||||
var $db;
|
||||
var $error;
|
||||
var $errors=array();
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
// Context hookmanager was created for ('thirdpartycard', 'thirdpartydao', ...)
|
||||
var $contextarray=array();
|
||||
|
||||
@ -1347,7 +1347,7 @@ class Form
|
||||
* @param string $moreclass Add more class to class style
|
||||
* @param bool $options_only Return options only (for ajax treatment)
|
||||
* @param integer $showsoc Add company into label
|
||||
* @param int $forcecombo Force to use combo box
|
||||
* @param int $forcecombo Force to use combo box (so no ajax beautify effect)
|
||||
* @param array $events Event options. Example: array(array('method'=>'getContacts', 'url'=>dol_buildpath('/core/ajax/contacts.php',1), 'htmlname'=>'contactid', 'params'=>array('add-customer-contact'=>'disabled')))
|
||||
* @param string $moreparam Add more parameters onto the select tag. For example 'style="width: 95%"' to avoid select2 component to go over parent container
|
||||
* @param string $htmlid Html id to use instead of htmlname
|
||||
@ -1554,7 +1554,7 @@ class Form
|
||||
else $sql.= " WHERE u.entity IS NOT NULL";
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
if (! empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE))
|
||||
{
|
||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."usergroup_user as ug";
|
||||
@ -3689,7 +3689,7 @@ class Form
|
||||
|
||||
// Now add questions
|
||||
$more.='<table class="paddingtopbottomonly" width="100%">'."\n";
|
||||
$more.='<tr><td colspan="3">'.(! empty($formquestion['text'])?$formquestion['text']:'').'</td></tr>'."\n";
|
||||
if (! empty($formquestion['text'])) $more.='<tr><td colspan="2">'.$formquestion['text'].'</td></tr>'."\n";
|
||||
foreach ($formquestion as $key => $input)
|
||||
{
|
||||
if (is_array($input) && ! empty($input))
|
||||
@ -3700,29 +3700,28 @@ class Form
|
||||
|
||||
if ($input['type'] == 'text')
|
||||
{
|
||||
$more.='<tr><td>'.$input['label'].'</td><td colspan="2" align="left"><input type="text" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'"'.$size.' value="'.$input['value'].'"'.$moreattr.' /></td></tr>'."\n";
|
||||
$more.='<tr><td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'>'.$input['label'].'</td><td align="left"><input type="text" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'"'.$size.' value="'.$input['value'].'"'.$moreattr.' /></td></tr>'."\n";
|
||||
}
|
||||
else if ($input['type'] == 'password')
|
||||
{
|
||||
$more.='<tr><td>'.$input['label'].'</td><td colspan="2" align="left"><input type="password" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'"'.$size.' value="'.$input['value'].'"'.$moreattr.' /></td></tr>'."\n";
|
||||
$more.='<tr><td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'>'.$input['label'].'</td><td align="left"><input type="password" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'"'.$size.' value="'.$input['value'].'"'.$moreattr.' /></td></tr>'."\n";
|
||||
}
|
||||
else if ($input['type'] == 'select')
|
||||
{
|
||||
$more.='<tr><td>';
|
||||
if (! empty($input['label'])) $more.=$input['label'].'</td><td valign="top" colspan="2" align="left">';
|
||||
$more.='<tr><td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'>';
|
||||
if (! empty($input['label'])) $more.=$input['label'].'</td><td class="tdtop" align="left">';
|
||||
$more.=$this->selectarray($input['name'],$input['values'],$input['default'],1,0,0,$moreattr,0,0,0,'',$morecss);
|
||||
$more.='</td></tr>'."\n";
|
||||
}
|
||||
else if ($input['type'] == 'checkbox')
|
||||
{
|
||||
$more.='<tr>';
|
||||
$more.='<td>'.$input['label'].' </td><td align="left">';
|
||||
$more.='<td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'>'.$input['label'].' </td><td align="left">';
|
||||
$more.='<input type="checkbox" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'"'.$moreattr;
|
||||
if (! is_bool($input['value']) && $input['value'] != 'false' && $input['value'] != '0') $more.=' checked';
|
||||
if (is_bool($input['value']) && $input['value']) $more.=' checked';
|
||||
if (isset($input['disabled'])) $more.=' disabled';
|
||||
$more.=' /></td>';
|
||||
$more.='<td align="left"> </td>';
|
||||
$more.='</tr>'."\n";
|
||||
}
|
||||
else if ($input['type'] == 'radio')
|
||||
@ -3731,12 +3730,11 @@ class Form
|
||||
foreach($input['values'] as $selkey => $selval)
|
||||
{
|
||||
$more.='<tr>';
|
||||
if ($i==0) $more.='<td class="tdtop">'.$input['label'].'</td>';
|
||||
else $more.='<td> </td>';
|
||||
$more.='<td width="20"><input type="radio" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'" value="'.$selkey.'"'.$moreattr;
|
||||
if ($i==0) $more.='<td'.(empty($input['tdclass'])?' class="tdtop"':(' class="tdtop '.$input['tdclass'].'"')).'>'.$input['label'].'</td>';
|
||||
else $more.='<td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'> </td>';
|
||||
$more.='<td><input type="radio" class="flat'.$morecss.'" id="'.$input['name'].'" name="'.$input['name'].'" value="'.$selkey.'"'.$moreattr;
|
||||
if ($input['disabled']) $more.=' disabled';
|
||||
$more.=' /></td>';
|
||||
$more.='<td align="left">';
|
||||
$more.=' /> ';
|
||||
$more.=$selval;
|
||||
$more.='</td></tr>'."\n";
|
||||
$i++;
|
||||
@ -3744,8 +3742,8 @@ class Form
|
||||
}
|
||||
else if ($input['type'] == 'date')
|
||||
{
|
||||
$more.='<tr><td>'.$input['label'].'</td>';
|
||||
$more.='<td colspan="2" align="left">';
|
||||
$more.='<tr><td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'>'.$input['label'].'</td>';
|
||||
$more.='<td align="left">';
|
||||
$more.=$this->select_date($input['value'],$input['name'],0,0,0,'',1,0,1);
|
||||
$more.='</td></tr>'."\n";
|
||||
$formquestion[] = array('name'=>$input['name'].'day');
|
||||
@ -3756,15 +3754,15 @@ class Form
|
||||
}
|
||||
else if ($input['type'] == 'other')
|
||||
{
|
||||
$more.='<tr><td>';
|
||||
if (! empty($input['label'])) $more.=$input['label'].'</td><td colspan="2" align="left">';
|
||||
$more.='<tr><td'.(empty($input['tdclass'])?'':(' class="'.$input['tdclass'].'"')).'>';
|
||||
if (! empty($input['label'])) $more.=$input['label'].'</td><td align="left">';
|
||||
$more.=$input['value'];
|
||||
$more.='</td></tr>'."\n";
|
||||
}
|
||||
|
||||
else if ($input['type'] == 'onecolumn')
|
||||
{
|
||||
$more.='<tr><td colspan="3" align="left">';
|
||||
$more.='<tr><td colspan="2" align="left">';
|
||||
$more.=$input['value'];
|
||||
$more.='</td></tr>'."\n";
|
||||
}
|
||||
@ -3818,14 +3816,14 @@ class Form
|
||||
$( "#'.$dialogconfirm.'" ).dialog(
|
||||
{
|
||||
autoOpen: '.($autoOpen ? "true" : "false").',';
|
||||
if ($newselectedchoice == 'no')
|
||||
{
|
||||
$formconfirm.='
|
||||
if ($newselectedchoice == 'no')
|
||||
{
|
||||
$formconfirm.='
|
||||
open: function() {
|
||||
$(this).parent().find("button.ui-button:eq(2)").focus();
|
||||
},';
|
||||
}
|
||||
$formconfirm.='
|
||||
}
|
||||
$formconfirm.='
|
||||
resizable: false,
|
||||
height: "'.$height.'",
|
||||
width: "'.$width.'",
|
||||
|
||||
@ -216,7 +216,8 @@ class FormAccounting extends Form
|
||||
* @param string $selectedkey Value
|
||||
* @return string HTML edit field
|
||||
*/
|
||||
function select_bookkeeping_importkey($htmlname = 'importkey', $selectedkey = '') {
|
||||
function select_bookkeeping_importkey($htmlname = 'importkey', $selectedkey = '')
|
||||
{
|
||||
$options = array();
|
||||
|
||||
$sql = 'SELECT DISTINCT import_key from ' . MAIN_DB_PREFIX . 'accounting_bookkeeping';
|
||||
@ -339,7 +340,8 @@ class FormAccounting extends Form
|
||||
* @param string $morecss More css
|
||||
* @return string String with HTML select
|
||||
*/
|
||||
function select_auxaccount($selectid, $htmlname='account_num_aux', $showempty=0, $morecss='maxwidth200') {
|
||||
function select_auxaccount($selectid, $htmlname='account_num_aux', $showempty=0, $morecss='maxwidth200')
|
||||
{
|
||||
|
||||
$aux_account = array();
|
||||
|
||||
@ -428,4 +430,3 @@ class FormAccounting extends Form
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -56,9 +56,10 @@ class FormAdmin
|
||||
* @param int $disabled Disable edit of select
|
||||
* @param string $morecss Add more css styles
|
||||
* @param int $showcode Add language code into label
|
||||
* @param int $forcecombo Force to use combo box (so no ajax beautify effect)
|
||||
* @return string Return HTML select string with list of languages
|
||||
*/
|
||||
function select_language($selected='', $htmlname='lang_id', $showauto=0, $filter=null, $showempty='', $showwarning=0, $disabled=0, $morecss='', $showcode=0)
|
||||
function select_language($selected='', $htmlname='lang_id', $showauto=0, $filter=null, $showempty='', $showwarning=0, $disabled=0, $morecss='', $showcode=0, $forcecombo=0)
|
||||
{
|
||||
global $langs;
|
||||
|
||||
@ -109,8 +110,11 @@ class FormAdmin
|
||||
$out.= '</select>';
|
||||
|
||||
// Make select dynamic
|
||||
include_once DOL_DOCUMENT_ROOT . '/core/lib/ajax.lib.php';
|
||||
$out.= ajax_combobox($htmlname);
|
||||
if (! $forcecombo)
|
||||
{
|
||||
include_once DOL_DOCUMENT_ROOT . '/core/lib/ajax.lib.php';
|
||||
$out.= ajax_combobox($htmlname);
|
||||
}
|
||||
|
||||
return $out;
|
||||
}
|
||||
|
||||
@ -778,7 +778,8 @@ class FormFile
|
||||
$out.= '<td class="right nowraponall">';
|
||||
if ($delallowed)
|
||||
{
|
||||
$out.= '<a href="'.$urlsource.(strpos($urlsource,'?')?'&':'?').'action=remove_file&file='.urlencode($relativepath);
|
||||
$tmpurlsource = preg_replace('/#[a-zA-Z0-9_]*$/', '', $urlsource);
|
||||
$out.= '<a href="'.$tmpurlsource.(strpos($tmpurlsource,'?')?'&':'?').'action=remove_file&file='.urlencode($relativepath);
|
||||
$out.= ($param?'&'.$param:'');
|
||||
//$out.= '&modulepart='.$modulepart; // TODO obsolete ?
|
||||
//$out.= '&urlsource='.urlencode($urlsource); // TODO obsolete ?
|
||||
@ -814,7 +815,7 @@ class FormFile
|
||||
|
||||
$this->numoffiles++;
|
||||
}
|
||||
// Loop on each file found
|
||||
// Loop on each link found
|
||||
if (is_array($link_list))
|
||||
{
|
||||
$colspan=2;
|
||||
@ -1304,8 +1305,7 @@ class FormFile
|
||||
if (! empty($conf->dol_use_jmobile)) $useajax=0;
|
||||
if (empty($conf->use_javascript_ajax)) $useajax=0;
|
||||
if (! empty($conf->global->MAIN_ECM_DISABLE_JS)) $useajax=0;
|
||||
|
||||
print '<a href="'.(($useinecm && $useajax)?'#':$url.'?action=delete&urlfile='.urlencode($filepath).$param).'" class="deletefilelink" rel="'.$filepath.'">'.img_delete().'</a>';
|
||||
print '<a href="'.(($useinecm && $useajax)?'#':($url.'?action=delete&urlfile='.urlencode($filepath).$param)).'" class="deletefilelink" rel="'.$filepath.'">'.img_delete().'</a>';
|
||||
}
|
||||
print "</td>";
|
||||
|
||||
|
||||
@ -286,7 +286,7 @@ class FormMail extends Form
|
||||
|
||||
$disablebademails=1;
|
||||
|
||||
// Define output language
|
||||
// Define output language
|
||||
$outputlangs = $langs;
|
||||
$newlang = '';
|
||||
if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $this->param['langsmodels'];
|
||||
@ -1082,7 +1082,7 @@ class FormMail extends Form
|
||||
$sql.= " AND (private = 0 OR fk_user = ".$user->id.")"; // Get all public or private owned
|
||||
if ($active >= 0) $sql.=" AND active = ".$active;
|
||||
if ($label) $sql.=" AND label ='".$db->escape($label)."'";
|
||||
if (is_object($outputlangs)) $sql.= " AND (lang = '".$db->escape($outputlangs->defaultlang)."' OR lang IS NULL OR lang = '')";
|
||||
if (! ($id > 0) && is_object($outputlangs)) $sql.= " AND (lang = '".$db->escape($outputlangs->defaultlang)."' OR lang IS NULL OR lang = '')";
|
||||
if ($id > 0) $sql.= " AND rowid=".$id;
|
||||
if ($id == -1) $sql.= " AND position=0";
|
||||
if (is_object($outputlangs)) $sql.= $db->order("position,lang,label","ASC,DESC,ASC"); // We want line with lang set first, then with lang null or ''
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
require_once DOL_DOCUMENT_ROOT .'/core/class/html.form.class.php';
|
||||
|
||||
/**
|
||||
* Class to offer components to list and upload files
|
||||
* Class to offer components to list and upload files
|
||||
*/
|
||||
class FormMailing extends Form
|
||||
{
|
||||
@ -37,7 +37,8 @@ class FormMailing extends Form
|
||||
* @param integer $show_empty Show empty option
|
||||
* @return string HTML select
|
||||
*/
|
||||
public function selectDestinariesStatus($selectedid='',$htmlname='dest_status', $show_empty=0) {
|
||||
public function selectDestinariesStatus($selectedid='', $htmlname='dest_status', $show_empty=0)
|
||||
{
|
||||
|
||||
global $langs;
|
||||
$langs->load("mails");
|
||||
@ -54,5 +55,5 @@ class FormMailing extends Form
|
||||
$options = $options + $mailing->statut_dest;
|
||||
|
||||
return Form::selectarray($htmlname, $options, $selectedid, 0, 0, 0, '', 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -33,7 +33,11 @@ class Interfaces
|
||||
{
|
||||
var $db;
|
||||
var $dir; // Directory with all core and external triggers files
|
||||
var $errors = array(); // Array for errors
|
||||
/**
|
||||
*
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array ();
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
|
||||
@ -370,7 +370,8 @@ class Ldap
|
||||
*
|
||||
* @return boolean version
|
||||
*/
|
||||
function setVersion() {
|
||||
function setVersion()
|
||||
{
|
||||
// LDAP_OPT_PROTOCOL_VERSION est une constante qui vaut 17
|
||||
$ldapsetversion = ldap_set_option($this->connection, LDAP_OPT_PROTOCOL_VERSION, $this->ldapProtocolVersion);
|
||||
return $ldapsetversion;
|
||||
@ -381,7 +382,8 @@ class Ldap
|
||||
*
|
||||
* @return boolean referrals
|
||||
*/
|
||||
function setReferrals() {
|
||||
function setReferrals()
|
||||
{
|
||||
// LDAP_OPT_REFERRALS est une constante qui vaut ?
|
||||
$ldapreferrals = ldap_set_option($this->connection, LDAP_OPT_REFERRALS, 0);
|
||||
return $ldapreferrals;
|
||||
|
||||
@ -33,7 +33,11 @@ class Notify
|
||||
var $id;
|
||||
var $db;
|
||||
var $error;
|
||||
var $errors=array();
|
||||
|
||||
/**
|
||||
* @var string[] Error codes (or messages)
|
||||
*/
|
||||
public $errors = array();
|
||||
|
||||
var $author;
|
||||
var $ref;
|
||||
|
||||
@ -30,8 +30,8 @@ class SimpleOpenID
|
||||
var $URLs = array();
|
||||
var $error = array();
|
||||
var $fields = array(
|
||||
'required' => array(),
|
||||
'optional' => array(),
|
||||
'required' => array(),
|
||||
'optional' => array(),
|
||||
);
|
||||
|
||||
/**
|
||||
@ -126,7 +126,8 @@ class SimpleOpenID
|
||||
* @return void
|
||||
*/
|
||||
function SetIdentity($a)
|
||||
{ // Set Identity URL
|
||||
{
|
||||
// Set Identity URL
|
||||
if ((stripos($a, 'http://') === false)
|
||||
&& (stripos($a, 'https://') === false)){
|
||||
$a = 'http://'.$a;
|
||||
@ -153,7 +154,8 @@ class SimpleOpenID
|
||||
* @return string
|
||||
*/
|
||||
function GetIdentity()
|
||||
{ // Get Identity
|
||||
{
|
||||
// Get Identity
|
||||
return $this->openid_url_identity;
|
||||
}
|
||||
|
||||
@ -254,7 +256,8 @@ class SimpleOpenID
|
||||
* @return false|string false if KO, string of url if OK
|
||||
*/
|
||||
function array2url($arr)
|
||||
{ // converts associated array to URL Query String
|
||||
{
|
||||
// converts associated array to URL Query String
|
||||
if (!is_array($arr)){
|
||||
return false;
|
||||
}
|
||||
@ -306,7 +309,8 @@ class SimpleOpenID
|
||||
* @return string
|
||||
*/
|
||||
function CURL_Request($url, $method="GET", $params = "")
|
||||
{ // Remember, SSL MUST BE SUPPORTED
|
||||
{
|
||||
// Remember, SSL MUST BE SUPPORTED
|
||||
if (is_array($params)) $params = $this->array2url($params);
|
||||
|
||||
$curl = curl_init($url . ($method == "GET" && $params != "" ? "?" . $params : ""));
|
||||
@ -361,7 +365,7 @@ class SimpleOpenID
|
||||
*/
|
||||
function GetOpenIDServer($url='')
|
||||
{
|
||||
global $conf;
|
||||
global $conf;
|
||||
|
||||
include_once DOL_DOCUMENT_ROOT.'/core/lib/geturl.lib.php';
|
||||
if (empty($url)) $url=$conf->global->MAIN_AUTHENTICATION_OPENID_URL;
|
||||
@ -522,4 +526,3 @@ class SimpleOpenID
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -1650,7 +1650,7 @@ class SMTPs
|
||||
* @param integer $_value Message Priority
|
||||
* @return void
|
||||
*/
|
||||
function setPriority ( $_value = 3 )
|
||||
function setPriority( $_value = 3 )
|
||||
{
|
||||
if ( ( is_numeric($_value) ) &&
|
||||
( ( $_value >= 0 ) && ( $_value <= 5 ) ) )
|
||||
@ -1814,12 +1814,14 @@ class SMTPs
|
||||
* @param int $_errNum Error Code Number
|
||||
* @param string $_errMsg Error Message
|
||||
* @return void
|
||||
*/
|
||||
function _setErr ( $_errNum, $_errMsg )
|
||||
{
|
||||
$this->_smtpsErrors[] = array( 'num' => $_errNum,
|
||||
'msg' => $_errMsg );
|
||||
}
|
||||
*/
|
||||
function _setErr( $_errNum, $_errMsg )
|
||||
{
|
||||
$this->_smtpsErrors[] = array(
|
||||
'num' => $_errNum,
|
||||
'msg' => $_errMsg,
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns errors codes and messages for Class
|
||||
@ -2049,4 +2051,3 @@ class SMTPs
|
||||
* - basic shell with some commets
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
@ -677,7 +677,8 @@ class Utils
|
||||
*
|
||||
* @return int 0 if OK, < 0 if KO
|
||||
*/
|
||||
function compressSyslogs() {
|
||||
function compressSyslogs()
|
||||
{
|
||||
global $conf;
|
||||
|
||||
if(empty($conf->loghandlers['mod_syslog_file'])) { // File Syslog disabled
|
||||
|
||||
@ -111,12 +111,13 @@ class vCard
|
||||
* mise en forme de la photo
|
||||
* warning NON TESTE !
|
||||
*
|
||||
* @param string $type Type
|
||||
* @param string $photo Photo
|
||||
* @return void
|
||||
*/
|
||||
* @param string $type Type
|
||||
* @param string $photo Photo
|
||||
* @return void
|
||||
*/
|
||||
function setPhoto($type, $photo)
|
||||
{ // $type = "GIF" | "JPEG"
|
||||
{
|
||||
// $type = "GIF" | "JPEG"
|
||||
$this->properties["PHOTO;TYPE=$type;ENCODING=BASE64"] = base64_encode($photo);
|
||||
}
|
||||
|
||||
@ -155,7 +156,7 @@ class vCard
|
||||
* @return void
|
||||
*/
|
||||
function setBirthday($date)
|
||||
{
|
||||
{
|
||||
// $date format is YYYY-MM-DD - RFC 2425 and RFC 2426
|
||||
$this->properties["BDAY"] = dol_print_date($date, 'dayrfc');
|
||||
}
|
||||
@ -200,7 +201,8 @@ class vCard
|
||||
* @param string $type Type
|
||||
* @return void
|
||||
*/
|
||||
function setLabel($postoffice="", $extended="", $street="", $city="", $region="", $zip="", $country="", $type="HOME;POSTAL") {
|
||||
function setLabel($postoffice="", $extended="", $street="", $city="", $region="", $zip="", $country="", $type="HOME;POSTAL")
|
||||
{
|
||||
$label = "";
|
||||
if ($postoffice!="") $label.= "$postoffice\r\n";
|
||||
if ($extended!="") $label.= "$extended\r\n";
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2018 Charlene Benke <charlie@patas-monkey.com>
|
||||
*
|
||||
* 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
|
||||
@ -66,4 +67,10 @@ class WorkboardResponse
|
||||
*/
|
||||
public $nbtodolate = 0;
|
||||
|
||||
}
|
||||
/**
|
||||
* total price of items
|
||||
* @var int
|
||||
*/
|
||||
public $total = 0;
|
||||
|
||||
}
|
||||
|
||||
@ -1138,7 +1138,8 @@ class DoliDBMssql extends DoliDB
|
||||
* @param string $fieldname Field's name to escape
|
||||
* @return string field's name escaped
|
||||
*/
|
||||
function EscapeFieldName($fieldname) {
|
||||
function EscapeFieldName($fieldname)
|
||||
{
|
||||
return "[".$fieldname."]";
|
||||
}
|
||||
|
||||
@ -1150,7 +1151,8 @@ class DoliDBMssql extends DoliDB
|
||||
* @param mixed $fields String for one field or array of string for multiple field
|
||||
* @return false|object
|
||||
*/
|
||||
function GetFieldInformation($table,$fields) {
|
||||
function GetFieldInformation($table,$fields)
|
||||
{
|
||||
$sql="SELECT * from INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='".$this->escape($table)."' AND COLUMN_NAME";
|
||||
if (is_array($fields))
|
||||
{
|
||||
@ -1176,4 +1178,3 @@ class DoliDBMssql extends DoliDB
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -1302,7 +1302,8 @@ class DoliDBSqlite3 extends DoliDB
|
||||
* @param int $day Day
|
||||
* @return int Formatted date
|
||||
*/
|
||||
private static function calc_daynr($year, $month, $day) {
|
||||
private static function calc_daynr($year, $month, $day)
|
||||
{
|
||||
$y = $year;
|
||||
if ($y == 0 && $month == 0) return 0;
|
||||
$num = (365* $y + 31 * ($month - 1) + $day);
|
||||
@ -1322,7 +1323,8 @@ class DoliDBSqlite3 extends DoliDB
|
||||
* @param bool $sunday_first_day_of_week ???
|
||||
* @return int
|
||||
*/
|
||||
private static function calc_weekday($daynr, $sunday_first_day_of_week) {
|
||||
private static function calc_weekday($daynr, $sunday_first_day_of_week)
|
||||
{
|
||||
$ret = floor(($daynr + 5 + ($sunday_first_day_of_week ? 1 : 0)) % 7);
|
||||
return $ret;
|
||||
}
|
||||
@ -1348,7 +1350,8 @@ class DoliDBSqlite3 extends DoliDB
|
||||
* @param string $calc_year ???
|
||||
* @return string ???
|
||||
*/
|
||||
private static function calc_week($year, $month, $day, $week_behaviour, &$calc_year) {
|
||||
private static function calc_week($year, $month, $day, $week_behaviour, &$calc_year)
|
||||
{
|
||||
$daynr=self::calc_daynr($year,$month,$day);
|
||||
$first_daynr=self::calc_daynr($year,1,1);
|
||||
$monday_first= ($week_behaviour & self::WEEK_MONDAY_FIRST) ? 1 : 0;
|
||||
@ -1388,4 +1391,3 @@ class DoliDBSqlite3 extends DoliDB
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
|
||||
/**
|
||||
* CombinePaths
|
||||
*
|
||||
*
|
||||
* @param string $sBasePath sBasePath
|
||||
* @param string $sFolder sFolder
|
||||
* @return string Combined path
|
||||
@ -393,13 +393,13 @@ EOF;
|
||||
// This is the function that sends the results of the uploading process to CKE.
|
||||
/**
|
||||
* SendCKEditorResults
|
||||
*
|
||||
*
|
||||
* @param string $callback callback
|
||||
* @param string $sFileUrl sFileUrl
|
||||
* @param string $customMsg customMsg
|
||||
* @return void
|
||||
*/
|
||||
function SendCKEditorResults ($callback, $sFileUrl, $customMsg = '')
|
||||
function SendCKEditorResults($callback, $sFileUrl, $customMsg = '')
|
||||
{
|
||||
echo '<script type="text/javascript">';
|
||||
|
||||
@ -409,5 +409,3 @@ function SendCKEditorResults ($callback, $sFileUrl, $customMsg = '')
|
||||
|
||||
echo '</script>';
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -161,7 +161,8 @@ function bank_admin_prepare_head($object)
|
||||
* @param Object $object Object related to tabs
|
||||
* @return array Array of tabs to shoc
|
||||
*/
|
||||
function various_payment_prepare_head($object) {
|
||||
function various_payment_prepare_head($object)
|
||||
{
|
||||
|
||||
global $db, $langs, $conf;
|
||||
|
||||
@ -358,7 +359,7 @@ function checkES($IentOfi, $InumCta)
|
||||
for ($i = 0; $i < 11; $i++) {
|
||||
$sum += $values[$i] * (int) substr($InumCta, $i, 1);//int to cast result of substr to a number
|
||||
}
|
||||
|
||||
|
||||
$key = 11 - $sum % 11;
|
||||
|
||||
if ($key == 10)
|
||||
@ -369,4 +370,3 @@ function checkES($IentOfi, $InumCta)
|
||||
$keycontrol .= $key;
|
||||
return $keycontrol;
|
||||
}
|
||||
|
||||
|
||||
@ -67,7 +67,7 @@ function expensereport_prepare_head($object)
|
||||
$head[$h][2] = 'note';
|
||||
$h++;
|
||||
}
|
||||
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT . '/expensereport/info.php?id=' . $object->id;
|
||||
$head[$h][1] = $langs->trans("Info");
|
||||
$head[$h][2] = 'info';
|
||||
@ -81,11 +81,12 @@ function expensereport_prepare_head($object)
|
||||
/**
|
||||
* Returns an array with the tabs for the "Expense report payment" section
|
||||
* It loads tabs from modules looking for the entity payment
|
||||
*
|
||||
*
|
||||
* @param Paiement $object Current payment object
|
||||
* @return array Tabs for the payment section
|
||||
*/
|
||||
function payment_expensereport_prepare_head(PaymentExpenseReport $object) {
|
||||
function payment_expensereport_prepare_head(PaymentExpenseReport $object)
|
||||
{
|
||||
|
||||
global $langs, $conf;
|
||||
|
||||
@ -139,7 +140,7 @@ function expensereport_admin_prepare_head()
|
||||
$head[$h][2] = 'expenseik';
|
||||
$h++;
|
||||
}
|
||||
|
||||
|
||||
if (!empty($conf->global->MAIN_USE_EXPENSE_RULE))
|
||||
{
|
||||
$head[$h][0] = DOL_URL_ROOT."/admin/expensereport_rules.php";
|
||||
@ -147,7 +148,7 @@ function expensereport_admin_prepare_head()
|
||||
$head[$h][2] = 'expenserules';
|
||||
$h++;
|
||||
}
|
||||
|
||||
|
||||
// Show more tabs from modules
|
||||
// Entries must be declared in modules descriptor with line
|
||||
// $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab
|
||||
@ -168,5 +169,5 @@ function expensereport_admin_prepare_head()
|
||||
|
||||
complete_head_from_modules($conf,$langs,null,$head,$h,'expensereport_admin','remove');
|
||||
|
||||
return $head;
|
||||
return $head;
|
||||
}
|
||||
|
||||
@ -76,11 +76,11 @@ function fichinter_prepare_head($object)
|
||||
foreach($resources as $resource_obj)
|
||||
{
|
||||
$linked_resources = $object->getElementResources('fichinter',$object->id,$resource_obj);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/resource/element_resource.php?element=fichinter&element_id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("Resources");
|
||||
if ($nbResource > 0) $head[$h][1].= ' <span class="badge">'.$nbResource.'</span>';
|
||||
@ -163,13 +163,13 @@ function fichinter_admin_prepare_head()
|
||||
return $head;
|
||||
}
|
||||
|
||||
function fichinter_rec_prepare_head ($object)
|
||||
function fichinter_rec_prepare_head($object)
|
||||
{
|
||||
global $langs, $conf; //, $user;
|
||||
|
||||
|
||||
$h = 0;
|
||||
$head = array();
|
||||
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/fichinter/card-rec.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("CardFichinter");
|
||||
$head[$h][2] = 'card';
|
||||
@ -182,4 +182,3 @@ function fichinter_rec_prepare_head ($object)
|
||||
|
||||
return $head;
|
||||
}
|
||||
|
||||
|
||||
@ -1167,7 +1167,8 @@ function get_next_value($db,$mask,$table,$field,$where='',$objsoc='',$date='',$m
|
||||
return $numFinal;
|
||||
}
|
||||
|
||||
function get_string_between($string, $start, $end){
|
||||
function get_string_between($string, $start, $end)
|
||||
{
|
||||
$string = " ".$string;
|
||||
$ini = strpos($string,$start);
|
||||
if ($ini == 0) return "";
|
||||
@ -2197,7 +2198,8 @@ function colorStringToArray($stringcolor,$colorifnotfound=array(88,88,88))
|
||||
* @param array $input Array of products
|
||||
* @return array Array of combinations
|
||||
*/
|
||||
function cartesianArray(array $input) {
|
||||
function cartesianArray(array $input)
|
||||
{
|
||||
// filter out empty values
|
||||
$input = array_filter($input);
|
||||
|
||||
@ -2305,8 +2307,9 @@ function getModuleDirForApiClass($module)
|
||||
* @param $max int Between 0 and 255
|
||||
* @return String
|
||||
*/
|
||||
function random_color_part($min=0,$max=255) {
|
||||
return str_pad( dechex( mt_rand( $min, $max) ), 2, '0', STR_PAD_LEFT);
|
||||
function random_color_part($min=0,$max=255)
|
||||
{
|
||||
return str_pad( dechex( mt_rand( $min, $max) ), 2, '0', STR_PAD_LEFT);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2316,6 +2319,7 @@ function random_color_part($min=0,$max=255) {
|
||||
* @param $max int Between 0 and 255
|
||||
* @return String
|
||||
*/
|
||||
function random_color($min=0, $max=255) {
|
||||
return random_color_part($min, $max) . random_color_part($min, $max) . random_color_part($min, $max);
|
||||
function random_color($min=0, $max=255)
|
||||
{
|
||||
return random_color_part($min, $max) . random_color_part($min, $max) . random_color_part($min, $max);
|
||||
}
|
||||
|
||||
@ -24,7 +24,8 @@
|
||||
* @param Paiement $object Current payment object
|
||||
* @return array Tabs for the payment section
|
||||
*/
|
||||
function payment_prepare_head(Paiement $object) {
|
||||
function payment_prepare_head(Paiement $object)
|
||||
{
|
||||
|
||||
global $langs, $conf;
|
||||
|
||||
@ -59,7 +60,8 @@ function payment_prepare_head(Paiement $object) {
|
||||
* @param Paiement $object Current payment object
|
||||
* @return array Tabs for the payment section
|
||||
*/
|
||||
function payment_supplier_prepare_head(Paiement $object) {
|
||||
function payment_supplier_prepare_head(Paiement $object)
|
||||
{
|
||||
|
||||
global $langs, $conf;
|
||||
|
||||
@ -329,7 +331,7 @@ function htmlPrintOnlinePaymentFooter($fromcompany, $langs, $addformmessage=0, $
|
||||
print '<font style="font-size: 10px;"><br><hr>'."\n";
|
||||
print $fromcompany->name.'<br>';
|
||||
print $line1;
|
||||
if (strlen($line1+$line2) > 50) print '<br>';
|
||||
if (strlen($line1.$line2) > 50) print '<br>';
|
||||
else print ' - ';
|
||||
print $line2;
|
||||
print '</font></div>'."\n";
|
||||
|
||||
@ -104,9 +104,24 @@ function project_prepare_head($object)
|
||||
$head[$h][2] = 'tasks';
|
||||
$h++;
|
||||
|
||||
$nbTimeSpent=0;
|
||||
$sql = "SELECT t.rowid";
|
||||
//$sql .= " FROM ".MAIN_DB_PREFIX."projet_task_time as t, ".MAIN_DB_PREFIX."projet_task as pt, ".MAIN_DB_PREFIX."user as u";
|
||||
//$sql .= " WHERE t.fk_user = u.rowid AND t.fk_task = pt.rowid";
|
||||
$sql .= " FROM ".MAIN_DB_PREFIX."projet_task_time as t, ".MAIN_DB_PREFIX."projet_task as pt";
|
||||
$sql .= " WHERE t.fk_task = pt.rowid";
|
||||
$sql .= " AND pt.fk_projet =".$object->id;
|
||||
$resql = $db->query($sql);
|
||||
if ($resql)
|
||||
{
|
||||
$obj = $db->fetch_object($resql);
|
||||
if ($obj) $nbTimeSpent=1;
|
||||
}
|
||||
else dol_print_error($db);
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/projet/tasks/time.php?withproject=1&projectid='.$object->id;
|
||||
$head[$h][1] = $langs->trans("TimeSpent");
|
||||
//if ($nbTasks > 0) $head[$h][1].= ' <span class="badge">'.($nbTasks).'</span>';
|
||||
if ($nbTimeSpent > 0) $head[$h][1].= ' <span class="badge">...</span>';
|
||||
$head[$h][2] = 'timespent';
|
||||
$h++;
|
||||
}
|
||||
@ -165,9 +180,10 @@ function task_prepare_head($object)
|
||||
// Is there timespent ?
|
||||
$nbTimeSpent=0;
|
||||
$sql = "SELECT t.rowid";
|
||||
$sql .= " FROM ".MAIN_DB_PREFIX."projet_task_time as t, ".MAIN_DB_PREFIX."projet_task as pt, ".MAIN_DB_PREFIX."user as u";
|
||||
$sql .= " WHERE t.fk_user = u.rowid AND t.fk_task = pt.rowid";
|
||||
$sql .= " AND t.fk_task =".$object->id;
|
||||
//$sql .= " FROM ".MAIN_DB_PREFIX."projet_task_time as t, ".MAIN_DB_PREFIX."projet_task as pt, ".MAIN_DB_PREFIX."user as u";
|
||||
//$sql .= " WHERE t.fk_user = u.rowid AND t.fk_task = pt.rowid";
|
||||
$sql .= " FROM ".MAIN_DB_PREFIX."projet_task_time as t";
|
||||
$sql .= " WHERE t.fk_task =".$object->id;
|
||||
$resql = $db->query($sql);
|
||||
if ($resql)
|
||||
{
|
||||
|
||||
@ -48,6 +48,7 @@ function propal_prepare_head($object)
|
||||
|| (! empty($conf->livraison_bon->enabled) && $user->rights->expedition->livraison->lire))))
|
||||
{
|
||||
$langs->load("sendings");
|
||||
$text = '';
|
||||
$head[$h][0] = DOL_URL_ROOT.'/expedition/propal.php?id='.$object->id;
|
||||
if ($conf->expedition_bon->enabled) $text=$langs->trans("Shipment");
|
||||
if ($conf->livraison_bon->enabled) $text.='/'.$langs->trans("Receivings");
|
||||
|
||||
@ -87,7 +87,8 @@ function resource_prepare_head($object)
|
||||
return $head;
|
||||
}
|
||||
|
||||
function resource_admin_prepare_head() {
|
||||
function resource_admin_prepare_head()
|
||||
{
|
||||
|
||||
global $langs, $conf, $user;
|
||||
|
||||
|
||||
@ -20,14 +20,15 @@
|
||||
/**
|
||||
* Returns an array with the tabs for the "salaries" section
|
||||
* It loads tabs from modules looking for the entity salaries
|
||||
*
|
||||
*
|
||||
* @param Paiement $object Current salaries object
|
||||
* @return array Tabs for the salaries section
|
||||
*/
|
||||
function salaries_prepare_head($object) {
|
||||
|
||||
function salaries_prepare_head($object)
|
||||
{
|
||||
|
||||
global $db, $langs, $conf;
|
||||
|
||||
|
||||
$h = 0;
|
||||
$head = array();
|
||||
|
||||
@ -57,7 +58,7 @@ function salaries_prepare_head($object) {
|
||||
$head[$h][1] = $langs->trans("Info");
|
||||
$head[$h][2] = 'info';
|
||||
$h++;
|
||||
|
||||
|
||||
complete_head_from_modules($conf,$langs,$object,$head,$h,'salaries', 'remove');
|
||||
|
||||
return $head;
|
||||
|
||||
@ -28,7 +28,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
|
||||
*/
|
||||
abstract class ModeleAction extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return list of active generation modules
|
||||
|
||||
@ -31,7 +31,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
|
||||
*/
|
||||
abstract class ModeleBankAccountDoc extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -33,7 +33,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/barcode.lib.php'; // This is to inc
|
||||
class modPhpbarcode extends ModeleBarCode
|
||||
{
|
||||
var $version='dolibarr'; // 'development', 'experimental', 'dolibarr'
|
||||
var $error='';
|
||||
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -32,7 +32,12 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/barcode.lib.php'; // This is to inc
|
||||
class modTcpdfbarcode extends ModeleBarCode
|
||||
{
|
||||
var $version='dolibarr'; // 'development', 'experimental', 'dolibarr'
|
||||
var $error='';
|
||||
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
var $is2d = false;
|
||||
|
||||
/**
|
||||
|
||||
@ -29,7 +29,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/functions.lib.php';
|
||||
*/
|
||||
abstract class ModeleBarCode
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
@ -50,7 +53,10 @@ abstract class ModeleBarCode
|
||||
*/
|
||||
abstract class ModeleNumRefBarCode
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/** Return default description of numbering model
|
||||
*
|
||||
|
||||
@ -31,7 +31,10 @@ class mod_chequereceipt_mint extends ModeleNumRefChequeReceipts
|
||||
{
|
||||
var $version='dolibarr'; // 'development', 'experimental', 'dolibarr'
|
||||
var $prefix='CHK';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
var $name='Mint';
|
||||
|
||||
|
||||
|
||||
@ -36,7 +36,10 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; // Requ
|
||||
*/
|
||||
abstract class ModeleNumRefChequeReceipts
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
@ -119,7 +122,10 @@ abstract class ModeleNumRefChequeReceipts
|
||||
*/
|
||||
abstract class ModeleChequeReceipts extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return list of active generation modules
|
||||
|
||||
@ -31,7 +31,10 @@ class mod_commande_marbre extends ModeleNumRefCommandes
|
||||
{
|
||||
var $version='dolibarr'; // 'development', 'experimental', 'dolibarr'
|
||||
var $prefix='CO';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
var $nom='Marbre';
|
||||
|
||||
|
||||
|
||||
@ -39,7 +39,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php';
|
||||
*/
|
||||
abstract class ModelePDFCommandes extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return list of active generation modules
|
||||
@ -71,7 +74,10 @@ abstract class ModelePDFCommandes extends CommonDocGenerator
|
||||
|
||||
abstract class ModeleNumRefCommandes
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
|
||||
@ -30,7 +30,10 @@ class mod_contract_serpis extends ModelNumRefContracts
|
||||
{
|
||||
var $version='dolibarr';
|
||||
var $prefix='CT';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
var $nom='Serpis';
|
||||
var $code_auto=1;
|
||||
|
||||
|
||||
@ -37,7 +37,10 @@
|
||||
*/
|
||||
abstract class ModelePDFContract extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
@ -67,7 +70,10 @@ abstract class ModelePDFContract extends CommonDocGenerator
|
||||
*/
|
||||
class ModelNumRefContracts
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
|
||||
@ -34,7 +34,10 @@ require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
|
||||
*/
|
||||
abstract class ModeleDon extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return list of active generation modules
|
||||
@ -63,7 +66,10 @@ abstract class ModeleDon extends CommonDocGenerator
|
||||
*/
|
||||
abstract class ModeleNumRefDons
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
|
||||
@ -30,7 +30,10 @@ class mod_expedition_safor extends ModelNumRefExpedition
|
||||
{
|
||||
var $version='dolibarr';
|
||||
var $prefix='SH';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
var $nom='Safor';
|
||||
|
||||
|
||||
|
||||
@ -36,7 +36,10 @@
|
||||
*/
|
||||
abstract class ModelePdfExpedition extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
@ -66,7 +69,10 @@ abstract class ModelePdfExpedition extends CommonDocGenerator
|
||||
*/
|
||||
abstract class ModelNumRefExpedition
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/** Return if a model can be used or not
|
||||
*
|
||||
|
||||
@ -30,7 +30,10 @@ class mod_expensereport_jade extends ModeleNumRefExpenseReport
|
||||
{
|
||||
var $version='dolibarr'; // 'development', 'experimental', 'dolibarr'
|
||||
var $prefix='ER';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
var $nom='Jade';
|
||||
|
||||
|
||||
|
||||
@ -23,7 +23,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
|
||||
*/
|
||||
abstract class ModeleExpenseReport extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
@ -73,7 +76,10 @@ function expensereport_pdf_create(DoliDB $db, ExpenseReport $object, $message, $
|
||||
|
||||
abstract class ModeleNumRefExpenseReport
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
|
||||
@ -30,7 +30,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
|
||||
*/
|
||||
class ModeleExports extends CommonDocGenerator // This class can't be abstract as there is instance propreties loaded by liste_modeles
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
var $driverlabel=array();
|
||||
var $driverversion=array();
|
||||
|
||||
@ -35,7 +35,10 @@ class mod_facture_mars extends ModeleNumRefFactures
|
||||
var $prefixreplacement='FR';
|
||||
var $prefixdeposit='AC';
|
||||
var $prefixcreditnote='AV';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -33,7 +33,10 @@ class mod_facture_terre extends ModeleNumRefFactures
|
||||
var $prefixinvoice='FA';
|
||||
var $prefixcreditnote='AV';
|
||||
var $prefixdeposit='AC';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -37,7 +37,10 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; // Requ
|
||||
*/
|
||||
abstract class ModelePDFFactures extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return list of active generation modules
|
||||
@ -65,7 +68,10 @@ abstract class ModelePDFFactures extends CommonDocGenerator
|
||||
*/
|
||||
abstract class ModeleNumRefFactures
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
|
||||
@ -32,7 +32,10 @@ class mod_pacific extends ModeleNumRefFicheinter
|
||||
{
|
||||
var $version='dolibarr'; // 'development', 'experimental', 'dolibarr'
|
||||
var $prefix='FI';
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
var $nom = 'pacific';
|
||||
|
||||
|
||||
|
||||
@ -34,7 +34,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
|
||||
*/
|
||||
abstract class ModelePDFFicheinter extends CommonDocGenerator
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
|
||||
/**
|
||||
@ -64,7 +67,10 @@ abstract class ModelePDFFicheinter extends CommonDocGenerator
|
||||
*/
|
||||
abstract class ModeleNumRefFicheinter
|
||||
{
|
||||
var $error='';
|
||||
/**
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error='';
|
||||
|
||||
/**
|
||||
* Return if a module can be used or not
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user