diff --git a/htdocs/adherents/list.php b/htdocs/adherents/list.php index ff6c1eb7963..ec8ff84b763 100644 --- a/htdocs/adherents/list.php +++ b/htdocs/adherents/list.php @@ -199,7 +199,8 @@ if ($resql) if ($sall) { - print $langs->trans("Filter")." (".$langs->trans("Ref").", ".$langs->trans("Lastname").", ".$langs->trans("Firstname").", ".$langs->trans("EMail").", ".$langs->trans("Address")." ".$langs->trans("or")." ".$langs->trans("Town")."): ".$sall; + print $langs->trans("Filter")." (".$langs->trans("Ref").", ".$langs->trans("Lastname").", ".$langs->trans("Firstname").", ".$langs->trans("EMail").", ".$langs->trans("Address")." ".$langs->trans("or")." ".$langs->trans("Town")."): "; + print ''.$sall.''; } print '
'; diff --git a/htdocs/admin/ihm.php b/htdocs/admin/ihm.php index 398999d6dd9..28f221131e1 100644 --- a/htdocs/admin/ihm.php +++ b/htdocs/admin/ihm.php @@ -45,10 +45,10 @@ $action = GETPOST('action'); if (! defined("MAIN_MOTD")) define("MAIN_MOTD",""); // List of supported permanent search area -$searchform=array("MAIN_SEARCHFORM_SOCIETE", "MAIN_SEARCHFORM_CONTACT", "MAIN_SEARCHFORM_PRODUITSERVICE", "MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER", "MAIN_SEARCHFORM_ADHERENT"); -$searchformconst=array($conf->global->MAIN_SEARCHFORM_SOCIETE,$conf->global->MAIN_SEARCHFORM_CONTACT,$conf->global->MAIN_SEARCHFORM_PRODUITSERVICE,$conf->global->MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER,$conf->global->MAIN_SEARCHFORM_ADHERENT); -$searchformtitle=array($langs->trans("Companies"),$langs->trans("Contacts"),$langs->trans("ProductsAndServices"),$langs->trans("ProductsAndServices").' ('.$langs->trans("SupplierRef").')',$langs->trans("Members")); -$searchformmodule=array('Module1Name','Module1Name','Module50Name','Module50Name','Module310Name'); +$searchform=array("MAIN_SEARCHFORM_SOCIETE", "MAIN_SEARCHFORM_CONTACT", "MAIN_SEARCHFORM_PRODUITSERVICE", "MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER", "MAIN_SEARCHFORM_ADHERENT", "MAIN_SEARCHFORM_PROJECT"); +$searchformconst=array($conf->global->MAIN_SEARCHFORM_SOCIETE,$conf->global->MAIN_SEARCHFORM_CONTACT,$conf->global->MAIN_SEARCHFORM_PRODUITSERVICE,$conf->global->MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER,$conf->global->MAIN_SEARCHFORM_ADHERENT,$conf->global->MAIN_SEARCHFORM_PROJECT); +$searchformtitle=array($langs->trans("Companies"), $langs->trans("Contacts"), $langs->trans("ProductsAndServices"), $langs->trans("ProductsAndServices").' ('.$langs->trans("SupplierRef").')', $langs->trans("Members"), $langs->trans("Projects")); +$searchformmodule=array('Module1Name','Module1Name','Module50Name','Module50Name','Module310Name','Module400Name'); if ($action == 'update') @@ -73,6 +73,7 @@ if ($action == 'update') dolibarr_set_const($db, "MAIN_SEARCHFORM_PRODUITSERVICE", $_POST["MAIN_SEARCHFORM_PRODUITSERVICE"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER",$_POST["MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_SEARCHFORM_ADHERENT", $_POST["MAIN_SEARCHFORM_ADHERENT"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_SEARCHFORM_PROJECT", $_POST["MAIN_SEARCHFORM_PROJECT"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_HELPCENTER_DISABLELINK", $_POST["MAIN_HELPCENTER_DISABLELINK"],'chaine',0,'',0); // Param for all entities dolibarr_set_const($db, "MAIN_MOTD", dol_htmlcleanlastbr($_POST["main_motd"]),'chaine',0,'',$conf->entity); diff --git a/htdocs/barcode/codeinit.php b/htdocs/barcode/codeinit.php index 12b61d80419..bd8f2194fe4 100644 --- a/htdocs/barcode/codeinit.php +++ b/htdocs/barcode/codeinit.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2014-2015 Laurent Destailleur * * 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 @@ -211,7 +211,7 @@ if ($conf->societe->enabled) { $nbno=$nbtotal=0; - print_fiche_titre($langs->trans("BarcodeInitForThirdparties"),'',''); + print_fiche_titre($langs->trans("BarcodeInitForThirdparties"),'','object_company'); print '
'."\n"; $sql="SELECT count(rowid) as nb FROM ".MAIN_DB_PREFIX."societe where barcode IS NULL or barcode = ''"; $resql=$db->query($sql); @@ -236,7 +236,7 @@ if ($conf->societe->enabled) print '
'; - print '


