@@ -70,9 +70,9 @@ class Product extends CommonObject
* @var string
*/
var $label;
- /**
+ /**
* Product descripion
- * @var string
+ * @var string
*/
var $description;
@@ -3691,7 +3691,7 @@ class Product extends CommonObject
$filename = preg_replace('/'.preg_quote($dir,'/').'/i','',$file); // Nom du fichier
// On efface l'image d'origine
- dol_delete_file($file);
+ dol_delete_file($file, 0, 0, 0, $this); // For triggers
// Si elle existe, on efface la vignette
if (preg_match('/('.$this->regeximgext.')$/i',$filename,$regs))
diff --git a/htdocs/public/test/test_arrays.php b/htdocs/public/test/test_arrays.php
index e08eb5715c4..c2be96b4468 100644
--- a/htdocs/public/test/test_arrays.php
+++ b/htdocs/public/test/test_arrays.php
@@ -61,8 +61,9 @@ else
This page is a sample of page using tables. It is designed to make test with
-- css (add parameter &theme=newthem to test another theme or edit css of current theme)
+- css (add parameter &theme=newtheme to test another theme or edit css of current theme)
- jmobile (add parameter dol_use_jmobile=1&dol_optimize_smallscreen=1 to enable view with jmobile)
+- no javascript / usage for bind people (add parameter nojs=1 to force disable javascript)
- dataTables
- tablednd
diff --git a/htdocs/public/test/test_forms.php b/htdocs/public/test/test_forms.php
index 86db08fe148..c0c81882fe2 100644
--- a/htdocs/public/test/test_forms.php
+++ b/htdocs/public/test/test_forms.php
@@ -16,8 +16,9 @@ llxHeader();
This page is a sample of page using Dolibarr HTML widget methods. It is designed to make test with
-- css (edit page to change to test another css)
-- jmobile (add parameter dol_use_jmobile=1 to enable view with jmobile)
+- css (add parameter &theme=newtheme to test another theme or edit css of current theme)
+- jmobile (add parameter dol_use_jmobile=1&dol_optimize_smallscreen=1 to enable view with jmobile)
+- no javascript / usage for bind people (add parameter nojs=1 to force disable javascript)
@@ -44,41 +45,52 @@ print '
'."\n";
print "Test 3: We must have here 1970-01-01 00:00:00 selected (fields are mandatory)
\n";
$form->select_date(dol_get_first_day(1970,1,false), 'test3', 1, 1, 0);
-print '
'."\n";
+/*print '
'."\n";
-// Test4a: form->select_product
-print "Test 4: Select product - ";
-$form->select_produits(0,'producttest');
+print "Test 4c: a select with ajax refresh
\n";
+//$array=array(0=>'',1=>'Search into xxx',2=>'Search into yyy',3=>'Search into zzz');
+$array=array();
+$selected=-1;
+print $form->selectArrayAjax(DOL_URL_ROOT.'/core/ajax/selecsearchbox.php', 'testselectc', $array, $selected, 1, 0, 0, 'style="min-width: 250px;"', 0, 0, 0, '', '', 1);
+*/
print '
'."\n";
-// Test4b: form->selectarray
-print "Test 4: Select array - ";
+// Test4: a select
+print "Test 4a: a select
\n";
+$array=array(1=>'Value 1',2=>'Value 2',3=>'Value 3 ith a very long text. aze eazeae e ae aeae a e a ea ea ea e a e aea e ae aeaeaeaze.');
+$selected=3;
+print $form->selectarray('testselecta', $array, $selected, 1, 0, 0, 'style="min-width: 250px;"', 0, 0, 0, '', '', 1);
+print '
';
+print "Test 4b: a select
\n";
+$array=array(1=>'Value 1',2=>'Value 2',3=>'Value 3');
+$selected=3;
+print $form->selectarray('testselectb', $array, $selected, 1, 0, 0, 'style="min-width: 250px;"', 0, 0, 0, '', '', 1);
+print '
'."\n";
+print "Test 4c: Select array with no js forced
\n";
$array=array(1=>'Value 1',2=>'Value 2',3=>'Value 3');
-$arrayselected=array(1,3);
print $form->selectarray('selectarray',$array);
print '
'."\n";
+// Test4d: form->select_thirdparty
+print "Test 4d: Select thirdparty
\n";
+print $form->select_thirdparty(0,'thirdpartytest');
+
+print '
'."\n";
+
+// Test4e: form->select_product
+print "Test 4e: Select product (using ajax)
\n";
+$form->select_produits(0,'producttest');
+
+print '
'."\n";
+
// Test5: a multiselect
print "Test 5: a multiselect
\n";
$array=array(1=>'Value 1',2=>'Value 2',3=>'Value 3');
$arrayselected=array(1,3);
print $form->multiselectarray('testmulti', $array, $arrayselected, '', 0, '', 0, 250);
-print '
'."\n";
-
-// Test6: a select
-print "Test 6a: a select
\n";
-$array=array(1=>'Value 1',2=>'Value 2',3=>'Value 3 ith a very long text. aze eazeae e ae aeae a e a ea ea ea e a e aea e ae aeaeaeaze.');
-$selected=3;
-print $form->selectarray('testselecta', $array, $selected, 1, 0, 0, 'style="min-width: 250px;"', 0, 0, 0, '', '', 1);
-print '
';
-print "Test 6b: a select
\n";
-$array=array(1=>'Value 1',2=>'Value 2',3=>'Value 3');
-$selected=3;
-print $form->selectarray('testselectb', $array, $selected, 1, 0, 0, 'style="min-width: 250px;"', 0, 0, 0, '', '', 1);
-
llxFooter();
$db->close();
diff --git a/htdocs/societe/soc.php b/htdocs/societe/soc.php
index 82e259dbd63..2fb1d764637 100644
--- a/htdocs/societe/soc.php
+++ b/htdocs/societe/soc.php
@@ -1787,6 +1787,20 @@ else
print $form->formconfirm($_SERVER["PHP_SELF"]."?socid=".$object->id,$langs->trans("DeleteACompany"),$langs->trans("ConfirmDeleteCompany"),"confirm_delete",'',0,"action-delete");
}
+ if ($action == 'merge') {
+ $form = new Form($db);
+
+ $options = array(
+ array(
+ 'label' => $langs->trans('MergeOriginThirdparty'),
+ 'type' => 'other',
+ 'value' => $form->select_company('', 'soc_origin', 's.rowid != '.$object->id, 1)
+ )
+ );
+
+ print $form->formconfirm($_SERVER["PHP_SELF"]."?socid=".$object->id,$langs->trans("MergeThirdparties"),$langs->trans("ConfirmMergeThirdparties"),"confirm_merge",$options,'',1);
+ }
+
dol_htmloutput_errors($error,$errors);
$showlogo=$object->logo;
@@ -2233,6 +2247,8 @@ else
$reshook=$hookmanager->executeHooks('addMoreActionsButtons',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
if (empty($reshook))
{
+ print '';
+
if (! empty($object->email))
{
$langs->load("mails");
diff --git a/htdocs/theme/md_exp/style.css.php b/htdocs/theme/md_exp/style.css.php
index 739f26ce1de..ee46a7f1aaa 100644
--- a/htdocs/theme/md_exp/style.css.php
+++ b/htdocs/theme/md_exp/style.css.php
@@ -64,7 +64,7 @@ $theme='eldy'; // Value of theme
if (! empty($conf->global->MAIN_OVERWRITE_THEME_RES)) { $path='/'.$conf->global->MAIN_OVERWRITE_THEME_RES; $theme=$conf->global->MAIN_OVERWRITE_THEME_RES; }
// Define image path files and other constants
-$fontlist='arial,tahoma,verdana,helvetica'; //$fontlist='Verdana,Helvetica,Arial,sans-serif';
+$fontlist='Open Sans,sans-serif'; //$fontlist='Verdana,Helvetica,Arial,sans-serif';
$img_head='';
$img_button=dol_buildpath($path.'/theme/'.$theme.'/img/button_bg.png',1);
$dol_hide_topmenu=$conf->dol_hide_topmenu;
@@ -108,7 +108,7 @@ $colorbacklinepair2=(250+round($isred/3)).','.(250+round($isgreen/3)).','.(250+r
$colorbacklinepairhover=(230+round(($isred+$isgreen+$isblue)/9)).','.(230+round(($isred+$isgreen+$isblue)/9)).','.(230+round(($isred+$isgreen+$isblue)/9)); // line pair
$colorbackbody='#f0f0f0';
$colortext='40,40,40';
-$fontsize='12';
+$fontsize='13';
$fontsizesmaller='11';
// Eldy colors
@@ -256,7 +256,7 @@ input, input.flat, textarea, textarea.flat, form.flat select select, select.flat
}
input, textarea, select {
- border-radius:4px;
+ border-radius:2px;
border:solid 1px rgba(0,0,0,.3);
border-top:solid 1px rgba(0,0,0,.3);
border-bottom:solid 1px rgba(0,0,0,.2);
@@ -330,9 +330,9 @@ fieldset { border: 1px solid #AAAAAA !important; box-shadow: 2px 2px 3px #DDD; }
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
border: 1px solid #bbbbbb;
border-bottom-color: #a2a2a2;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -webkit-border-radius: 2px;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
@@ -922,7 +922,7 @@ form#login {
-webkit-box-shadow: 3px 2px 20px #CCC;
box-shadow: 3px 2px 20px #CCC;*/
- border-radius: 8px;
+ border-radius: 4px;
border:solid 1px rgba(80,80,80,.4);
border-top:solid 1px f8f8f8;
@@ -1177,9 +1177,9 @@ td.photo {
background-repeat: repeat-x !important;
border: 1px solid #CCC !important;
- -moz-border-radius: 5px 5px 5px 5px !important;
- -webkit-border-radius: 5px 5px 5px 5px !important;
- border-radius: 5px 5px 5px 5px !important;
+ -moz-border-radius: 2px 2px 2px 2px !important;
+ -webkit-border-radius: 2px 2px 2px 2px !important;
+ border-radius: 2px 2px 2px 2px !important;
-moz-box-shadow: 2px 2px 4px #DDD;
-webkit-box-shadow: 2px 2px 4px #DDD;
box-shadow: 2px 2px 4px #DDD;
@@ -1414,9 +1414,9 @@ div.tabBar {
padding-right: px;
padding-bottom: 8px;
margin: 0px 0px 14px 0px;
- -moz-border-radius:6px;
- -webkit-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius:3px;
+ -webkit-border-radius: 3px;
+ border-radius: 3px;
border-right: 1px solid #BBB;
border-bottom: 1px solid #BBB;
border-left: 1px solid #BBB;
@@ -1461,9 +1461,9 @@ a.tab:link, a.tab:visited, a.tab:hover, a.tab#active {
text-decoration: none;
white-space: nowrap;
- /*-moz-border-radius:6px 6px 0px 0px;
- -webkit-border-radius:6px 6px 0px 0px;
- border-radius:6px 6px 0px 0px;
+ /*-moz-border-radius:3px 3px 0px 0px;
+ -webkit-border-radius:3px 3px 0px 0px;
+ border-radius:3px 3px 0px 0px;
-moz-box-shadow: 0 -1px 4px rgba(0,0,0,.1);
-webkit-box-shadow: 0 -1px 4px rgba(0,0,0,.1);
@@ -1483,9 +1483,9 @@ a.tab:link, a.tab:visited, a.tab:hover, a.tab#active {
border-left: 1px solid #D0D0D0;
border-top: 1px solid #D8D8D8;
- -moz-border-radius:6px 6px 0px 0px;
- -webkit-border-radius:6px 6px 0px 0px;
- border-radius:6px 6px 0px 0px;
+ -moz-border-radius:3px 3px 0px 0px;
+ -webkit-border-radius:3px 3px 0px 0px;
+ border-radius:3px 3px 0px 0px;
-moz-box-shadow: 0 -1px 4px rgba(0,0,0,.1);
-webkit-box-shadow: 0 -1px 4px rgba(0,0,0,.1);
@@ -1526,9 +1526,9 @@ span.tabspan {
margin: 0em 0.2em;
text-decoration: none;
white-space: nowrap;
- -moz-border-radius:6px 6px 0px 0px;
- -webkit-border-radius:6px 6px 0px 0px;
- border-radius:6px 6px 0px 0px;
+ -moz-border-radius:3px 3px 0px 0px;
+ -webkit-border-radius:3px 3px 0px 0px;
+ border-radius:3px 3px 0px 0px;
border-: 1px solid #555555;
border-: 1px solid #D8D8D8;
@@ -1552,9 +1552,9 @@ div.divButAction { margin-bottom: 1.4em; }
background: white;
border: 1px solid #8CACBB;
color: #434956;
- -moz-border-radius:0px 5px 0px 5px;
- -webkit-border-radius:0px 5px 0px 5px;
- border-radius:0px 5px 0px 5px;
+ -moz-border-radius:0px 2px 0px 2px;
+ -webkit-border-radius:0px 2px 0px 2px;
+ border-radius:0px 2px 0px 2px;
-moz-box-shadow: 2px 2px 3px #DDD;
-webkit-box-shadow: 2px 2px 3px #DDD;
box-shadow: 2px 2px 3px #DDD;
@@ -1584,9 +1584,9 @@ div.divButAction { margin-bottom: 1.4em; }
background: white !important;
border: 1px solid #AAAAAA !important;
color: #AAAAAA !important;
- -moz-border-radius:0px 5px 0px 5px;
- -webkit-border-radius:0px 5px 0px 5px;
- border-radius:0px 5px 0px 5px;
+ -moz-border-radius:0px 2px 0px 2px;
+ -webkit-border-radius:0px 2px 0px 2px;
+ border-radius:0px 2px 0px 2px;
-moz-box-shadow: 3px 3px 4px #DDD;
-webkit-box-shadow: 3px 3px 4px #DDD;
box-shadow: 3px 3px 4px #DDD;
@@ -1628,9 +1628,9 @@ span.butAction, span.butActionDelete {
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
border: 1px solid #bbbbbb;
border-bottom-color: #a2a2a2;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ -webkit-border-radius: 2px;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
@@ -1781,9 +1781,9 @@ table.noborder, table.formdoc, div.noborder {
-webkit-box-shadow: 2px 2px 4px #CCC;
box-shadow: 2px 2px 4px #CCC;
- -moz-border-radius: 0.2em;
- -webkit-border-radius: 0.2em;
- border-radius: 0.2em;
+ -moz-border-radius: 0.1em;
+ -webkit-border-radius: 0.1em;
+ border-radius: 0.1em;
}
table.noborder tr, div.noborder form {
@@ -2044,7 +2044,7 @@ div.tabBar .noborder {
margin-bottom: 8px !important;*/
border: 1px solid #AAA;
text-align: center;
- border-radius: 5px;
+ border-radius: 2px;
}
.boxtable {
@@ -2134,9 +2134,9 @@ div.warning {
padding: 0.3em 0.3em 0.3em 0.3em;
margin: 0.5em 0em 0.5em 0em;
border: 1px solid #e0d0b0;
- -moz-border-radius:6px;
- -webkit-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius:3px;
+ -webkit-border-radius: 3px;
+ border-radius: 3px;
background: #EFDF9A;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}
@@ -2146,9 +2146,9 @@ div.error {
padding: 0.3em 0.3em 0.3em 0.3em;
margin: 0.5em 0em 0.5em 0em;
border: 1px solid #DC9CAB;
- -moz-border-radius:6px;
- -webkit-border-radius: 6px;
- border-radius: 6px;
+ -moz-border-radius:3px;
+ -webkit-border-radius: 3px;
+ border-radius: 3px;
background: #EFCFCF;
}
@@ -2158,9 +2158,9 @@ div.info {
padding: 0.4em 0.4em 0.4em 0.4em;
margin: 0.5em 0em 0.5em 0em;
border: 1px solid #DFBF9A;
- -moz-border-radius:6px;
- -webkit-border-radius: 6px;
- border-radius:6px;
+ -moz-border-radius:3px;
+ -webkit-border-radius: 3px;
+ border-radius:3px;
background: #EFCFAA;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}
@@ -2324,9 +2324,9 @@ padding: 2px;
z-index: 3000;
background-color: #EFCFAA;
opacity: 1;
--moz-border-radius:6px;
--webkit-border-radius: 6px;
-border-radius: 6px;
+-moz-border-radius:3px;
+-webkit-border-radius: 3px;
+border-radius: 3px;
}
#tiptip_content {
background-color: rgb(252,248,246);
@@ -2346,9 +2346,9 @@ img.datecallink { padding-left: 2px !important; padding-right: 2px !important; }
}
.bodyline {
- -moz-border-radius: 8px;
- -webkit-border-radius: 8px;
- border-radius: 8px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
border: 1px #E4ECEC outset;
padding: 0px;
margin-bottom: 5px;
@@ -2461,7 +2461,7 @@ table.cal_month { border-spacing: 0px; }
.cal_peruser { padding: 0px; }
.peruser_busy { background: #CC8888; }
.peruser_notbusy { background: #EEDDDD; opacity: 0.5; }
-table.cal_event { border: none; border-collapse: collapse; margin-bottom: 1px; -webkit-border-radius: 6px; border-radius: 6px;
+table.cal_event { border: none; border-collapse: collapse; margin-bottom: 1px; -webkit-border-radius: 3px; border-radius: 3px;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.25);
moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.25);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.25);
@@ -2726,9 +2726,9 @@ a.cke_dialog_ui_button
background-image: url() !important;
background-position: bottom !important;
border: 1px solid #C0C0C0 !important;
- -moz-border-radius:0px 5px 0px 5px !important;
- -webkit-border-radius:0px 5px 0px 5px !important;
- border-radius:0px 5px 0px 5px !important;
+ -moz-border-radius:0px 2px 0px 2px !important;
+ -webkit-border-radius:0px 2px 0px 2px !important;
+ border-radius:0px 2px 0px 2px !important;
-moz-box-shadow: 3px 3px 4px #DDD !important;
-webkit-box-shadow: 3px 3px 4px #DDD !important;
box-shadow: 3px 3px 4px #DDD !important;
diff --git a/htdocs/user/clicktodial.php b/htdocs/user/clicktodial.php
index f72a8eb0f15..93d6587ef1e 100644
--- a/htdocs/user/clicktodial.php
+++ b/htdocs/user/clicktodial.php
@@ -46,7 +46,7 @@ $result = restrictedArea($user, 'user', $id, '&user', $feature2);
* Actions
*/
-if ($action == 'update' && ! $_POST['cancel'])
+if ($action == 'update' && ! GETPOST('cancel'))
{
$edituser = new User($db);
$edituser->fetch($id);
@@ -138,6 +138,11 @@ if ($id > 0)
print '';
}
+ print '| ClickToDial '.$langs->trans("IdPhoneCaller").' | ';
+ print '';
+ print ' | ';
+ print "
\n";
+
print '| ClickToDial '.$langs->trans("Login").' | ';
print '';
print ' | ';
@@ -148,11 +153,6 @@ if ($id > 0)
print '';
print "
\n";
- print '| ClickToDial '.$langs->trans("IdPhoneCaller").' | ';
- print '';
- print ' | ';
- print "
\n";
-
print '';
print '
';
@@ -185,15 +185,20 @@ if ($id > 0)
print '';
print '';
}
+
+ print '
| ClickToDial '.$langs->trans("IdPhoneCaller").' | ';
+ print ''.(! empty($fuser->clicktodial_poste)?$fuser->clicktodial_poste:'').' | ';
+ print "
";
+
print '| ClickToDial '.$langs->trans("Login").' | ';
print ''.(! empty($fuser->clicktodial_login)?$fuser->clicktodial_login:'').' | ';
print '
';
+
print '| ClickToDial '.$langs->trans("Password").' | ';
print ''.preg_replace('/./','*',(! empty($fuser->clicktodial_password)?$fuser->clicktodial_password:'')).' | ';
print "
\n";
- print '| ClickToDial '.$langs->trans("IdPhoneCaller").' | ';
- print ''.(! empty($fuser->clicktodial_poste)?$fuser->clicktodial_poste:'').' | ';
- print "
\n";
+
+ print "\n";
}
print "\n";