diff --git a/htdocs/core/modules/holiday/mod_holiday_immaculate.php b/htdocs/core/modules/holiday/mod_holiday_immaculate.php new file mode 100644 index 00000000000..1355ba90302 --- /dev/null +++ b/htdocs/core/modules/holiday/mod_holiday_immaculate.php @@ -0,0 +1,132 @@ + + * Copyright (C) 2018 Charlene Benke + * + * 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 + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * or see http://www.gnu.org/ + */ + +/** + * \file htdocs/core/modules/holiday/mod_holiday_immaculate.php + * \ingroup contract + * \brief File of class to manage contract numbering rules Magre + */ + +require_once DOL_DOCUMENT_ROOT .'/core/modules/holiday/modules_holiday.php'; + +/** + * Class to manage contract numbering rules Magre + */ +class mod_holiday_immaculate extends ModelNumRefHolidays +{ + var $version='dolibarr'; + var $error = ''; + var $nom = 'Immaculate'; + var $code_auto=1; + + /** + * Return default description of numbering model + * + * @return string text description + */ + function info() + { + global $conf,$langs; + + $langs->load("bills"); + + $form = new Form($this->db); + + $texte = $langs->trans('GenericNumRefModelDesc')."
\n"; + $texte.= '
'; + $texte.= ''; + $texte.= ''; + $texte.= ''; + $texte.= ''; + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Holiday"),$langs->transnoentities("Holiday")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Holiday"),$langs->transnoentities("Holiday")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + $texte.= ''; + $texte.= ''; + $texte.= ''; + $texte.= ''; + $texte.= '
'.$langs->trans("Mask").':'.$form->textwithpicto('',$tooltip,1,1).' 
'; + $texte.= '
'; + + return $texte; + } + + /** + * Return numbering example + * + * @return string Example + */ + function getExample() + { + global $conf,$langs,$user; + + $old_login=$user->login; + $user->login='UUUUUUU'; + $numExample = $this->getNextValue($user, ''); + $user->login=$old_login; + + if (! $numExample) + { + $numExample = $langs->trans('NotConfigured'); + } + return $numExample; + } + + /** + * Return next value + * + * @param Societe $user user object + * @param Object $holiday holiday object + * @return string Value if OK, 0 if KO + */ + function getNextValue($user, $holiday) + { + global $db,$conf; + + require_once DOL_DOCUMENT_ROOT .'/core/lib/functions2.lib.php'; + + $mask=$conf->global->HOLIDAY_IMMACULATE_MASK; + + if (! $mask) + { + $this->error='NotConfigured'; + return 0; + } + + $numFinal=get_next_value($db,$mask,'holiday','ref','', $user, $holiday->date_create); + + return $numFinal; + } + + /** + * Return next value + * + * @param Societe $objsoc third party object + * @param Object $objforref contract object + * @return string Value if OK, 0 if KO + */ + function holiday_get_num($user, $objforref) + { + return $this->getNextValue($user, $objforref); + } +}