Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#1

This commit is contained in:
lmarcouiller 2021-01-19 09:05:08 +01:00
commit fd888be5e5
13 changed files with 99 additions and 68 deletions

View File

@ -1,3 +1,7 @@
Barcode EAN 13
FR
==
Signification des chiffres. Signification des chiffres.
- 2 chiffres pour le code pays ou code systeme - 2 chiffres pour le code pays ou code systeme
@ -9,6 +13,24 @@ Cette regle subit de nombreuses entorses pour ameliorer l'usage des chiffres dis
Voici la liste des codes pays ou systeme : Voici la liste des codes pays ou systeme :
EN
==
Meaning of the numbers.
- 2 digits for the country code or system code
- 5 digits for the company identifier
- 5 digits for item identifier
- 1 digit for checksum
This rule has been twisted many times to improve the use of the available numbers.
Here is the list of country codes or system:
List
====
00 <20> 13 UCC (Etats-Unis et Canada) 00 <20> 13 UCC (Etats-Unis et Canada)
20 <20> 29 Codification interne en magasin 20 <20> 29 Codification interne en magasin
30 <20> 37 GENCOD-EAN France 30 <20> 37 GENCOD-EAN France
@ -104,4 +126,4 @@ Voici la liste des codes pays ou systeme :
978 - 979 Livres (ISBN) 978 - 979 Livres (ISBN)
980 Refus de remboursement 980 Refus de remboursement
981 - 982 Coupons (monnaie courante) 981 - 982 Coupons (monnaie courante)
99 Coupons 99 Coupons

View File

@ -1,5 +1,6 @@
* Page with license compatibility * Page with license compatibility
https://www.gnu.org/licenses/quick-guide-gplv3.fr.html [EN] https://www.gnu.org/licenses/quick-guide-gplv3.en.html
[FR] https://www.gnu.org/licenses/quick-guide-gplv3.fr.html
* FAQ on GPL license * FAQ on GPL license
https://www.fsf.org/licensing/licenses/gpl-faq.html https://www.fsf.org/licensing/licenses/gpl-faq.html

View File

@ -5,13 +5,13 @@ server {
root /path/to/your/htdocs; root /path/to/your/htdocs;
# Optionnal # Optional
error_log /path/to/your/log/directory/nginx.error.log; error_log /path/to/your/log/directory/nginx.error.log;
access_log /path/to/your/log/directory/nginx.access.log; access_log /path/to/your/log/directory/nginx.access.log;
index index.php index.html index.htm; index index.php index.html index.htm;
# Optionnal # Optional
server_name your-fqdn.tld; server_name your-fqdn.tld;
location / { location / {
@ -23,6 +23,6 @@ server {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_read_timeout 600; fastcgi_read_timeout 600;
include fastcgi_params; include fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_pass unix:/var/run/php5-fpm.sock; // /var/run/php/php7.0-fpm.sock
} }
} }

View File