'; + print '



'; } @@ -252,7 +252,7 @@ if ($conf->product->enabled || $conf->product->service) $nbno=$nbtotal=0; - print_fiche_titre($langs->trans("BarcodeInitForProductsOrServices"),'',''); + print_fiche_titre($langs->trans("BarcodeInitForProductsOrServices"),'','object_product'); print '
'."\n"; $sql ="SELECT count(rowid) as nb, fk_product_type, datec"; @@ -312,7 +312,7 @@ if ($conf->product->enabled || $conf->product->service) $moretags2=(($nbno == $nbtotal)?' disabled':''); print '   '; print ''; - print '


'; + print '



'; } diff --git a/htdocs/core/lib/project.lib.php b/htdocs/core/lib/project.lib.php index 556dbc0a1c6..80c16c8aeb1 100644 --- a/htdocs/core/lib/project.lib.php +++ b/htdocs/core/lib/project.lib.php @@ -53,7 +53,7 @@ function project_prepare_head($object) || ! empty($conf->ficheinter->enabled) || ! empty($conf->agenda->enabled) || ! empty($conf->deplacement->enabled)) { $head[$h][0] = DOL_URL_ROOT.'/projet/element.php?id='.$object->id; - $head[$h][1] = $langs->trans("ProjectReferers"); + $head[$h][1] = $langs->trans("Overview"); $head[$h][2] = 'element'; $h++; } diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php index 500506b532e..f2c4a93e030 100644 --- a/htdocs/cron/card.php +++ b/htdocs/cron/card.php @@ -594,7 +594,9 @@ else print ""; print ''; - print $langs->trans('CronDtNextLaunch').""; + print $langs->trans('CronDtNextLaunch'); + print ' ('.$langs->trans('CronFrom').')'; + print ""; if(!empty($object->datenextrun)) {print dol_print_date($object->datenextrun,'dayhourtext');} else {print $langs->trans('CronNone');} print ""; diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index 5f2ef68b194..26ae969e493 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -842,8 +842,8 @@ class Cronjob extends CommonObject /** * Run a job * - * @param string $userlogin User login - * @return int <0 if KO, >0 if OK + * @param string $userlogin User login + * @return int <0 if KO, >0 if OK */ function run_jobs($userlogin) { diff --git a/htdocs/langs/en_US/cron.lang b/htdocs/langs/en_US/cron.lang index ff511f00d27..5369859bb8b 100644 --- a/htdocs/langs/en_US/cron.lang +++ b/htdocs/langs/en_US/cron.lang @@ -76,6 +76,7 @@ CronMethodHelp=The object method to launch.
For exemple to fetch method of CronArgsHelp=The method arguments.
For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of paramters can be 0, ProductRef CronCommandHelp=The system command line to execute. CronCreateJob=Create new Scheduled Job +CronFrom=From # Info CronInfoPage=Information # Common diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang index 25db18df474..52e1b942a6c 100644 --- a/htdocs/langs/en_US/projects.lang +++ b/htdocs/langs/en_US/projects.lang @@ -151,4 +151,5 @@ TasksWithThisUserAsContact=Tasks assigned to this user ResourceNotAssignedToProject=Not assigned to project ResourceNotAssignedToTask=Not assigned to task AssignTaskToMe=Assign task to me -AssignTask=Assign \ No newline at end of file +AssignTask=Assign +ProjectOverview=Overview \ No newline at end of file diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 234949272f0..3d7da011d4a 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -1555,6 +1555,12 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me $searchform.=printSearchForm(DOL_URL_ROOT.'/adherents/list.php', DOL_URL_ROOT.'/adherents/list.php', $langs->trans("Members"), 'member', 'sall', 'M', 'searchleftm', img_object('','user')); } + if (! empty($conf->projet->enabled) && ! empty($conf->global->MAIN_SEARCHFORM_PROJECT) && $user->rights->projet->lire) + { + $langs->load("members"); + $searchform.=printSearchForm(DOL_URL_ROOT.'/projet/list.php', DOL_URL_ROOT.'/projet/list.php', $langs->trans("Projects"), 'project', 'search_all', 'M', 'searchleftproj', img_object('','projectpub')); + } + // Execute hook printSearchForm $parameters=array(); $reshook=$hookmanager->executeHooks('printSearchForm',$parameters); // Note that $action and $object may have been modified by some hooks diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index a9089673ae6..8bb7c9f75ce 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -293,7 +293,188 @@ if ($action=="addelement") $elementuser = new User($db); + + $showdatefilter=0; +// Show the filter on date on top of element list +if (! $showdatefilter) +{ + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print '
'.$langs->trans("From").' '; + print $form->select_date($dates,'dates',0,0,1); + print ''.$langs->trans("to").' '; + print $form->select_date($datee,'datee',0,0,1); + print ''; + print ''; + print '
'; + print ''; + + $showdatefilter++; +} + + + +// Show balance for whole project + +$langs->load("suppliers"); +$langs->load("bills"); +$langs->load("orders"); +$langs->load("proposals"); +$langs->load("margins"); + +//print load_fiche_titre($langs->trans("Profit"),'','title_accountancy'); +print '
'.img_picto("", "title_accountancy").' '.$langs->trans("Profit").'

