diff --git a/htdocs/admin/receiptprinter.php b/htdocs/admin/receiptprinter.php index 87fce1f6087..b86023aa49a 100644 --- a/htdocs/admin/receiptprinter.php +++ b/htdocs/admin/receiptprinter.php @@ -1,6 +1,7 @@ * Copyright (C) 2015 Frederic France + * Copyright (C) 2016 Juanjo Menent * * 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 @@ -377,7 +378,8 @@ if ($mode == 'template' && $user->admin) if ($ret > 0) { setEventMessages($printer->error, $printer->errors, 'errors'); } else { - for ($line=0; $line < count($printer->listprinterstemplates); $line++) { + $max = count($printer->listprinterstemplates); + for ($line=0; $line < $max; $line++) { $var = !$var; print ''; if ($action=='edittemplate' && $printer->listprinterstemplates[$line]['rowid']==$templateid) { @@ -422,7 +424,8 @@ if ($mode == 'template' && $user->admin) print ''.$langs->trans("Tag").''; print ''.$langs->trans("Description").''; print "\n"; - for ($tag=0; $tag < count($printer->tags); $tag++) { + $max = count($printer->tags); + for ($tag=0; $tag < $max; $tag++) { $var = !$var; print ''; print '<'.$printer->tags[$tag].'>'.$langs->trans(strtoupper($printer->tags[$tag])).''; diff --git a/htdocs/commande/tpl/linkedobjectblock.tpl.php b/htdocs/commande/tpl/linkedobjectblock.tpl.php index 1968caf2544..98e931db9f8 100644 --- a/htdocs/commande/tpl/linkedobjectblock.tpl.php +++ b/htdocs/commande/tpl/linkedobjectblock.tpl.php @@ -46,7 +46,16 @@ foreach($linkedObjectBlock as $key => $objectlink) echo price($objectlink->total_ht); } ?> getLibStatut(3); ?> - ">transnoentitiesnoconv("RemoveLink")); ?> + + element != 'shipping') { + ?> + ">transnoentitiesnoconv("RemoveLink")); ?> + + 0) { $dateinvoice = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); diff --git a/htdocs/compta/facture/class/facture-rec.class.php b/htdocs/compta/facture/class/facture-rec.class.php index 3ef9d716bfb..f1cae70fec5 100644 --- a/htdocs/compta/facture/class/facture-rec.class.php +++ b/htdocs/compta/facture/class/facture-rec.class.php @@ -962,6 +962,7 @@ class FactureRec extends CommonInvoice if ($this->db->query($sql)) { $this->date_when = $date; + if ($increment_nb_gen_done>0) $_facrec->nb_gen_done++; return 1; } else diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 6e46ead1da5..10251d631f7 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -309,13 +309,12 @@ class Facture extends CommonInvoice $forceduedate = $this->calculate_date_lim_reglement(); - // Update date and number of last generation of recurring template invoice, before inserting new invoice + // For recurrn invoices, update date and number of last generation of recurring template invoice, before inserting new invoice if ($_facrec->frequency > 0) { - $_facrec->nb_gen_done++; $next_date = $_facrec->getNextDate(); // Calculate next date $_facrec->setValueFrom('date_last_gen', $now, '', null, 'date'); - $_facrec->setValueFrom('nb_gen_done', $_facrec->nb_gen_done + 1); + //$_facrec->setValueFrom('nb_gen_done', $_facrec->nb_gen_done + 1); // Not required, +1 already included into setNextDate when second param is 1. $_facrec->setNextDate($next_date,1); } } diff --git a/htdocs/compta/facture/fiche-rec.php b/htdocs/compta/facture/fiche-rec.php index b826e4f266d..8118cbea1ac 100644 --- a/htdocs/compta/facture/fiche-rec.php +++ b/htdocs/compta/facture/fiche-rec.php @@ -1256,8 +1256,13 @@ else print '
'; + // Frequencry/Recurring section if ($object->frequency > 0) { + if (empty($conf->cron->enabled)) + { + print info_admin($langs->trans("EnableAndSetupModuleCron", $langs->transnoentitiesnoconv("Module2300Name"))); + } print ''; diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 68eb4240226..c6651b4810d 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -182,7 +182,7 @@ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'e include DOL_DOCUMENT_ROOT.'/core/actions_changeselectedfields.inc.php'; // Do we click on purge search criteria ? -if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers +if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter") || GETPOST("button_removefilter.x")) // Both test are required to be compatible with all browsers { $search_user=''; $search_sale=''; diff --git a/htdocs/expedition/tpl/linkedobjectblock.tpl.php b/htdocs/expedition/tpl/linkedobjectblock.tpl.php index d09c478d63d..276eb5ed8fa 100644 --- a/htdocs/expedition/tpl/linkedobjectblock.tpl.php +++ b/htdocs/expedition/tpl/linkedobjectblock.tpl.php @@ -41,12 +41,20 @@ foreach($linkedObjectBlock as $key => $objectlink) + } ?> - + + global->FICHINTER_WITHOUT_DURATION)?0:convertTime2Seconds(GETPOST('durationhour','int'), GETPOST('durationmin','int')); + $duration = empty($conf->global->FICHINTER_WITHOUT_DURATION)?convertTime2Seconds(GETPOST('durationhour','int'), GETPOST('durationmin','int')) : 0; // Extrafields @@ -1553,7 +1553,7 @@ else if ($id > 0 || ! empty($ref)) $selectmode = 'select'; if (!empty($conf->global->INTERVENTION_ADDLINE_FREEDUREATION)) $selectmode = 'text'; - $form->select_duration('duration', $objp->duree, $selectmode); + $form->select_duration('duration', $objp->duree, 0, $selectmode); } print ''; diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index 42810962275..7481574ddd9 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -82,10 +82,9 @@ $year = GETPOST("year","int"); $day_lim = GETPOST('day_lim','int'); $month_lim = GETPOST('month_lim','int'); $year_lim = GETPOST('year_lim','int'); -$filter = GETPOST("filtre"); $optioncss = GETPOST('optioncss','alpha'); -if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test must be present to be compatible with all browsers +if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter") || GETPOST("button_removefilter.x")) // All test must be present to be compatible with all browsers { $search_all=""; $search_ref=""; @@ -225,7 +224,7 @@ if ($search_amount_all_tax != '') $sql .= natural_search('fac.total_ttc', $search_amount_all_tax, 1); } -if ($search_status != '' && $search_status>=0) +if ($search_status != '' && $search_status >= 0) { $sql.= " AND fac.fk_statut = ".$search_status; } @@ -273,7 +272,6 @@ if ($resql) if ($search_company) $param.='&search_company='.urlencode($search_company); if ($search_amount_no_tax) $param.='&search_amount_no_tax='.urlencode($search_amount_no_tax); if ($search_amount_all_tax) $param.='&search_amount_all_tax='.urlencode($search_amount_all_tax); - if ($filter && $filter != -1) $param.='&filtre='.urlencode($filter); if ($optioncss != '') $param.='&optioncss='.$optioncss; if ($search_status >= 0) $param.="&search_status=".$search_status; @@ -347,7 +345,7 @@ if ($resql) print ''; print ''; print '
date_delivery,'day'); ?> rights->expedition->lire) { + if ($user->rights->expedition->lire) { $total = $total + $objectlink->total_ht; echo price($objectlink->total_ht); - }*/ ?> getLibStatut(3); ?>">transnoentitiesnoconv("RemoveLink")); ?> + element != 'commande') { + ?> + ">transnoentitiesnoconv("RemoveLink")); ?>
'; $liststatus=array('0'=>$langs->trans("Draft"),'1'=>$langs->trans("Unpaid"), '2'=>$langs->trans("Paid")); - print $form->selectarray('filtre', $liststatus, $search_status, 1); + print $form->selectarray('search_status', $liststatus, $search_status, 1); print ''; $searchpitco=$form->showFilterAndCheckAddButtons(0); diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index c57c01dfc36..53a3081aa4e 100755 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -429,6 +429,7 @@ NoDetails=No more details in footer DisplayCompanyInfo=Display company address DisplayCompanyManager=Display manager names DisplayCompanyInfoAndManagers=Display company and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice beeing generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template with button *Create*. Note that even if you enabled automatic generation, you can still safely launch manual generation. Duplicates generation for same period are not possible. # Modules Module0Name=Users & groups diff --git a/htdocs/langs/en_US/banks.lang b/htdocs/langs/en_US/banks.lang index 8ba28807bca..e4c38a8d549 100644 --- a/htdocs/langs/en_US/banks.lang +++ b/htdocs/langs/en_US/banks.lang @@ -127,7 +127,7 @@ ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt DeleteCheckReceipt=Delete this check receipt ? ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt ? BankChecks=Bank checks -BankChecksToReceipt=Checks waiting for deposit +BankChecksToReceipt=Checks awaiting deposit ShowCheckReceipt=Show check deposit receipt NumberOfCheques=Nb of check DeleteTransaction=Delete transaction diff --git a/htdocs/langs/en_US/bookmarks.lang b/htdocs/langs/en_US/bookmarks.lang index 7acb946bb62..19e383b2b3e 100644 --- a/htdocs/langs/en_US/bookmarks.lang +++ b/htdocs/langs/en_US/bookmarks.lang @@ -14,6 +14,6 @@ BehaviourOnClick=Behaviour when a URL is clicked CreateBookmark=Create bookmark SetHereATitleForLink=Set a title for the bookmark UseAnExternalHttpLinkOrRelativeDolibarrLink=Use an external http URL or a relative Dolibarr URL -ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Choose if a page opened by link must appear on current or new window +ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Choose if linked page must open in new window or not BookmarksManagement=Bookmarks management ListOfBookmarks=List of bookmarks diff --git a/htdocs/langs/en_US/boxes.lang b/htdocs/langs/en_US/boxes.lang index a584802048d..bbb03afa4f2 100644 --- a/htdocs/langs/en_US/boxes.lang +++ b/htdocs/langs/en_US/boxes.lang @@ -1,7 +1,7 @@ # Dolibarr language file - Source file is en_US - boxes BoxLastRssInfos=Rss information BoxLastProducts=Latest %s products/services -BoxProductsAlertStock=Products in stock alert +BoxProductsAlertStock=Stock alerts for products BoxLastProductsInContract=Latest %s contracted products/services BoxLastSupplierBills=Latest supplier invoices BoxLastCustomerBills=Latest customer invoices @@ -44,7 +44,7 @@ BoxTitleLastModifiedSupplierBills=Latest %s modified supplier invoices BoxTitleLastModifiedProspects=Latest %s modified prospects BoxTitleLastProductsInContract=Latest %s products/services in a contract BoxTitleLastModifiedMembers=Latest %s members -BoxTitleLastFicheInter=Latest %s modified intervention +BoxTitleLastFicheInter=Latest %s modified interventions BoxTitleOldestUnpaidCustomerBills=Oldest %s unpaid customer invoices BoxTitleOldestUnpaidSupplierBills=Oldest %s unpaid supplier invoices BoxTitleCurrentAccounts=Open accounts balances diff --git a/htdocs/langs/en_US/compta.lang b/htdocs/langs/en_US/compta.lang index 23edfae8b05..b54f59dcfc2 100644 --- a/htdocs/langs/en_US/compta.lang +++ b/htdocs/langs/en_US/compta.lang @@ -125,7 +125,7 @@ LastCheckReceiptShort=Latest %s check receipts NewCheckReceipt=New discount NewCheckDeposit=New check deposit NewCheckDepositOn=Create receipt for deposit on account: %s -NoWaitingChecks=No checks waiting for deposit. +NoWaitingChecks=No checks awaiting deposit. DateChequeReceived=Check reception date NbOfCheques=Nb of checks PaySocialContribution=Pay a social/fiscal tax diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index e252903f082..f581b76deda 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -594,7 +594,7 @@ Priority=Priority SendByMail=Send by EMail MailSentBy=Email sent by TextUsedInTheMessageBody=Email body -SendAcknowledgementByMail=Send Ack. by email +SendAcknowledgementByMail=Send confirmation email EMail=E-mail NoEMail=No email NoMobilePhone=No mobile phone diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang index 84fa74643fa..a9fd3b993e4 100644 --- a/htdocs/langs/en_US/projects.lang +++ b/htdocs/langs/en_US/projects.lang @@ -30,9 +30,9 @@ ConfirmDeleteATask=Are you sure you want to delete this task ? OfficerProject=Officer project LastProjects=Latest %s projects AllProjects=All projects -OpenedProjects=Opened projects -OpenedTasks=Opened tasks -OpportunitiesStatusForOpenedProjects=Opportunities amount of opened projects by status +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Opportunities amount of open projects by status OpportunitiesStatusForProjects=Opportunities amount of projects by status ProjectsList=List of projects ShowProject=Show project @@ -182,14 +182,14 @@ ManageOpportunitiesStatus=Use projects to follow leads/opportinuties ProjectNbProjectByMonth=Nb of created projects by month ProjectOppAmountOfProjectsByMonth=Amount of opportunities by month ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of opportunities by month -ProjectOpenedProjectByOppStatus=Opened project/lead by opportunity status +ProjectOpenedProjectByOppStatus=Open project/lead by opportunity status ProjectsStatistics=Statistics on projects/leads TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. IdTaskTime=Id task time YouCanCompleteRef=If you want to complete the ref with some information (to use it as search filters), it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-ABC. You may also prefer to add search keys into label. -OpenedProjectsByThirdparties=Opened projects by thirdparties +OpenedProjectsByThirdparties=Open projects by thirdparties OnlyOpportunitiesShort=Only opportunities -OpenedOpportunitiesShort=Opened opportunities +OpenedOpportunitiesShort=Open opportunities NotAnOpportunityShort=Not an opportunity OpportunityTotalAmount=Opportunities total amount OpportunityPonderatedAmount=Opportunities weighted amount diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang index 6b1a28eae17..c1ba6f73159 100644 --- a/htdocs/langs/en_US/stocks.lang +++ b/htdocs/langs/en_US/stocks.lang @@ -116,7 +116,7 @@ WarehouseForStockDecrease=The warehouse %s will be used for stock decreas WarehouseForStockIncrease=The warehouse %s will be used for stock increase ForThisWarehouse=For this warehouse ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create supplier orders to fill the difference. -ReplenishmentOrdersDesc=This is a list of all opened supplier orders including predefined products. Only opened orders with predefined products, so orders that may affect stocks, are visible here. +ReplenishmentOrdersDesc=This is a list of all open supplier orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. Replenishments=Replenishments NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) @@ -143,4 +143,4 @@ ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s