@ -2,7 +2,7 @@
/* Copyright (C) 2003-2007 Rodolphe Quiedeville <rodolphe@quiedeville.org> /* Copyright (C) 2003-2007 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@inodbox.com> * Copyright (C) 2005-2009 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2015 Frederic France <frederic.france@free.fr> * Copyright (C) 2015-2021 Frederic France <frederic.france@netlogic.fr>
* *
* This program is free software; you can redistribute it and/or modify * 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 * it under the terms of the GNU General Public License as published by
@ -34,7 +34,7 @@ include_once DOL_DOCUMENT_ROOT . '/core/class/hookmanager.class.php';
class box_dolibarr_state_board extends ModeleBoxes class box_dolibarr_state_board extends ModeleBoxes
{ {
public $boxcode = "dolibarrstatebox"; public $boxcode = "dolibarrstatebox";
public $boximg = "box_user"; public $boximg = "generic";
public $boxlabel = "BoxDolibarrStateBoard"; public $boxlabel = "BoxDolibarrStateBoard";
public $depends = array("user"); public $depends = array("user");
@ -62,7 +62,9 @@ class box_dolibarr_state_board extends ModeleBoxes
$this->db = $db; $this->db = $db;
// disable box for such cases // disable box for such cases
if (!empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) $this->enabled = 0; // disabled by this option if (!empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) {
$this->enabled = 0; // disabled by this option
}
$this->hidden = !($user->rights->societe->lire && empty($user->socid)); $this->hidden = !($user->rights->societe->lire && empty($user->socid));
} }
@ -81,8 +83,7 @@ class box_dolibarr_state_board extends ModeleBoxes
$this->max = $max; $this->max = $max;
$this->info_box_head = array('text' => $langs->trans("DolibarrStateBoard")); $this->info_box_head = array('text' => $langs->trans("DolibarrStateBoard"));
if (empty($user->socid) && empty($conf->global->MAIN_DISABLE_GLOBAL_BOXSTATS)) if (empty($user->socid) && empty($conf->global->MAIN_DISABLE_GLOBAL_BOXSTATS)) {
{
$hookmanager = new HookManager($this->db); $hookmanager = new HookManager($this->db);
$hookmanager->initHooks(array('index')); $hookmanager->initHooks(array('index'));
$boxstatItems = array(); $boxstatItems = array();
@ -242,18 +243,15 @@ class box_dolibarr_state_board extends ModeleBoxes
); );
$boardloaded = array(); $boardloaded = array();
foreach ($keys as $val) foreach ($keys as $val) {
{ if ($conditions[$val]) {
if ($conditions[$val])
{
$boxstatItem = ''; $boxstatItem = '';
$class = $classes[$val]; $class = $classes[$val];
// Search in cache if load_state_board is already realized // Search in cache if load_state_board is already realized
$classkeyforcache = $class; $classkeyforcache = $class;
if ($classkeyforcache == 'ProductService') $classkeyforcache = 'Product'; // ProductService use same load_state_board than Product if ($classkeyforcache == 'ProductService') $classkeyforcache = 'Product'; // ProductService use same load_state_board than Product
if (!isset($boardloaded[$classkeyforcache]) || !is_object($boardloaded[$classkeyforcache])) if (!isset($boardloaded[$classkeyforcache]) || !is_object($boardloaded[$classkeyforcache])) {
{
include_once $includes[$val]; // Loading a class cost around 1Mb include_once $includes[$val]; // Loading a class cost around 1Mb
$board = new $class($this->db); $board = new $class($this->db);
@ -277,12 +275,10 @@ class box_dolibarr_state_board extends ModeleBoxes
} }
} }
if (!empty($boxstatFromHook) || !empty($boxstatItems)) if (!empty($boxstatFromHook) || !empty($boxstatItems)) {
{
$boxstat .= $boxstatFromHook; $boxstat .= $boxstatFromHook;
if (is_array($boxstatItems) && count($boxstatItems) > 0) if (is_array($boxstatItems) && count($boxstatItems) > 0) {
{
$boxstat .= implode('', $boxstatItems); $boxstat .= implode('', $boxstatItems);
} }
@ -302,12 +298,6 @@ class box_dolibarr_state_board extends ModeleBoxes
'td' => '', 'td' => '',
'textnoformat' => $boxstat 'textnoformat' => $boxstat
); );
} else {
$this->info_box_contents[0][0] = array(
'td' => 'class="nohover center"',
'maxlength' => 500,
'text' => ($this->db->error() . ' sql=' . $sql)
);
} }
} else { } else {
$this->info_box_contents[0][0] = array( $this->info_box_contents[0][0] = array(

View File

@ -6004,8 +6004,14 @@ abstract class CommonObject
} elseif (preg_match('/^(integer|link):(.*):(.*)/i', $val['type'], $reg)) { } elseif (preg_match('/^(integer|link):(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[2].':'.$reg[3] => 'N'); $param['options'] = array($reg[2].':'.$reg[3] => 'N');
$type = 'link'; $type = 'link';
} elseif (preg_match('/^sellist:(.*):(.*):(.*):(.*)/i', $val['type'], $reg)) { } elseif (preg_match('/^(sellist):(.*):(.*):(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[1].':'.$reg[2].':'.$reg[3].':'.$reg[4] => 'N'); $param['options'] = array($reg[2].':'.$reg[3].':'.$reg[4].':'.$reg[5] => 'N');
$type = 'sellist';
} elseif (preg_match('/^(sellist):(.*):(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[2].':'.$reg[3].':'.$reg[4] => 'N');
$type = 'sellist';
} elseif (preg_match('/^(sellist):(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[2].':'.$reg[3] => 'N');
$type = 'sellist'; $type = 'sellist';
} elseif (preg_match('/varchar\((\d+)\)/', $val['type'], $reg)) { } elseif (preg_match('/varchar\((\d+)\)/', $val['type'], $reg)) {
$param['options'] = array(); $param['options'] = array();
@ -6172,24 +6178,20 @@ abstract class CommonObject
$keyList = (empty($InfoFieldList[2]) ? 'rowid' : $InfoFieldList[2].' as rowid'); $keyList = (empty($InfoFieldList[2]) ? 'rowid' : $InfoFieldList[2].' as rowid');
if (count($InfoFieldList) > 4 && !empty($InfoFieldList[4])) if (count($InfoFieldList) > 4 && !empty($InfoFieldList[4])) {
{ if (strpos($InfoFieldList[4], 'extra.') !== false) {
if (strpos($InfoFieldList[4], 'extra.') !== false)
{
$keyList = 'main.'.$InfoFieldList[2].' as rowid'; $keyList = 'main.'.$InfoFieldList[2].' as rowid';
} else { } else {
$keyList = $InfoFieldList[2].' as rowid'; $keyList = $InfoFieldList[2].' as rowid';
} }
} }
if (count($InfoFieldList) > 3 && !empty($InfoFieldList[3])) if (count($InfoFieldList) > 3 && !empty($InfoFieldList[3])) {
{
list($parentName, $parentField) = explode('|', $InfoFieldList[3]); list($parentName, $parentField) = explode('|', $InfoFieldList[3]);
$keyList .= ', '.$parentField; $keyList .= ', '.$parentField;
} }
$fields_label = explode('|', $InfoFieldList[1]); $fields_label = explode('|', $InfoFieldList[1]);
if (is_array($fields_label)) if (is_array($fields_label)) {
{
$keyList .= ', '; $keyList .= ', ';
$keyList .= implode(', ', $fields_label); $keyList .= implode(', ', $fields_label);
} }
@ -6584,13 +6586,18 @@ abstract class CommonObject
$param['options'] = array(); $param['options'] = array();
if (!empty($val['arrayofkeyval']) && is_array($val['arrayofkeyval'])) $param['options'] = $val['arrayofkeyval']; if (!empty($val['arrayofkeyval']) && is_array($val['arrayofkeyval'])) $param['options'] = $val['arrayofkeyval'];
if (preg_match('/^integer:(.*):(.*)/i', $val['type'], $reg)) if (preg_match('/^integer:(.*):(.*)/i', $val['type'], $reg)) {
{
$type = 'link'; $type = 'link';
$param['options'] = array($reg[1].':'.$reg[2]=>$reg[1].':'.$reg[2]); $param['options'] = array($reg[1].':'.$reg[2]=>$reg[1].':'.$reg[2]);
} elseif (preg_match('/^sellist:(.*):(.*):(.*):(.*)/i', $val['type'], $reg)) { } elseif (preg_match('/^sellist:(.*):(.*):(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[1].':'.$reg[2].':'.$reg[3].':'.$reg[4] => 'N'); $param['options'] = array($reg[1].':'.$reg[2].':'.$reg[3].':'.$reg[4] => 'N');
$type = 'sellist'; $type = 'sellist';
} elseif (preg_match('/^sellist:(.*):(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[1].':'.$reg[2].':'.$reg[3] => 'N');
$type = 'sellist';
} elseif (preg_match('/^sellist:(.*):(.*)/i', $val['type'], $reg)) {
$param['options'] = array($reg[1].':'.$reg[2] => 'N');
$type = 'sellist';
} }
$langfile = $val['langfile']; $langfile = $val['langfile'];
@ -6681,8 +6688,7 @@ abstract class CommonObject
$selectkey = "rowid"; $selectkey = "rowid";
$keyList = 'rowid'; $keyList = 'rowid';
if (count($InfoFieldList) >= 3) if (count($InfoFieldList) > 4 && !empty($InfoFieldList[4])) {
{
$selectkey = $InfoFieldList[2]; $selectkey = $InfoFieldList[2];
$keyList = $InfoFieldList[2].' as rowid'; $keyList = $InfoFieldList[2].' as rowid';
} }

View File

@ -6798,8 +6798,8 @@ class Form
// Add code for jquery to use multiselect // Add code for jquery to use multiselect
if (!empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) || defined('REQUIRE_JQUERY_MULTISELECT')) { if (!empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) || defined('REQUIRE_JQUERY_MULTISELECT')) {
$out .= "\n".'<!-- JS CODE TO ENABLE select for id '.$htmlname.' --> $out .= "\n".'<!-- JS CODE TO ENABLE select for id '.$htmlname.', addjscombo='.$addjscombo.' -->';
<script>'."\n"; $out .= "\n".'<script>'."\n";
if ($addjscombo == 1) { if ($addjscombo == 1) {
$tmpplugin = empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) ?constant('REQUIRE_JQUERY_MULTISELECT') : $conf->global->MAIN_USE_JQUERY_MULTISELECT; $tmpplugin = empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) ?constant('REQUIRE_JQUERY_MULTISELECT') : $conf->global->MAIN_USE_JQUERY_MULTISELECT;
$out .= 'function formatResult(record) {'."\n"; $out .= 'function formatResult(record) {'."\n";
@ -6826,6 +6826,10 @@ class Form
formatSelection: formatSelection, formatSelection: formatSelection,
templateSelection: formatSelection /* For 4.0 */ templateSelection: formatSelection /* For 4.0 */
}); });
/* Add also morecss to the css .select2 that is after the #htmlname, for component that are show dynamically after load, because select2 set
the size only if component is not hidden by default on load */
$(\'#'.$htmlname.' + .select2\').addClass(\''.$morecss.'\');
});'."\n"; });'."\n";
} elseif ($addjscombo == 2 && !defined('DISABLE_MULTISELECT')) { } elseif ($addjscombo == 2 && !defined('DISABLE_MULTISELECT')) {
// Add other js lib // Add other js lib

View File

@ -6,7 +6,7 @@
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr> * Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com> * Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
* Copyright (C) 2016 Charlie Benke <charlie@patas-monkey.com> * Copyright (C) 2016 Charlie Benke <charlie@patas-monkey.com>
* Copyright (C) 2019 Frédéric France <frederic.france@netlogic.fr> * Copyright (C) 2019-2021 Frédéric France <frederic.france@netlogic.fr>
* Copyright (C) 2020 Pierre Ardoin <mapiolca@me.com> * Copyright (C) 2020 Pierre Ardoin <mapiolca@me.com>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
@ -280,13 +280,10 @@ class ProductFournisseur extends Product
} }
// Multicurrency // Multicurrency
$multicurrency_buyprice = null;
$multicurrency_unitBuyPrice = null; $multicurrency_unitBuyPrice = null;
$fk_multicurrency = null; $fk_multicurrency = null;
if (!empty($conf->multicurrency->enabled)) { if (!empty($conf->multicurrency->enabled)) {
if (empty($multicurrency_tx)) $multicurrency_tx = 1; if (empty($multicurrency_tx)) $multicurrency_tx = 1;
if (empty($multicurrency_buyprice)) $multicurrency_buyprice = 0;
if (empty($multicurrency_buyprice)) $multicurrency_buyprice = 0; if (empty($multicurrency_buyprice)) $multicurrency_buyprice = 0;
if ($multicurrency_price_base_type == 'TTC') if ($multicurrency_price_base_type == 'TTC')
{ {
@ -1071,9 +1068,12 @@ class ProductFournisseur extends Product
{ {
global $db, $conf, $langs; global $db, $conf, $langs;
if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips if (!empty($conf->dol_no_mouse_hover)) {
$notooltip = 1; // Force disable tooltips
}
$result = ''; $result = '';
$label = '';
if (!empty($this->entity)) { if (!empty($this->entity)) {
$tmpphoto = $this->show_photos('product', $conf->product->multidir_output[$this->entity], 1, 1, 0, 0, 0, 80); $tmpphoto = $this->show_photos('product', $conf->product->multidir_output[$this->entity], 1, 1, 0, 0, 0, 80);
@ -1112,8 +1112,7 @@ class ProductFournisseur extends Product
$label .= '<br><b>'.$langs->trans('BarCode').':</b> '.$this->barcode; $label .= '<br><b>'.$langs->trans('BarCode').':</b> '.$this->barcode;
} }
if ($this->type == Product::TYPE_PRODUCT) if ($this->type == Product::TYPE_PRODUCT) {
{
if ($this->weight) { if ($this->weight) {
$label .= "<br><b>".$langs->trans("Weight").'</b>: '.$this->weight.' '.measuringUnitString(0, "weight", $this->weight_units); $label .= "<br><b>".$langs->trans("Weight").'</b>: '.$this->weight.' '.measuringUnitString(0, "weight", $this->weight_units);
} }
@ -1161,33 +1160,40 @@ class ProductFournisseur extends Product
$url = dol_buildpath('/product/fournisseurs.php', 1).'?id='.$this->id.'&action=add_price&socid='.$this->fourn_id.'&rowid='.$this->product_fourn_price_id; $url = dol_buildpath('/product/fournisseurs.php', 1).'?id='.$this->id.'&action=add_price&socid='.$this->fourn_id.'&rowid='.$this->product_fourn_price_id;
if ($option != 'nolink') if ($option != 'nolink') {
{
// Add param to save lastsearch_values or not // Add param to save lastsearch_values or not
$add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0);
if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) {
if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; $add_save_lastsearch_values = 1;
}
if ($add_save_lastsearch_values) {
$url .= '&save_lastsearch_values=1';
}
} }
$linkclose = ''; $linkclose = '';
if (empty($notooltip)) if (empty($notooltip)) {
{ if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) {
if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER))
{
$label = $langs->trans("SupplierRef"); $label = $langs->trans("SupplierRef");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
} }
$linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"';
$linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"';
} else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); } else {
$linkclose = ($morecss ? ' class="'.$morecss.'"' : '');
}
$linkstart = '<a href="'.$url.'"'; $linkstart = '<a href="'.$url.'"';
$linkstart .= $linkclose.'>'; $linkstart .= $linkclose.'>';
$linkend = '</a>'; $linkend = '</a>';
$result .= $linkstart; $result .= $linkstart;
if ($withpicto) $result .= img_object(($notooltip ? '' : $label), ($this->picto ? $this->picto : 'generic'), ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); if ($withpicto) {
if ($withpicto != 2) $result .= $this->ref.($this->ref_supplier ? ' ('.$this->ref_supplier.')' : ''); $result .= img_object(($notooltip ? '' : $label), ($this->picto ? $this->picto : 'generic'), ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1);
}
if ($withpicto != 2) {
$result .= $this->ref.($this->ref_supplier ? ' ('.$this->ref_supplier.')' : '');
}
$result .= $linkend; $result .= $linkend;
//if ($withpicto != 2) $result.=(($addlabel && $this->label) ? $sep . dol_trunc($this->label, ($addlabel > 1 ? $addlabel : 0)) : ''); //if ($withpicto != 2) $result.=(($addlabel && $this->label) ? $sep . dol_trunc($this->label, ($addlabel > 1 ? $addlabel : 0)) : '');

View File

@ -1,4 +1,5 @@
# Dolibarr language file - Source file is en_US - boxes # Dolibarr language file - Source file is en_US - boxes
BoxDolibarrStateBoard=Statistics on main business objects in database
BoxLoginInformation=Login Information BoxLoginInformation=Login Information
BoxLastRssInfos=RSS Information BoxLastRssInfos=RSS Information
BoxLastProducts=Latest %s Products/Services BoxLastProducts=Latest %s Products/Services

View File

@ -70,7 +70,7 @@ class MyObject extends CommonObject
/** /**
* 'type' if the field format ('integer', 'integer:ObjectClass:PathToClass[:AddCreateButtonOrNot[:Filter]]', 'varchar(x)', 'double(24,8)', 'real', 'price', 'text', 'text:none', 'html', 'date', 'datetime', 'timestamp', 'duration', 'mail', 'phone', 'url', 'password') * 'type' field format ('integer', 'integer:ObjectClass:PathToClass[:AddCreateButtonOrNot[:Filter]]', 'sellist:TableName:LabelFieldName[:KeyFieldName[:KeyFieldParent[:Filter]]]', 'varchar(x)', 'double(24,8)', 'real', 'price', 'text', 'text:none', 'html', 'date', 'datetime', 'timestamp', 'duration', 'mail', 'phone', 'url', 'password')
* Note: Filter can be a string like "(t.ref:like:'SO-%') or (t.date_creation:<:'20160101') or (t.nature:is:NULL)" * Note: Filter can be a string like "(t.ref:like:'SO-%') or (t.date_creation:<:'20160101') or (t.nature:is:NULL)"
* 'label' the translation key. * 'label' the translation key.
* 'picto' is code of a picto to show before value in forms * 'picto' is code of a picto to show before value in forms

View File

@ -1,6 +1,7 @@
User-agent: * User-agent: *
Allow: /public/agenda/agendaexport.php Allow: /public/agenda/agendaexport.php
Allow: /public/demo/ Allow: /public/demo/
Allow: /public/members/new.php
Allow: /index.php Allow: /index.php
#Allow: /$ #Allow: /$
Disallow: / Disallow: /

View File

@ -1304,11 +1304,11 @@ table[summary="list_of_modules"] .fa-cog {
.minwidth500imp { min-width: 250px !important; } .minwidth500imp { min-width: 250px !important; }
} }
select.widthcentpercentminusx, input.widthcentpercentminusx { select.widthcentpercentminusx, span.widthcentpercentminusx, input.widthcentpercentminusx {
width: calc(100% - 52px) !important; width: calc(100% - 52px) !important;
display: inline-block; display: inline-block;
} }
select.widthcentpercentminusxx, input.widthcentpercentminusxx { select.widthcentpercentminusxx, span.widthcentpercentminusxx, input.widthcentpercentminusxx {
width: calc(100% - 70px) !important; width: calc(100% - 70px) !important;
display: inline-block; display: inline-block;
} }

View File

@ -1295,7 +1295,7 @@ table[summary="list_of_modules"] .fa-cog {
.minwidth500imp { min-width: 250px !important; } .minwidth500imp { min-width: 250px !important; }
} }
/* Set a width. Note: add also a max-width that will be used in priority */ /* Set a width. Note: add also a max-width, for example maxwidth500, that will be used in priority */
.widthcentpercentminusx { .widthcentpercentminusx {
width: calc(100% - 50px) !important; width: calc(100% - 50px) !important;
display: inline-block; display: inline-block;
@ -1335,7 +1335,7 @@ table[summary="list_of_modules"] .fa-cog {
padding-left: 0; padding-left: 0;
} }
.login_table input#username, .login_table input#password, .login_table input#securitycode { .login_table input#username, .login_table input#password, .login_table input#securitycode {
margin-left: 5px !important; margin-left: 5px !important;
} }
div#login_left, div#login_right { div#login_left, div#login_right {
min-width: 150px !important; min-width: 150px !important;
@ -2383,7 +2383,7 @@ form#login {
border-radius: 2px; border-radius: 2px;
} }
.login_table .tdinputlogin { .login_table .tdinputlogin {
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
} }
.login_table .tdinputlogin .fa { .login_table .tdinputlogin .fa {
padding-left: 10px; padding-left: 10px;

View File

@ -3628,11 +3628,11 @@ if ($action == 'editmeta' || $action == 'createcontainer') // Edit properties of
print '<tr><td class="toptd">'.$form->editfieldkey('Categories', 'categories', '', $objectpage, 0).'</td><td>'; print '<tr><td class="toptd">'.$form->editfieldkey('Categories', 'categories', '', $objectpage, 0).'</td><td>';
print img_picto('', 'category', 'class="paddingright"'); print img_picto('', 'category', 'class="paddingright"');
print $form->multiselectarray('categories', $cate_arbo, (GETPOSTISSET('categories') ? GETPOST('categories', 'array') : $arrayselected), null, null, 'quatrevingtpercent widthcentpercentminusx'); print $form->multiselectarray('categories', $cate_arbo, (GETPOSTISSET('categories') ? GETPOST('categories', 'array') : $arrayselected), null, null, 'minwidth200 widthcentpercentminusxx');
print "</td></tr>"; print "</td></tr>";
} }
if (!empty($conf->global->WEBSITE_PAGE_SHOW_INTERNAL_LINKS_TO_OBJECT)) { if (!empty($conf->global->WEBSITE_PAGE_SHOW_INTERNAL_LINKS_TO_OBJECT)) { // TODO Replace this with link into element_element ?
print '<tr><td class="titlefieldcreate">'; print '<tr><td class="titlefieldcreate">';
print 'ObjectClass'; print 'ObjectClass';
print '</td><td>'; print '</td><td>';