'; + +print ''; +print ''; +print ''; +print ''; +print ''; +print ''; +print ''; + +$var = false; + +foreach ($listofreferent as $key => $value) +{ + $name=$langs->trans($value['name']); + $title=$value['title']; + $classname=$value['class']; + $tablename=$value['table']; + $datefieldname=$value['datefieldname']; + $qualified=$value['test']; + $margin = $value['margin']; + if ($qualified && isset($margin)) // If this element must be included into profit calculation ($margin is 'minus' or 'plus') + { + $element = new $classname($db); + + $elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee); + if (count($elementarray)>0 && is_array($elementarray)) + { + $var=true; + $total_ht = 0; + $total_ttc = 0; + + $num=count($elementarray); + for ($i = 0; $i < $num; $i++) + { + $tmp=explode('_',$elementarray[$i]); + $idofelement=$tmp[0]; + $idofelementuser=$tmp[1]; + + $element->fetch($idofelement); + if ($idofelementuser) $elementuser->fetch($idofelementuser); + + if ($tablename != 'expensereport_det') $element->fetch_thirdparty(); + + if ($tablename == 'don') $total_ht_by_line=$element->amount; + elseif ($tablename == 'projet_task') + { + if ($idofelementuser) + { + $tmp = $element->getSumOfAmount($elementuser, $dates, $datee); + $total_ht_by_line = price2num($tmp['amount'],'MT'); + } + else + { + $tmp = $element->getSumOfAmount('', $dates, $datee); + $total_ht_by_line = price2num($tmp['amount'],'MT'); + } + } + else $total_ht_by_line=$element->total_ht; + + $total_ht = $total_ht + $total_ht_by_line; + + if ($tablename == 'don') $total_ttc_by_line=$element->amount; + elseif ($tablename == 'projet_task') + { + $defaultvat = get_default_tva($mysoc, $mysoc); + $total_ttc_by_line = price2num($total_ht_by_line * (1 + ($defaultvat / 100)),'MT'); + } + else $total_ttc_by_line=$element->total_ttc; + + $total_ttc = $total_ttc + $total_ttc_by_line; + } + + // Calculate margin + if ($margin=="add") + { + $balance_ht+= $total_ht; + $balance_ttc+= $total_ttc; + } + else + { + $balance_ht-= $total_ht; + $balance_ttc-= $total_ttc; + } + + // Show $total_ht & $total_ttc -- add a minus when necessary + if ($margin!="add") + { + $total_ht = -$total_ht; + $total_ttc = -$total_ttc; + } + + switch ($classname) { + case 'FactureFournisseur': + $newclassname = 'SupplierInvoice'; + break; + case 'Facture': + $newclassname = 'Bill'; + break; + case 'Propal': + $newclassname = 'CommercialProposal'; + break; + case 'Commande': + $newclassname = 'Order'; + break; + case 'Expedition': + $newclassname = 'Sending'; + break; + case 'Contrat': + $newclassname = 'Contract'; + break; + default: + $newclassname = $classname; + } + + $var = ! $var; + print ''; + // Module + print ''; + // Nb + print ''; + // Amount HT + print ''; + // Amount TTC + print ''; + print ''; + } + } +} +// and the final balance +print ''; +print ''; +print ''; +print ''; +print ''; + +print "
'.$langs->trans("Element").''.$langs->trans("Number").''.$langs->trans("AmountHT").''.$langs->trans("AmountTTC").'
'.$langs->trans($newclassname).''.$i.''.price($total_ht).''.price($total_ttc).'
'.$langs->trans("Total").''.price($balance_ht).''.price($balance_ttc).'
"; + + + +print '

