Qual: Clean module

This commit is contained in:
Laurent Destailleur 2012-09-05 12:59:33 +02:00
parent b20c8d97c0
commit 84438d82f4
10 changed files with 339 additions and 646 deletions

View File

@ -1060,7 +1060,7 @@ class Form
}
//if ($obj->admin) $out.= ' *';
if ($conf->global->MAIN_SHOW_LOGIN) $out.= ' ('.$obj->login.')';
if (! empty($conf->global->MAIN_SHOW_LOGIN)) $out.= ' ('.$obj->login.')';
$out.= '</option>';
$i++;
}

View File

@ -184,55 +184,87 @@ class modHoliday extends DolibarrModules
// Add here entries to declare new menus
$this->menu[$r]=array( 'fk_menu'=>0, // Put 0 if this is a top menu
'type'=>'top', // This is a Top menu entry
'titre'=>'CPTitreMenu',
'mainmenu'=>'holiday',
'url'=>'/holiday/index.php?leftmenu=holiday',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>100,
'enabled'=>'1', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->write', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
// $r++;
//
// Example to declare a Left Menu entry:
// $this->menu[$r]=array( 'fk_menu'=>'r=0', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry)
// 'type'=>'left', // This is a Left menu entry
// 'titre'=>'MyModule left menu 1',
// 'mainmenu'=>'mymodule',
// 'url'=>'/mymodule/pagelevel1.php',
// 'langs'=>'mylangfile', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
// 'position'=>100,
// 'enabled'=>'1', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
// 'perms'=>'1', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
// 'target'=>'',
// 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
// $r++;
//
// Example to declare another Left Menu entry:
// $this->menu[$r]=array( 'fk_menu'=>'r=1', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry)
// 'type'=>'left', // This is a Left menu entry
// 'titre'=>'MyModule left menu 2',
// 'mainmenu'=>'mymodule',
// 'url'=>'/mymodule/pagelevel2.php',
// 'langs'=>'mylangfile', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
// 'position'=>100,
// 'enabled'=>'1', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
// 'perms'=>'1', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
// 'target'=>'',
// 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
// $r++;
'type'=>'top', // This is a Top menu entry
'titre'=>'CPTitreMenu',
'mainmenu'=>'holiday',
'leftmenu'=>'holiday',
'url'=>'/holiday/index.php',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>100,
'enabled'=>'1', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->write', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
$this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=holiday', // Put 0 if this is a top menu
'type'=>'left', // This is a Top menu entry
'titre'=>'CPTitreMenu',
'mainmenu'=>'holiday',
'leftmenu'=>'holiday',
'url'=>'/holiday/index.php?mainmenu=holiday&leftmenu=holiday',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>100,
'enabled'=>'1', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->write', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
$this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=holiday,fk_leftmenu=holiday', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry)
'type'=>'left', // This is a Left menu entry
'titre'=>'MenuAddCP',
'mainmenu'=>'holiday',
'leftmenu'=>'holiday_add',
'url'=>'/holiday/fiche.php?mainmenu=holiday&action=request',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>101,
'enabled'=>'$conf->holiday->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->write', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
$this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=holiday,fk_leftmenu=holiday', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry)
'type'=>'left', // This is a Left menu entry
'titre'=>'MenuConfCP',
'mainmenu'=>'holiday',
'leftmenu'=>'holiday_conf',
'url'=>'/holiday/define_holiday.php?mainmenu=holiday&action=request',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>102,
'enabled'=>'$conf->holiday->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->define_holiday', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
$this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=holiday,fk_leftmenu=holiday', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry)
'type'=>'left', // This is a Left menu entry
'titre'=>'MenuLogCP',
'mainmenu'=>'holiday_def',
'url'=>'/holiday/view_log.php?mainmenu=holiday&action=request',
'leftmenu'=>'holiday',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>103,
'enabled'=>'$conf->holiday->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->view_log', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
$this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=holiday,fk_leftmenu=holiday', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry)
'type'=>'left', // This is a Left menu entry
'titre'=>'MenuReportMonth',
'mainmenu'=>'holiday',
'leftmenu'=>'holiday_report',
'url'=>'/holiday/month_report.php?mainmenu=holiday&action=request',
'langs'=>'holiday', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>104,
'enabled'=>'$conf->holiday->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled.
'perms'=>'$user->rights->holiday->view_log', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
// Exports
$r=1;
// Agenda
$this->Agenda = 1;
$this->agendas = array('holiday:holidayAgenda');
// Example:
// $this->export_code[$r]=$this->rights_class.'_'.$r;
// $this->export_label[$r]='CustomersInvoicesAndInvoiceLines'; // Translation key (used only if key ExportDataset_xxx_z not found)

View File

@ -20,18 +20,14 @@
* \file holiday.class.php
* \ingroup holiday
* \brief Class file of the module paid holiday.
* \version $Id: holiday.class.php,v 1.00 2011/09/15 11:00:00 dmouillard Exp $
* \author dmouillard@teclib.com <Dimitri Mouillard>
* \remarks Class file of the module paid holiday.
*/
require_once DOL_DOCUMENT_ROOT .'/core/class/commonobject.class.php';
/**
* \class Holiday
* \brief Class pour les Congés Payés
* \remarks Développé par Teclib ( http://www.teclib.com/ )
* Class of the module paid holiday. Developed by Teclib ( http://www.teclib.com/ )
*/
class Holiday // extends CommonObject
class Holiday extends CommonObject
{
var $db;
var $error;
@ -65,7 +61,7 @@ class Holiday // extends CommonObject
/**
* Constructor
*
* @param DB Database handler
* @param DoliDB $db Database handler
*/
function __construct($db)
{
@ -81,10 +77,11 @@ class Holiday // extends CommonObject
/**
* \brief Créer un congés payés dans la base de données
* \param user User that create
* \param notrigger 0=launch triggers after, 1=disable triggers
* \return int <0 if KO, Id of created object if OK
* Créer un congés payés dans la base de données
*
* @param User $user User that create
* @param int $notrigger 0=launch triggers after, 1=disable triggers
* @return int <0 if KO, Id of created object if OK
*/
function create($user, $notrigger=0)
{
@ -158,9 +155,10 @@ class Holiday // extends CommonObject
/**
* \brief Load object in memory from database
* \param id id object
* \return int <0 if KO, >0 if OK
* Load object in memory from database
*
* @param int $id Id object
* @return int <0 if KO, >0 if OK
*/
function fetch($id)
{
@ -227,11 +225,12 @@ class Holiday // extends CommonObject
}
/**
* \brief Liste les congés payés pour un utilisateur
* \param user id ID de l'utilisateur à lister
* \param order Filtrage par ordre
* \param filter Filtre de séléction
* \return int -1 si erreur, 1 si OK et 2 si pas de résultat
* Liste les congés payés pour un utilisateur
*
* @param int $user_id ID de l'utilisateur à lister
* @param string $order Filtrage par ordre
* @param string $filter Filtre de séléction
* @return int -1 si erreur, 1 si OK et 2 si pas de résultat
*/
function fetchByUser($user_id,$order='',$filter='')
{
@ -321,10 +320,11 @@ class Holiday // extends CommonObject
}
/**
* \brief Liste les congés payés de tout les utilisateurs
* \param order Filtrage par ordre
* \param filter Filtre de séléction
* \return int -1 si erreur, 1 si OK et 2 si pas de résultat
* Liste les congés payés de tout les utilisateurs
*
* @param string $order Filtrage par ordre
* @param string $filter Filtre de séléction
* @return int -1 si erreur, 1 si OK et 2 si pas de résultat
*/
function fetchAll($order,$filter)
{
@ -413,10 +413,11 @@ class Holiday // extends CommonObject
}
/**
* \brief Update database
* \param user User that modify
* \param notrigger 0=launch triggers after, 1=disable triggers
* \return int <0 if KO, >0 if OK
* Update database
*
* @param User $user User that modify
* @param int $notrigger 0=launch triggers after, 1=disable triggers
* @return int <0 if KO, >0 if OK
*/
function update($user=0, $notrigger=0)
{
@ -521,9 +522,9 @@ class Holiday // extends CommonObject
/**
* Delete object in database
*
* @param user User that delete
* @param notrigger 0=launch triggers after, 1=disable triggers
* @return int <0 if KO, >0 if OK
* @param User $user User that delete
* @param int $notrigger 0=launch triggers after, 1=disable triggers
* @return int <0 if KO, >0 if OK
*/
function delete($user, $notrigger=0)
{
@ -565,11 +566,12 @@ class Holiday // extends CommonObject
}
/**
* verifDateHolidayCP
*
* @param unknown_type $fk_user
* @param unknown_type $dateDebut
* @param unknown_type $dateFin
* @return boolean
* @param int $fk_user Id user
* @param date $dateDebut Start date
* @param date $dateFin End date
* @return boolean
*/
function verifDateHolidayCP($fk_user,$dateDebut,$dateFin)
{
@ -588,9 +590,10 @@ class Holiday // extends CommonObject
}
/**
* \brief Retourne la traduction du statut d'un congé payé
* \param statut int du statut du congé
* \return string retourne la traduction du statut
* Retourne la traduction du statut d'un congé payé
*
* @param int $statut int du statut du congé
* @return string retourne la traduction du statut
*/
function getStatutCP($statut) {
@ -620,9 +623,10 @@ class Holiday // extends CommonObject
}
/**
* \brief Affiche un select HTML des statuts de congés payés
* \param selected int du statut séléctionné par défaut
* \return select affiche le select des statuts
* Affiche un select HTML des statuts de congés payés
*
* @param int $selected int du statut séléctionné par défaut
* @return string affiche le select des statuts
*/
function selectStatutCP($selected='') {
@ -652,9 +656,10 @@ class Holiday // extends CommonObject
}
/**
* \brief Retourne un select HTML des groupes d'utilisateurs
* \param prefix nom du champ dans le formulaire
* \return select retourne le select des groupes
* Retourne un select HTML des groupes d'utilisateurs
*
* @param string $prefix nom du champ dans le formulaire
* @return string retourne le select des groupes
*/
function selectUserGroup($prefix)
{
@ -709,8 +714,9 @@ class Holiday // extends CommonObject
/**
* Met à jour une option du module Holiday Payés
*
* @param name nom du paramètre de configuration
* @return value vrai si mise à jour OK sinon faux
* @param string $name nom du paramètre de configuration
* @param string $value vrai si mise à jour OK sinon faux
* @return boolean ok or ko
*/
function updateConfCP($name,$value) {
@ -730,8 +736,8 @@ class Holiday // extends CommonObject
/**
* Retourne la valeur d'un paramètre de configuration
*
* @param name nom du paramètre de configuration
* @return string retourne la valeur du paramètre
* @param string $name nom du paramètre de configuration
* @return string retourne la valeur du paramètre
*/
function getConfCP($name)
{
@ -759,9 +765,11 @@ class Holiday // extends CommonObject
}
/**
* Met à jour le timestamp de la dernière mise à jour du solde des CP
* Met à jour le timestamp de la dernière mise à jour du solde des CP
*
* @return nothing ne retourne rien
* @param int $userID Id of user
* @param int $nbHoliday Nb of days
* @return void
*/
function updateSoldeCP($userID='',$nbHoliday='')
{
@ -827,9 +835,10 @@ class Holiday // extends CommonObject
}
/**
* \brief Retourne un checked si vrai
* \param name nom du paramètre de configuration
* \return string retourne checked si > 0
* Retourne un checked si vrai
*
* @param string $name nom du paramètre de configuration
* @return string retourne checked si > 0
*/
function getCheckOption($name) {
@ -851,9 +860,11 @@ class Holiday // extends CommonObject
/**
* Créer les entrées pour chaque utilisateur au moment de la configuration
* Créer les entrées pour chaque utilisateur au moment de la configuration
*
* @return nothing ne retourne rien
* @param boolean $single Single
* @param int $userid Id user
* @return void
*/
function createCPusers($single=false,$userid='')
{
@ -879,9 +890,10 @@ class Holiday // extends CommonObject
}
/**
* \brief Supprime un utilisateur du module Congés Payés
* \param int ID de l'utilisateur à supprimer
* \return boolean Vrai si pas d'erreur, faut si Erreur
* Supprime un utilisateur du module Congés Payés
*
* @param int $user_id ID de l'utilisateur à supprimer
* @return boolean Vrai si pas d'erreur, faut si Erreur
*/
function deleteCPuser($user_id) {
@ -894,9 +906,10 @@ class Holiday // extends CommonObject
/**
* \brief Retourne le solde de congés payés pour un utilisateur
* \param user_id ID de l'utilisateur
* \return float Retourne le solde de congés payés de l'utilisateur
* Retourne le solde de congés payés pour un utilisateur
*
* @param int $user_id ID de l'utilisateur
* @return float Retourne le solde de congés payés de l'utilisateur
*/
function getCPforUser($user_id) {
@ -919,9 +932,9 @@ class Holiday // extends CommonObject
* Liste la liste des utilisateurs du module congés
* uniquement pour vérifier si il existe de nouveau utilisateur
*
* @param boolean si vrai retourne une liste, si faux retourne un array
* @param boolean si vrai retourne pour Dolibarr si faux retourne pour CP
* @return string retourne un tableau de tout les utilisateurs actifs
* @param boolean $liste si vrai retourne une liste, si faux retourne un array
* @param boolean $type si vrai retourne pour Dolibarr si faux retourne pour CP
* @return string retourne un tableau de tout les utilisateurs actifs
*/
function fetchUsers($liste=true,$type=true)
{
@ -1093,8 +1106,9 @@ class Holiday // extends CommonObject
}
/**
* \brief Compte le nombre d'utilisateur actifs dans Dolibarr
* \return int retourne le nombre d'utilisateur
* Compte le nombre d'utilisateur actifs dans Dolibarr
*
* @return int retourne le nombre d'utilisateur
*/
function countActiveUsers() {
@ -1109,10 +1123,11 @@ class Holiday // extends CommonObject
}
/**
* \brief Compare le nombre d'utilisateur actif de Dolibarr à celui des utilisateurs des congés payés
* \param nbUsersDolibarr nombre d'utilisateur actifs dans Dolibarr
* \param nbUsersHoliday nombre d'utilisateur actifs dans le module congés payés
* \return nothing ne retourne rien
* Compare le nombre d'utilisateur actif de Dolibarr à celui des utilisateurs des congés payés
*
* @param int $userDolibarr nombre d'utilisateur actifs dans Dolibarr
* @param int $userCP nombre d'utilisateur actifs dans le module congés payés
* @return void
*/
function verifNbUsers($userDolibarr,$userCP) {
@ -1200,9 +1215,12 @@ class Holiday // extends CommonObject
/**
* \brief Retourne le nombre de jours ouvrés entre deux dates
* \param Date de début et date de fin au format TimeStamp
* \remarks Prise en compte des jours fériés en France
* Retourne le nombre de jours ouvrés entre deux dates
* Prise en compte des jours fériés en France
*
* @param date $date_start Start date
* @param date $date_stop Stop date
* @return int Nb of days
*/
function getOpenDays($date_start, $date_stop) {
@ -1214,7 +1232,7 @@ class Holiday // extends CommonObject
$diff_year = date('Y', $date_stop) - date('Y', $date_start);
for ($i = 0; $i <= $diff_year; $i++) {
$year = (int)date('Y', $date_start) + $i;
$year = (int) date('Y', $date_start) + $i;
// Liste des jours feriés
$arr_bank_holidays[] = '1_1_'.$year; // Jour de l'an
$arr_bank_holidays[] = '1_5_'.$year; // Fete du travail
@ -1247,8 +1265,9 @@ class Holiday // extends CommonObject
}
/**
* \brief Liste les évènements de congés payés enregistré
* \return int -1 si erreur, 1 si OK et 2 si pas de résultat
* Liste les évènements de congés payés enregistré
*
* @return int -1 si erreur, 1 si OK et 2 si pas de résultat
*/
function fetchEventsCP()
{
@ -1301,8 +1320,11 @@ class Holiday // extends CommonObject
}
/**
* \brief Créer un évènement de congés payés
* \return int -1 si erreur, id si OK
* Créer un évènement de congés payés
*
* @param User $user User
* @param int $notrigger No trigger
* @return int -1 si erreur, id si OK
*/
function createEventCP($user, $notrigger=0)
{
@ -1354,8 +1376,12 @@ class Holiday // extends CommonObject
}
/**
* \brief Met à jour les évènements de congés payés
* \return int -1 si erreur, id si OK
* Met à jour les évènements de congés payés
*
* @param int $rowid Row id
* @param string $name Name
* @param value $value Value
* @return int -1 si erreur, id si OK
*/
function updateEventCP($rowid, $name, $value) {
@ -1372,7 +1398,13 @@ class Holiday // extends CommonObject
return false;
}
function selectEventCP() {
/**
* select event
*
* @return string|boolean
*/
function selectEventCP()
{
$sql = "SELECT *";
$sql.= " FROM ".MAIN_DB_PREFIX."holiday_events";
@ -1405,6 +1437,12 @@ class Holiday // extends CommonObject
}
/**
* deleteEvent
*
* @param int $rowid Row id
* @return boolean Success or not
*/
function deleteEventCP($rowid) {
$sql = "DELETE FROM ".MAIN_DB_PREFIX."holiday_events";
@ -1419,6 +1457,12 @@ class Holiday // extends CommonObject
}
}
/**
* getValueEventCp
*
* @param int $rowid Row id
* @return string|boolean
*/
function getValueEventCp($rowid) {
$sql = "SELECT value";
@ -1435,6 +1479,12 @@ class Holiday // extends CommonObject
}
}
/**
* getNameEventCp
*
* @param int $rowid Row id
* @return unknown|boolean
*/
function getNameEventCp($rowid) {
$sql = "SELECT name";
@ -1451,6 +1501,15 @@ class Holiday // extends CommonObject
}
}
/**
* addLogCP
*
* @param int $fk_user_action Id user creation
* @param int $fk_user_update Id user update
* @param int $type Type
* @param int $new_solde New value
* @return number|string
*/
function addLogCP($fk_user_action,$fk_user_update,$type,$new_solde) {
global $conf, $langs, $db;
@ -1513,10 +1572,11 @@ class Holiday // extends CommonObject
}
/**
* \brief Liste le log des congés payés
* \param order Filtrage par ordre
* \param filter Filtre de séléction
* \return int -1 si erreur, 1 si OK et 2 si pas de résultat
* Liste le log des congés payés
*
* @param string $order Filtrage par ordre
* @param string $filter Filtre de séléction
* @return int -1 si erreur, 1 si OK et 2 si pas de résultat
*/
function fetchLog($order,$filter)
{

View File

@ -1,278 +0,0 @@
<?php
/* Copyright (C) 2011 Anthony Hebert <ahebert@teclib.com>
* Copyright (C) 2012 Regis Houssin <regis@dolibarr.fr>
* Copyright (C) 2012 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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 2 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 <http://www.gnu.org/licenses/>.
*/
/**
* \file holidayagenda.class.php
* \ingroup holiday
* \brief Fichier d'agenda pour le module Congés Payés
*/
/**
* \class CommonAgenda
* \brief Classe mere pour heritage des classes Agenda
*/
// FIXME this class not exist
//require_once DOL_DOCUMENT_ROOT.'/core/class/commonagenda.class.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/task.class.php';
class HolidayAgenda// extends CommonAgenda
{
var $db;
// Nombre de seconde à ajouter ou soustraire pour être GMT?
var $offset = 3600;
// Pays ou calendrier assujetti à l'heure d'été?
var $summerTime = 0;
/**
* Constructor
*
* @param DoliDB $db Database access handler
*/
function construct($db)
{
$this->db = $db;
}
/**
* Fonction permettant d'altérer les paramètres javascript
* du calendrier
* @what string clé de paramètre recherché
*/
function getParams($what = ''){
$params = array( 'timeslotsPerHour' => 2,
'businessHours' => '{start: 0, end: 24, limitDisplay: true }');
if(empty($what)){
return $params;
}elseif(array_key_exists($what,$params)){
return $params[$what];
}else{
return false;
}
}
/**
* Accesseur des évènements à mettre dans l'agenda
* @param $start Timestamp de début
* @param $end Timestamp de fin
* @param $options Array stockage de paramètre à utiliser au besoin.
* @return $events Events encodés en Json
*/
function getEvents($start,$end,$options)
{
global $langs,$conf,$user,$db;
$langs->load('holiday');
$data = array();
if(!isset($options['user']) or empty($options['user'])):
$users_id = $user->id;
else:
$users_id = $options['user'];
endif;
$sql = "SELECT lcp.rowid as id,
UNIX_TIMESTAMP(date_debut) as start,
UNIX_TIMESTAMP(CONCAT(date_fin, ' 23:59:59')) as end,
lu.firstname as prenom,
lu.name as nom,
lcp.description as title,
lcp.statut as statut
FROM llx_holiday lcp
INNER JOIN llx_user lu
ON lu.rowid = lcp.fk_user
WHERE lcp.fk_user = {$users_id}
AND lcp.statut in (1,3)
AND (UNIX_TIMESTAMP(date_debut) BETWEEN LEFT('$start',10) AND LEFT('$end',10)
OR UNIX_TIMESTAMP(CONCAT(date_fin, ' 23:59:59')) BETWEEN LEFT('$start',10) AND LEFT('$end',10))
";
$qry = $db->query($sql);
$nbr = $db->num_rows($qry);
if($nbr)
{
$i = 0;
while($res = $db->fetch_object($qry))
{
$data[$i]['eventid'] = $res->id;
$data[$i]['readonly'] = 0;
$data[$i]['draggable'] = 0;
$data[$i]['resizable'] = 0;
$data[$i]['eventstart'] = (string)$res->start;
$data[$i]['eventend'] = (string)$res->end;
$data[$i]['eventmessage'] = $res->message;
$data[$i]['extraInfo'] = $res->message;
$data[$i]['color'] = "#7AAC22";
$data[$i]['type'] = $langs->trans('CPTitreMenu');
$data[$i]['icon'] = "<img src='".DOL_URL_ROOT."/holiday/img/holiday.png' height=13 width=13 />";
$data[$i]['eventtitle'] = "<strong>{$res->prenom} {$res->nom}<br />{$res->title}</strong>";
$data[$i]['eventtitle'] .= ($res->statut == 1) ? "<br />{$langs->trans('ToValidateCP')}" : "<br />{$langs->trans('ValidateCP')}";
$i++;
}
}
return $data;
}
function getFormItems()
{
global $conf;
$fields = array(
'selectedTab' => 'input',
'user' => 'select'
);
return $fields;
}
/**
* Accesseur d'un formulaire à mettre en en-tête de l'agenda
* @return $form code html
*/
function getForm($get,$post)
{
global $user,$langs,$conf,$db;
$post = $get + $post;
if($user->admin){
$sql = "SELECT * from llx_user where statut = 1";
$options = "";
$qry = $db->query($sql);
while($res = $db->fetch_object($qry)){
$options .= ((isset($_POST['user']) && $res->rowid == $_POST['user']) or ($res->rowid == $user->id and !isset($_POST['user'])))
? "<option value={$res->rowid} selected='selected'>{$res->firstname} {$res->name}</option>"
: "<option value={$res->rowid}>{$res->firstname} {$res->name}</option>";
}
}
else{
$options = "<option value={$user->id} selected='selected'>{$user->prenom} {$user->nom}</option>";
}
$HTML = <<<HTML
<form method='post' action="{$_SERVER["PHP_SELF"]}">
<table class='border' width='100%'>
<tr>
<td>
{$langs->trans('Collab')}
</td>
<td>
<select name='user' id='user'>
{$options}
</select>
<input type='hidden' name='selectedTab' value='holidayagenda' />
<input type='submit' value='Envoyer' class='button' />
</td>
</tr>
</table>
</form>
HTML;
$form = $HTML;
return $form;
}
/**
* Exporteur au format iCal
* @see http://tools.ietf.org/html/rfc5545
* @todo Export en iCal
* @return $iCal calendrier au format iCal
*/
static function exportIniCal()
{
}
/**
* Générateur du lien public d'accès au calendrier iCal
* @see http://tools.ietf.org/html/rfc5545
* @todo Générer le lien
* @return $iCal calendrier au format iCal
*/
function getiCalLink()
{
global $conf,$user,$langs;
}
/**
* Accesseur du label à afficher par print_fiche_titre()
* @return $label Label de l'agenda
*/
function getLabel()
{
global $user,$langs,$conf;
$langs->load('holiday');
ob_start();
print_fiche_titre($langs->trans('ListeCP'));
$label = ob_get_contents();
ob_end_clean();
return $label;
}
function getTitle()
{
global $langs;
$langs->load('holiday');
return $langs->trans('CPTitreMenu');
}
function getLink($action = "")
{
global $conf,$user;
$action = ($action == 'create') ? 'request' : '';
$url = DOL_URL_ROOT."/holiday/fiche.php";
return (empty($action)) ? $url : $url."?action={$action}";
}
}
?>

View File

@ -25,8 +25,9 @@
* \author dmouillard@teclib.com <Dimitri Mouillard>
*/
require('pre.inc.php');
require('../main.inc.php');
require_once(DOL_DOCUMENT_ROOT. "/user/class/user.class.php");
require_once(DOL_DOCUMENT_ROOT. "/holiday/common.inc.php");
// Protection if external user
if ($user->societe_id > 0) accessforbidden();
@ -41,7 +42,9 @@ $action=GETPOST('action');
* View
*/
llxHeader($langs->trans('CPTitreMenu'));
$form = new Form($db);
llxHeader(array(),$langs->trans('CPTitreMenu'));
print_fiche_titre($langs->trans('MenuConfCP'));
@ -111,7 +114,25 @@ elseif($action == 'add_event')
$var=true;
$i = 0;
print '<div class="tabBar">';
$cp_events = $holiday->fetchEventsCP();
if($cp_events == 1)
{
print '<br><form method="POST" action="'.$_SERVER["PHP_SELF"].'">'."\n";
print '<input type="hidden" name="action" value="add_event" />';
print_fiche_titre($langs->trans('DefineEventUserCP'),'','');
print $langs->trans('MotifCP').' : ';
print $holiday->selectEventCP();
print ' '.$langs->trans('UserCP').' : ';
print $form->select_users('',"userCP",1,"",0,'');
print ' <input type="submit" value="'.$langs->trans("addEventToUserCP").'" name="bouton" class="button"/>';
print '</form><br>';
}
dol_fiche_head();
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">'."\n";
print '<input type="hidden" name="action" value="update" />';
@ -148,27 +169,9 @@ foreach($listUsers as $users)
print '</table>';
print '</form>';
$cp_events = $holiday->fetchEventsCP();
dol_fiche_end();
if($cp_events == 1) {
$html = new Form($db);
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">'."\n";
print '<input type="hidden" name="action" value="add_event" />';
print '<h3>'.$langs->trans('DefineEventUserCP').'</h3>';
print $langs->trans('MotifCP').' : ';
print $holiday->selectEventCP();
print ' '.$langs->trans('UserCP').' : ';
print $html->select_users('',"userCP",1,"",0,'');
print ' <input type="submit" value="'.$langs->trans("addEventToUserCP").'" name="bouton" class="button"/>';
print '</form>';
}
print '</div>';
// Fin de page
$db->close();
llxFooter();
$db->close();
?>

View File

@ -25,12 +25,13 @@
* \remarks Form and file creation of paid holiday.
*/
require('pre.inc.php');
require('../main.inc.php');
require_once(DOL_DOCUMENT_ROOT. "/core/class/html.form.class.php");
require_once(DOL_DOCUMENT_ROOT. "/user/class/usergroup.class.php");
require_once(DOL_DOCUMENT_ROOT. "/core/class/html.formfile.class.php");
require_once(DOL_DOCUMENT_ROOT. "/core/class/CMailFile.class.php");
require_once(DOL_DOCUMENT_ROOT. "/core/class/html.formmail.class.php");
require_once(DOL_DOCUMENT_ROOT. "/holiday/common.inc.php");
// Get parameters
$myparam = GETPOST("myparam");
@ -61,9 +62,9 @@ if ($action == 'add')
$date_debut = dol_mktime(0, 0, 0, $_POST['date_debut_month'], $_POST['date_debut_day'], $_POST['date_debut_year']);
$date_fin = dol_mktime(0, 0, 0, $_POST['date_fin_month'], $_POST['date_fin_day'], $_POST['date_fin_year']);
$valideur = $_POST['valideur'];
$description = trim($_POST['description']);
$userID = $_POST['userID'];
$valideur = GETPOST('valideur');
$description = trim(GETPOST('description'));
$userID = GETPOST('userID');
// Si pas de date de début
if (empty($date_debut))
@ -108,7 +109,7 @@ if ($action == 'add')
}
// Si pas de validateur choisi
if($valideur < 1)
if ($valideur < 1)
{
header('Location: fiche.php?action=request&error=Valideur');
exit;
@ -137,7 +138,7 @@ if ($action == 'add')
}
if($action == 'update')
if ($action == 'update')
{
// Si pas le droit de modifier une demande
@ -163,13 +164,13 @@ if($action == 'update')
$description = trim($_POST['description']);
// Si pas de date de début
if(empty($_POST['date_debut_'])) {
if (empty($_POST['date_debut_'])) {
header('Location: fiche.php?id='.$_POST['holiday_id'].'&action=edit&error=nodatedebut');
exit;
}
// Si pas de date de fin
if(empty($_POST['date_fin_'])) {
if (empty($_POST['date_fin_'])) {
header('Location: fiche.php?id='.$_POST['holiday_id'].'&action=edit&error=nodatefin');
exit;
}
@ -178,19 +179,19 @@ if($action == 'update')
$testDateFin = strtotime($date_fin);
// Si date de début après la date de fin
if($testDateDebut > $testDateFin) {
if ($testDateDebut > $testDateFin) {
header('Location: fiche.php?id='.$_POST['holiday_id'].'&action=edit&error=datefin');
exit;
}
// Si pas de valideur choisi
if($valideur < 1) {
if ($valideur < 1) {
header('Location: fiche.php?id='.$_POST['holiday_id'].'&action=edit&error=Valideur');
exit;
}
// Si pas de jours ouvrés dans la demande
if($cp->getOpenDays($testDateDebut,$testDateFin) < 1) {
if ($cp->getOpenDays($testDateDebut,$testDateFin) < 1) {
header('Location: fiche.php?id='.$_POST['holiday_id'].'&action=edit&error=DureeHoliday');
exit;
}
@ -203,10 +204,13 @@ if($action == 'update')
$verif = $cp->update($user->id);
// Si pas d'erreur SQL on redirige vers la fiche de la demande
if($verif > 0) {
if ($verif > 0)
{
header('Location: fiche.php?id='.$_POST['holiday_id']);
exit;
} else {
}
else
{
// Sinon on affiche le formulaire de demande avec le message d'erreur SQL
header('Location: fiche.php?id='.$_POST['holiday_id'].'&action=edit&error=SQL_Create&msg='.$cp->error);
exit;
@ -223,7 +227,6 @@ if ($action == 'confirm_delete' && $_GET['confirm'] == 'yes')
{
if($user->rights->holiday->delete)
{
$cp = new Holiday($db);
$cp->fetch($_GET['id']);
@ -568,17 +571,14 @@ if ($action == 'confirm_cancel' && $_GET['confirm'] == 'yes')
* View
****************************************************/
llxHeader($langs->trans('CPTitreMenu'));
llxHeader(array(),$langs->trans('CPTitreMenu'));
if ($action == 'request')
{
// Si l'utilisateur n'a pas le droit de faire une demande
if(!$user->rights->holiday->write)
{
print '<div class="tabBar">';
print $langs->trans('CantCreateCP');
print '</div>'."\n";
$errors[]=$langs->trans('CantCreateCP');
}
else
{
@ -586,39 +586,36 @@ if ($action == 'request')
print_fiche_titre($langs->trans('MenuAddCP'));
// Si il y a une erreur
if(isset($_GET['error'])) {
if (GETPOST('error')) {
switch($_GET['error']) {
switch(GETPOST('error')) {
case 'datefin' :
$msg = $langs->trans('ErrorEndDateCP');
$errors[] = $langs->trans('ErrorEndDateCP');
break;
case 'SQL_Create' :
$msg = $langs->trans('ErrorSQLCreateCP').' <b>'.htmlentities($_GET['msg']).'</b>';
$errors[] = $langs->trans('ErrorSQLCreateCP').' <b>'.htmlentities($_GET['msg']).'</b>';
break;
case 'CantCreate' :
$msg = $langs->trans('CantCreateCP');
$errors[] = $langs->trans('CantCreateCP');
break;
case 'Valideur' :
$msg = $langs->trans('InvalidValidatorCP');
$errors[] = $langs->trans('InvalidValidatorCP');
break;
case 'nodatedebut' :
$msg = $langs->trans('NoDateDebut');
$errors[] = $langs->trans('NoDateDebut');
break;
case 'nodatedebut' :
$msg = $langs->trans('NoDateFin');
$errors[] = $langs->trans('NoDateFin');
break;
case 'DureeHoliday' :
$msg = $langs->trans('ErrorDureeCP');
$errors[] = $langs->trans('ErrorDureeCP');
break;
case 'alreadyCP' :
$msg = $langs->trans('alreadyCPexist');
$errors[] = $langs->trans('alreadyCPexist');
break;
}
print '<div class="tabBar">';
print $msg;
print '</div>'."\n";
dol_htmloutput_mesg('',$errors,'error');
}
$html = new Form($db);
@ -680,8 +677,8 @@ if ($action == 'request')
if(!isset($_GET['datep'])) {
$html->select_date($nextMonth,'date_debut_');
} else {
$date = substr($_GET['datep'],0,4)."-".substr($_GET['datep'],4,2)."-".substr($_GET['datep'],6,2);
$html->select_date($date,'date_debut_');
$tmpdate = dol_mktime(0, 0, 0, GETPOST('datepmonth'), GETPOST('datepday'), GETPOST('datepyear'));
$html->select_date($tmpdate,'date_debut_');
}
print '</td>';
print '</tr>';
@ -692,8 +689,8 @@ if ($action == 'request')
if(!isset($_GET['datep'])) {
$html->select_date($nextMonth,'date_fin_');
} else {
$date = substr($_GET['datef'],0,4)."-".substr($_GET['datef'],4,2)."-".substr($_GET['datef'],6,2);
$html->select_date($date,'date_fin_');
$tmpdate = dol_mktime(0, 0, 0, GETPOST('datefmonth'), GETPOST('datefday'), GETPOST('datefyear'));
$html->select_date($tmpdate,'date_fin_');
}
print '</td>';
print '</tr>';
@ -703,10 +700,10 @@ if ($action == 'request')
$idGroupValid = $cp->getConfCP('userGroup');
$validator = new UserGroup($db,$idGroupValid);
$valideur = $validator->listUsersForGroup();
$valideurarray = $validator->listUsersForGroup();
print '<td>';
$html->select_users('',"valideur",1,"",0,$valideur,'');
print $html->select_dolusers($valideur,"valideur",1,"",0,$valideurarray,'');
print '</td>';
print '</tr>';
print '<tr>';
@ -758,42 +755,39 @@ elseif(isset($_GET['id']))
//print_fiche_titre($langs->trans('TitreRequestCP'));
// Si il y a une erreur
if(isset($_GET['error'])) {
if (GETPOST('error')) {
switch($_GET['error']) {
switch(GETPOST('error')) {
case 'datefin' :
$msg = $langs->trans('ErrorEndDateCP');
$errors[] = $langs->trans('ErrorEndDateCP');
break;
case 'SQL_Create' :
$msg = $langs->trans('ErrorSQLCreateCP').' <b>'.htmlentities($_GET['msg']).'</b>';
$errors[] = $langs->trans('ErrorSQLCreateCP').' <b>'.htmlentities($_GET['msg']).'</b>';
break;
case 'CantCreate' :
$msg = $langs->trans('CantCreateCP');
$errors[] = $langs->trans('CantCreateCP');
break;
case 'Valideur' :
$msg = $langs->trans('InvalidValidatorCP');
$errors[] = $langs->trans('InvalidValidatorCP');
break;
case 'nodatedebut' :
$msg = $langs->trans('NoDateDebut');
$errors[] = $langs->trans('NoDateDebut');
break;
case 'nodatedebut' :
$msg = $langs->trans('NoDateFin');
$errors[] = $langs->trans('NoDateFin');
break;
case 'DureeHoliday' :
$msg = $langs->trans('ErrorDureeCP');
$errors[] = $langs->trans('ErrorDureeCP');
break;
case 'NoMotifRefuse' :
$msg = $langs->trans('NoMotifRefuseCP');
$errors[] = $langs->trans('NoMotifRefuseCP');
break;
case 'mail' :
$msg = $langs->trans('ErrorMailNotSend').'<br /><b>'.$_GET['error_content'].'</b>';
$errors[] = $langs->trans('ErrorMailNotSend').'<br /><b>'.$_GET['error_content'].'</b>';
break;
}
print '<div class="tabBar">';
print $msg;
print '</div>';
dol_htmloutput_mesg('',$errors,'error');
}
// On vérifie si l'utilisateur à le droit de lire cette demande
@ -810,7 +804,7 @@ elseif(isset($_GET['id']))
}
// Si envoi en validation
if($_GET['action'] == 'sendToValidate' && $cp->statut == 1 && $userID == $cp->fk_user) {
if ($action == 'sendToValidate' && $cp->statut == 1 && $userID == $cp->fk_user) {
$html = new Form($db);
$ret=$html->form_confirm("fiche.php?id=".$_GET['id'],$langs->trans("TitleToValidCP"),$langs->trans("ConfirmToValidCP"),"confirm_send", '', 0, 1);
@ -818,7 +812,7 @@ elseif(isset($_GET['id']))
}
// Si validation de la demande
if($_GET['action'] == 'valid' && $cp->statut == 2 && $userID == $cp->fk_validator) {
if ($action == 'valid' && $cp->statut == 2 && $userID == $cp->fk_validator) {
$html = new Form($db);
$ret=$html->form_confirm("fiche.php?id=".$_GET['id'],$langs->trans("TitleValidCP"),$langs->trans("ConfirmValidCP"),"confirm_valid", '', 0, 1);
@ -826,7 +820,7 @@ elseif(isset($_GET['id']))
}
// Si refus de la demande
if($_GET['action'] == 'refuse' && $cp->statut == 2 && $userID == $cp->fk_validator) {
if ($action == 'refuse' && $cp->statut == 2 && $userID == $cp->fk_validator) {
$html = new Form($db);
$array_input = array(array('type'=>"text",'label'=>"Entrez ci-dessous un motif de refus :",'name'=>"detail_refuse",'size'=>"50",'value'=>""));
@ -835,7 +829,7 @@ elseif(isset($_GET['id']))
}
// Si annulation de la demande
if($_GET['action'] == 'cancel' && $cp->statut == 2 && $userID == $cp->fk_validator) {
if ($action == 'cancel' && $cp->statut == 2 && $userID == $cp->fk_validator) {
$html = new Form($db);
$ret=$html->form_confirm("fiche.php?id=".$_GET['id'],$langs->trans("TitleCancelCP"),$langs->trans("ConfirmCancelCP"),"confirm_cancel", '', 0, 1);
@ -870,7 +864,7 @@ elseif(isset($_GET['id']))
if(!$edit) {
print '<tr>';
print '<td>'.$langs->trans('DateDebCP').'</td>';
print '<td>'.date('d-m-Y', strtotime($cp->date_debut)).'</td>';
print '<td>'.dol_print_date($cp->date_debut,'day').'</td>';
print '</tr>';
} else {
print '<tr>';
@ -884,7 +878,7 @@ elseif(isset($_GET['id']))
if(!$edit) {
print '<tr>';
print '<td>'.$langs->trans('DateFinCP').'</td>';
print '<td>'.date('d-m-Y', strtotime($cp->date_fin)).'</td>';
print '<td>'.dol_print_date($cp->date_fin,'day').'</td>';
print '</tr>';
} else {
print '<tr>';

View File

@ -23,15 +23,39 @@
* \brief List of holiday.
*/
require('pre.inc.php');
require('../main.inc.php');
require_once(DOL_DOCUMENT_ROOT. "/core/class/html.form.class.php");
require_once(DOL_DOCUMENT_ROOT. "/core/class/html.formother.class.php");
require_once(DOL_DOCUMENT_ROOT. "/user/class/user.class.php");
require_once(DOL_DOCUMENT_ROOT. "/user/class/usergroup.class.php");
require_once(DOL_DOCUMENT_ROOT. "/holiday/common.inc.php");
// Protection if external user
if ($user->societe_id > 0) accessforbidden();
$sortfield = GETPOST("sortfield");
$sortorder = GETPOST("sortorder");
$page = GETPOST("page");
$page = is_numeric($page) ? $page : 0;
$page = $page == -1 ? 0 : $page;
if (! $sortfield) $sortfield="cp.rowid";
if (! $sortorder) $sortorder="DESC";
$offset = $conf->liste_limit * $page ;
$pageprev = $page - 1;
$pagenext = $page + 1;
$search_ref = GETPOST('search_ref');
$month_create = GETPOST('month_create');
$year_create = GETPOST('year_create');
$month_start = GETPOST('month_start');
$year_start = GETPOST('year_start');
$month_end = GETPOST('month_end');
$year_end = GETPOST('year_end');
$search_employe = GETPOST('search_employe');
$search_valideur = GETPOST('search_valideur');
$search_statut = GETPOST('select_statut');
/*
* Actions
@ -45,44 +69,12 @@ if ($user->societe_id > 0) accessforbidden();
* View
*/
llxHeader($langs->trans('CPTitreMenu'));
/*****************************************
* Tri du tableau
*****************************************/
$sortfield = isset($_GET["sortfield"])?$_GET["sortfield"]:$_POST["sortfield"];
$sortorder = isset($_GET["sortorder"])?$_GET["sortorder"]:$_POST["sortorder"];
$page = isset($_GET["page"])? $_GET["page"]:$_POST["page"];
$page = is_numeric($page) ? $page : 0;
$page = $page == -1 ? 0 : $page;
if (! $sortfield) $sortfield="cp.rowid";
if (! $sortorder) $sortorder="DESC";
$offset = $conf->liste_limit * $page ;
$pageprev = $page - 1;
$pagenext = $page + 1;
$order = " ORDER BY $sortfield $sortorder " . $db->plimit( $conf->liste_limit + 1 ,$offset);
/*************************************
* Filtres de recherche
*************************************/
$max_year = 5;
$min_year = 10;
$search_ref = $_GET['search_ref'];
$month_create = $_GET['month_create'];
$year_create = $_GET['year_create'];
$month_start = $_GET['month_start'];
$year_start = $_GET['year_start'];
$month_end = $_GET['month_end'];
$year_end = $_GET['year_end'];
$search_employe = $_GET['search_employe'];
$search_valideur = $_GET['search_valideur'];
$search_statut = $_GET['select_statut'];
llxHeader(array(),$langs->trans('CPTitreMenu'));
$order = $db->order($sortfield,$sortorder).$db->plimit($conf->liste_limit + 1, $offset);
// WHERE
if(!empty($search_ref)){
@ -219,7 +211,7 @@ print "</tr>\n";
// FILTRES
print '<tr class="liste_titre">';
print '<td class="liste_titre" align="left" width="50">';
print '<input class="flat" size="4" type="text" name="search_ref" value="'.$_GET['search_ref'].'">';
print '<input class="flat" size="4" type="text" name="search_ref" value="'.$search_ref.'">';
// DATE CREATE
print '<td class="liste_titre" colspan="1" align="center">';

View File

@ -24,10 +24,11 @@
* \author flegastelois@teclib.com <François Legastelois>
* \remarks Monthly report of paid holiday.
*/
require('pre.inc.php');
require('../main.inc.php');
require_once(DOL_DOCUMENT_ROOT.'/user/class/user.class.php');
require_once(DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php');
require_once(DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php');
require_once(DOL_DOCUMENT_ROOT. "/holiday/common.inc.php");
// Protection if external user
if ($user->societe_id > 0) accessforbidden();
@ -46,7 +47,7 @@ $html = new Form($db);
$htmlother = new FormOther($db);
llxHeader($langs->trans('CPTitreMenu'));
llxHeader(array(),$langs->trans('CPTitreMenu'));
$cp = new Holiday($db);

View File

@ -1,112 +0,0 @@
<?php
/* Copyright (C) 2011 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2011 Dimitri Mouillard <dmouillard@teclib.com>
* Copyright (C) 2012 Regis Houssin <regis@dolibarr.fr>
*
* 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 2 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 <http://www.gnu.org/licenses/>.
*/
/**
* \file pre.inc.php
* \ingroup holiday
* \brief Load files and menus.
*/
$res=0;
if (! $res && file_exists("../main.inc.php")) $res=@include("../main.inc.php"); // For root directory
if (! $res && file_exists("../../main.inc.php")) $res=@include("../../main.inc.php"); // For "custom" directory
if (! $res && file_exists("../../../main.inc.php")) $res=@include("../../../main.inc.php");
if (! $res) die("Include of main fails");
dol_include_once("/holiday/class/holiday.class.php");
$langs->load("user");
$langs->load("other");
$langs->load("holiday");
if (empty($conf->holiday->enabled))
{
llxHeader('',$langs->trans('CPTitreMenu'));
print '<div class="tabBar">';
print '<span style="color: #FF0000;">'.$langs->trans('NotActiveModCP').'</span>';
print '</div>';
llxFooter();
exit();
}
$verifConf.= "SELECT value";
$verifConf.= " FROM ".MAIN_DB_PREFIX."holiday_config";
$verifConf.= " WHERE name = 'userGroup'";
$result = $db->query($verifConf);
$obj = $db->fetch_object($result);
if($obj->value == NULL)
{
llxHeader('',$langs->trans('CPTitreMenu'));
print '<div class="tabBar">';
print '<span style="color: #FF0000;">'.$langs->trans('NotConfigModCP').'</span>';
print '</div>';
llxFooter();
exit();
}
function llxHeader($title)
{
global $user, $conf, $langs;
top_htmlhead('',$title);
top_menu($head);
$menu = new Menu();
$menu->add("/holiday/index.php?mainmenu=holiday",$langs->trans("CPTitreMenu"));
if($user->rights->holiday->write) {
$menu->add("/holiday/fiche.php?mainmenu=holiday&action=request",$langs->trans("MenuAddCP"),2);
}
if($user->rights->holiday->define_holiday) {
$menu->add("/holiday/define_holiday.php?leftmenu=setup&mainmenu=holiday",$langs->trans("MenuConfCP"),2);
}
if($user->rights->holiday->view_log) {
$menu->add("/holiday/view_log.php?mainmenu=holiday",$langs->trans("MenuLogCP"),2);
}
if($user->rights->holiday->view_log) {
$menu->add("/holiday/month_report.php?mainmenu=holiday",$langs->trans("MenuReportMonth"),2);
}
if(in_array('employees', $conf->modules) && $user->rights->employees->module_access)
{
$menu->add("/employees/index.php",$langs->trans("Menu_Title_EMPLOYEE"));
$menu->add("/employees/index.php",$langs->trans("Menu_List_EMPLOYEE"),2);
$menu->add("/employees/fiche.php?action=create",$langs->trans("Menu_Add_EMPLOYEE"),2);
$menu->add("/employees/hire.php?action=create",$langs->trans("Menu_Add_HIRE"),2);
$menu->add("/employees/salary.php?action=create",$langs->trans("Menu_Add_SALARY"),2);
$menu->add("/employees/job.php?action=create",$langs->trans("Menu_Add_JOB"),2);
$menu->add("/employees/disease.php?action=create",$langs->trans("Menu_Add_DISEASE"),2);
$menu->add("/employees/month_report_disease.php",$langs->trans("Menu_Report_Disease"),2);
$menu->add("/employees/set_hire_type.php",$langs->trans("Menu_Set_Hire_type"),2);
if(!isset($_SESSION['employees_passphrase'])){
$menu->add("/employees/store_secure.php",$langs->trans("Menu_Store_Secure"),2);
}
}
left_menu($menu->liste);
}
?>

View File

@ -23,8 +23,9 @@
* \ingroup holiday
*/
require('pre.inc.php');
require('../main.inc.php');
require_once(DOL_DOCUMENT_ROOT. "/user/class/user.class.php");
require_once(DOL_DOCUMENT_ROOT. "/holiday/common.inc.php");
// Protection if external user
if ($user->societe_id > 0) accessforbidden();
@ -38,7 +39,7 @@ if(!$user->rights->holiday->view_log) accessforbidden();
* View
*/
llxHeader($langs->trans('CPTitreMenu'));
llxHeader(array(),$langs->trans('CPTitreMenu'));
$cp = new Holiday($db);