'; +print '
'; + + + +// Detail foreach ($listofreferent as $key => $value) { $title=$value['title']; @@ -310,32 +491,7 @@ foreach ($listofreferent as $key => $value) $element = new $classname($db); - // Show the filter on date on top of element list - if (! $showdatefilter) - { - print '
'; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print '
'.$langs->trans("From").' '; - print $form->select_date($dates,'dates',0,0,1); - print ''.$langs->trans("to").' '; - print $form->select_date($datee,'datee',0,0,1); - print ''; - print ''; - print '
'; - print '

'; - - $showdatefilter++; - } - - print '
'; - - print_titre($langs->trans($title)); - + $addform=''; $selectList=$formproject->select_element($tablename,$object->thirdparty->id); if (! $selectList || ($selectList<0)) { @@ -343,17 +499,20 @@ foreach ($listofreferent as $key => $value) } elseif($selectList) { - print '
'; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print '
'.$langs->trans("SelectElement").''.$selectList.'
'; - print '
'; + $addform.='
'; + $addform.=''; + $addform.=''; + $addform.=''; + $addform.=''; + $addform.=''; + $addform.=''; + $addform.=''; + $addform.='
'.$langs->trans("SelectElement").''.$selectList.'
'; + $addform.='
'; } + + print_fiche_titre($langs->trans($title), $addform, ''); + print ''; print ''; @@ -675,151 +834,6 @@ foreach ($listofreferent as $key => $value) } -// Show profit summary for whole project - -$langs->load("suppliers"); -$langs->load("bills"); -$langs->load("orders"); -$langs->load("proposals"); -$langs->load("margins"); - -//print load_fiche_titre($langs->trans("Profit"),'','title_accountancy'); -print '
'.img_picto("", "title_accountancy").' '.$langs->trans("Profit").'

'; - -print '
'; -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; - -foreach ($listofreferent as $key => $value) -{ - $name=$langs->trans($value['name']); - $title=$value['title']; - $classname=$value['class']; - $tablename=$value['table']; - $datefieldname=$value['datefieldname']; - $qualified=$value['test']; - $margin = $value['margin']; - if ($qualified && isset($margin)) // If this element must be included into profit calculation ($margin is 'minus' or 'plus') - { - $element = new $classname($db); - - $elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee); - if (count($elementarray)>0 && is_array($elementarray)) - { - $var=true; - $total_ht = 0; - $total_ttc = 0; - - $num=count($elementarray); - for ($i = 0; $i < $num; $i++) - { - $tmp=explode('_',$elementarray[$i]); - $idofelement=$tmp[0]; - $idofelementuser=$tmp[1]; - - $element->fetch($idofelement); - if ($idofelementuser) $elementuser->fetch($idofelementuser); - - if ($tablename != 'expensereport_det') $element->fetch_thirdparty(); - - if ($tablename == 'don') $total_ht_by_line=$element->amount; - elseif ($tablename == 'projet_task') - { - if ($idofelementuser) - { - $tmp = $element->getSumOfAmount($elementuser, $dates, $datee); - $total_ht_by_line = price2num($tmp['amount'],'MT'); - } - else - { - $tmp = $element->getSumOfAmount('', $dates, $datee); - $total_ht_by_line = price2num($tmp['amount'],'MT'); - } - } - else $total_ht_by_line=$element->total_ht; - - $total_ht = $total_ht + $total_ht_by_line; - - if ($tablename == 'don') $total_ttc_by_line=$element->amount; - elseif ($tablename == 'projet_task') - { - $defaultvat = get_default_tva($mysoc, $mysoc); - $total_ttc_by_line = price2num($total_ht_by_line * (1 + ($defaultvat / 100)),'MT'); - } - else $total_ttc_by_line=$element->total_ttc; - - $total_ttc = $total_ttc + $total_ttc_by_line; - } - - // Calculate margin - if ($margin=="add") - { - $margin_ht+= $total_ht; - $margin_ttc+= $total_ttc; - } - else - { - $margin_ht-= $total_ht; - $margin_ttc-= $total_ttc; - } - - // Show $total_ht & $total_ttc -- add a minus when necessary - if ($margin!="add") - { - $total_ht = -$total_ht; - $total_ttc = -$total_ttc; - } - - switch ($classname) { - case 'FactureFournisseur': - $newclassname = 'SupplierInvoice'; - break; - case 'Facture': - $newclassname = 'Bill'; - break; - case 'Propal': - $newclassname = 'CommercialProposal'; - break; - case 'Commande': - $newclassname = 'Order'; - break; - case 'Expedition': - $newclassname = 'Sending'; - break; - case 'Contrat': - $newclassname = 'Contract'; - break; - default: - $newclassname = $classname; - } - - print ''; - // Module - print ''; - // Nb - print ''; - // Amount HT - print ''; - // Amount TTC - print ''; - print ''; - } - } -} -// and the margin amount total -print ''; -print ''; -print ''; -print ''; -print ''; - -print "
'.$langs->trans("Element").''.$langs->trans("Number").''.$langs->trans("AmountHT").''.$langs->trans("AmountTTC").'
'.$langs->trans($newclassname).''.$i.''.price($total_ht).''.price($total_ttc).'
'.$langs->trans("Total").''.price($margin_ht).''.price($margin_ttc).'
"; - - llxFooter(); $db->close(); diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 704b5413b4f..3463f3d0a7a 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -61,6 +61,7 @@ $pagenext = $page + 1; $mine = $_REQUEST['mode']=='mine' ? 1 : 0; +$search_all=GETPOST("search_all"); $search_ref=GETPOST("search_ref"); $search_label=GETPOST("search_label"); $search_societe=GETPOST("search_societe"); @@ -83,11 +84,11 @@ if ($search_status == '') $search_status=-1; // -1 or 1 // Purge criteria if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers { + $search_all=''; $search_ref=""; $search_label=""; $search_societe=""; $search_year=""; - $search_all=0; $search_status=-1; $search_public=""; $search_sale=""; @@ -189,7 +190,6 @@ if ($search_user > 0) $sql.= " AND c.fk_c_type_contact = tc.rowid AND tc.element='project' AND tc.source='internal' AND c.element_id = p.rowid AND c.fk_socpeople = ".$search_user; } - $sql.= $db->order($sortfield,$sortorder); $sql.= $db->plimit($conf->liste_limit+1, $offset); //print $sql; @@ -205,6 +205,7 @@ if ($resql) $param=''; if ($month) $param.='&month='.$month; if ($year) $param.='&year=' .$year; + if ($search_all != '') $param.='&search_all='.$search_all; if ($search_ref != '') $param.='&search_ref='.$search_ref; if ($search_label != '') $param.='&search_label='.$search_label; if ($search_societe != '') $param.='&search_societe='.$search_societe; @@ -228,6 +229,12 @@ if ($resql) else print $langs->trans("ProjectsPublicDesc").'

'; } + if ($search_all) + { + print $langs->trans("Filter")." (".$langs->trans("Ref").", ".$langs->trans("Label")." ".$langs->trans("or")." ".$langs->trans("ThirdParty")."): "; + print ''.$search_all.''; + } + // If the user can view prospects other than his' if ($user->rights->societe->client->voir || $socid) { diff --git a/htdocs/public/cron/cron_run_jobs.php b/htdocs/public/cron/cron_run_jobs.php index e6333526c7f..022a7641cab 100644 --- a/htdocs/public/cron/cron_run_jobs.php +++ b/htdocs/public/cron/cron_run_jobs.php @@ -1,7 +1,7 @@ - * Copyright (C) 2013 Laurent Destailleur + * Copyright (C) 2013-2015 Laurent Destailleur * * 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 @@ -149,7 +149,7 @@ if (is_array($object->lines) && (count($object->lines)>0)) } // Execut job $result=$cronjob->run_jobs($userlogin); - if ($result<0) + if ($result < 0) { echo "Error:".$cronjob->error; dol_syslog("cron_run_jobs.php:: run_jobs Error".$cronjob->error, LOG_ERR); diff --git a/htdocs/support/default.css b/htdocs/support/default.css index ea62df52ef0..1505e59d998 100644 --- a/htdocs/support/default.css +++ b/htdocs/support/default.css @@ -147,7 +147,7 @@ background: #DDDFDD; } table { font-size: 12px; } -table.login { border: 1px solid #C0C0C0; background: #F0F0F0; font-size: 12px; } +table.login { border: 1px solid #C0C0C0; background: #FFF; font-size: 12px; } .inline-block { diff --git a/htdocs/support/index.php b/htdocs/support/index.php index 755863707e5..dbde74ed857 100644 --- a/htdocs/support/index.php +++ b/htdocs/support/index.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2008-2015 Laurent Destailleur * Copyright (C) 2008-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * @@ -194,7 +194,8 @@ print ''; print ''; print ''; -$urlwiki='http://wiki.dolibarr.org/index.php/List of Dolibarr partners and providers'; +#$urlwiki='http://wiki.dolibarr.org/index.php/List of Dolibarr partners and providers'; +$urlwiki='http://partners.dolibarr.org'; print ''; print ''; print '
'; @@ -228,7 +229,8 @@ print '
'; print ''; print ''; -$urlwiki='http://wiki.dolibarr.org/index.php/List of Dolibarr partners and providers'; +#$urlwiki='http://wiki.dolibarr.org/index.php/List of Dolibarr partners and providers'; +$urlwiki='http://partners.dolibarr.org'; print ''; print ''; print '
';