Update LanguageOfCommentsSniff.php (#38731)
* Update LanguageOfCommentsSniff.php * Update actions_builddoc.inc.php * fix * Update LanguageOfCommentsSniff.php * Update LanguageOfCommentsSniff.php * exclude copyright lines * translate comments * translate comments * translate comments * fix CI * fix CI
This commit is contained in:
parent
da865dc945
commit
488637132f
13 changed files with 73 additions and 63 deletions
12
.github/workflows/phpstan.yml
vendored
12
.github/workflows/phpstan.yml
vendored
|
|
@ -63,8 +63,8 @@ jobs:
|
|||
phpstan-cache-${{ matrix.php-version }}-${{ github.base_ref }}-
|
||||
phpstan-cache-${{ matrix.php-version }}-
|
||||
|
||||
- name: Show debug into
|
||||
run: cd ./.github/tmp && ls -al
|
||||
- name: Show debug info
|
||||
run: ls -al ./.github/tmp || echo "Cache directory not found (first run)"
|
||||
|
||||
# Another method to get the list of changed files
|
||||
# It sets the variable steps.changed-php.outputs.all_changed_files for other steps
|
||||
|
|
@ -103,17 +103,17 @@ jobs:
|
|||
# shellcheck disable=2086
|
||||
if [ "${{ github.ref_name }}" == "develop" ] || [[ "${{ github.ref_name }}" == *.0 ]]|| [[ "${{ github.head_ref }}" == *"phpstan_full"* ]] ; then
|
||||
# Run phpstan on all files in integration branch
|
||||
phpstan -vvv analyse --error-format=checkstyle --memory-limit 7G -a dev/build/phpstan/bootstrap_action.php | tee _stan.xml | cs2pr --graceful-warnings
|
||||
phpstan analyse --no-progress --error-format=checkstyle --memory-limit 7G -a dev/build/phpstan/bootstrap_action.php | tee _stan.xml | cs2pr --graceful-warnings
|
||||
else
|
||||
PHP_FILES=$(echo "$ALL_CHANGED_FILES" | tr ' ' '\n' | grep -E '\.php$' || true)
|
||||
echo "PHP_FILES=$PHP_FILES"
|
||||
if [ -z "$PHP_FILES" ]; then
|
||||
echo "No PHP files to analyse. Skipping Phan."
|
||||
echo "No PHP files to analyse. Skipping PHPStan."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo phpstan -vvv analyse --error-format=checkstyle --memory-limit 7G -a dev/build/phpstan/bootstrap_action.php ${ALL_CHANGED_FILES} | tee _stan.xml | cs2pr --graceful-warnings
|
||||
phpstan -vvv analyse --error-format=checkstyle --memory-limit 7G -a dev/build/phpstan/bootstrap_action.php ${ALL_CHANGED_FILES} | tee _stan.xml | cs2pr --graceful-warnings
|
||||
echo phpstan analyse --no-progress --error-format=checkstyle --memory-limit 7G -a dev/build/phpstan/bootstrap_action.php ${ALL_CHANGED_FILES}
|
||||
phpstan analyse --no-progress --error-format=checkstyle --memory-limit 7G -a dev/build/phpstan/bootstrap_action.php ${ALL_CHANGED_FILES} | tee _stan.xml | cs2pr --graceful-warnings
|
||||
fi
|
||||
# continue-on-error: true
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<?php
|
||||
/* Copyright (C) 2025 Frédéric France <frederic.france@free.fr>
|
||||
/* Copyright (C) 2025-2026 Frédéric France <frederic.france@free.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
|
||||
|
|
@ -46,6 +46,8 @@ class LanguageOfCommentsSniff implements Sniff
|
|||
' entier ',
|
||||
// ' facture ', // avoid french name of dolibarr object
|
||||
' factures ',
|
||||
' fonction ',
|
||||
' formulaire ',
|
||||
' ligne ',
|
||||
' lignes ',
|
||||
' modèle ',
|
||||
|
|
@ -96,6 +98,12 @@ class LanguageOfCommentsSniff implements Sniff
|
|||
{
|
||||
$tokens = $phpcsFile->getTokens();
|
||||
$content = $tokens[$stackPtr]['content'];
|
||||
if (strpos($content, 'Copyright') === false && preg_match('/[àâäéèêëîïôùûüçœÀÂÄÉÈÊËÎÏÔÙÛÜÇŒ]/', $content)) {
|
||||
$error = "The comment appears to be in French (accent detected in: '%s'). Please write in English.";
|
||||
$data = [trim($content)];
|
||||
$phpcsFile->addWarning($error, $stackPtr, 'FrenchDetected', $data);
|
||||
return; // We stop at the first occurrence.
|
||||
}
|
||||
|
||||
// Basic cleanup (lowercase for comparison)
|
||||
$contentLower = strtolower($content);
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
* Copyright (C) 2012 J. Fernando Lagrange <fernando@demo-tic.org>
|
||||
* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
|
||||
* Copyright (C) 2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2026 Frédéric France <frederic.france@free.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
|
||||
|
|
@ -277,7 +277,7 @@ foreach ($tableau as $key => $const) { // Loop on each param
|
|||
print '<a href="'.dolBuildUrl(DOL_URL_ROOT.'/admin/mails_templates.php', ['action' => 'create', 'type_template' => $tmp[1], 'backtopage' => dolBuildUrl($_SERVER["PHP_SELF"])]).'">'.img_picto('', 'add').'</a>';
|
||||
} elseif (preg_match('/MAIL_FROM$/i', $const)) {
|
||||
print img_picto('', 'email', 'class="pictofixedwidth"').'<input type="text" class="flat minwidth300" name="constvalue_'.$const.'" value="'.dol_escape_htmltag($obj->value).'">';
|
||||
} else { // type = 'string' ou 'chaine'
|
||||
} else { // type = 'string' or 'chaine'
|
||||
print '<input type="text" class="flat minwidth300" name="constvalue_'.$const .'" value="'.dol_escape_htmltag($obj->value).'">';
|
||||
}
|
||||
print '</td>';
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
* Copyright (C) 2009-2017 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2014-2018 Alexandre Spangaro <alexandre@inovea-conseil.com>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2015-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2015-2026 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2015 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
|
||||
* Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2018-2019 Thibault FOUCART <support@ptibogxiv.net>
|
||||
|
|
@ -433,7 +433,7 @@ class Adherent extends CommonObject
|
|||
$this->public = 0;
|
||||
$this->ismultientitymanaged = 1;
|
||||
$this->isextrafieldmanaged = 1;
|
||||
// les champs optionnels sont vides
|
||||
// Optional fields are empty
|
||||
$this->array_options = array();
|
||||
|
||||
$this->fields['ref_ext']['visible'] = getDolGlobalInt('MAIN_LIST_SHOW_REF_EXT');
|
||||
|
|
|
|||
|
|
@ -129,10 +129,10 @@ if ($mode == 'memberbycountry') {
|
|||
//print $sql;
|
||||
} elseif ($mode == 'memberbyregion') {
|
||||
$label = $langs->trans("Country");
|
||||
$label2 = $langs->trans("Region"); //département
|
||||
$tab = 'statsregion'; //onglet
|
||||
$label2 = $langs->trans("Region"); // department
|
||||
$tab = 'statsregion'; // tab
|
||||
|
||||
$data = array(); //tableau de donnée
|
||||
$data = array(); // data array
|
||||
$sql = "SELECT COUNT(DISTINCT d.rowid) as nb, COUNT(s.rowid) as nbsubscriptions, MAX(d.datevalid) as lastdate, MAX(s.dateadh) as lastsubscriptiondate, co.code, co.label, r.nom as label2";
|
||||
$sql .= " FROM ".MAIN_DB_PREFIX."adherent as d";
|
||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_departements as c on d.state_id = c.rowid";
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2020 Tobias Sekan <tobias.sekan@startmail.com>
|
||||
* Copyright (C) 2020-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2020-2026 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2025 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
@ -151,7 +151,7 @@ if ($company->id) {
|
|||
}
|
||||
}
|
||||
|
||||
// Si adherent lie a un tiers non de type "particulier"
|
||||
// If the member is linked to a third party not of type "individual"
|
||||
if ($company->typent_code != 'TE_PRIVATE') {
|
||||
$v->setOrg($company->name);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,6 +50,8 @@
|
|||
* @var ?array<string,mixed> $moreparams
|
||||
*/
|
||||
'
|
||||
@phan-var-force int $id
|
||||
@phan-var-force int $permissiontoadd
|
||||
@phan-var-force ?array<string,mixed> $moreparams
|
||||
@phan-var-force CommonObject|Societe $object
|
||||
@phan-var-force int $id
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
* Copyright (C) 2017 Ferran Marcet <fmarcet@2byte.es>
|
||||
* Copyright (C) 2018-2024 Charlene Benke <charlene@patas-monkey.com>
|
||||
* Copyright (C) 2024-2026 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2026 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2026 Joachim Küter <git-jk@bloxera.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
@ -438,8 +438,8 @@ function dol_stringtotime($string, $gm = 1)
|
|||
// Convert date with format DD/MM/YYY HH:MM:SS. This part of code should not be used.
|
||||
if (preg_match('/^([0-9]+)\/([0-9]+)\/([0-9]+)\s?([0-9]+)?:?([0-9]+)?:?([0-9]+)?/i', $string, $reg)) {
|
||||
dol_syslog("dol_stringtotime call to function with deprecated parameter format", LOG_WARNING);
|
||||
// Date est au format 'DD/MM/YY' ou 'DD/MM/YY HH:MM:SS'
|
||||
// Date est au format 'DD/MM/YYYY' ou 'DD/MM/YYYY HH:MM:SS'
|
||||
// Date is in format 'DD/MM/YY' or 'DD/MM/YY HH:MM:SS'
|
||||
// Date is in format 'DD/MM/YYYY' or 'DD/MM/YYYY HH:MM:SS'
|
||||
$sday = (int) $reg[1];
|
||||
$smonth = (int) $reg[2];
|
||||
$syear = (int) $reg[3];
|
||||
|
|
@ -632,7 +632,7 @@ function dol_get_last_day($year, $month = 12, $gm = false)
|
|||
$month += 1;
|
||||
}
|
||||
|
||||
// On se deplace au debut du mois suivant, et on retire un jour
|
||||
// Move to the start of the next month, then subtract one day
|
||||
$datelim = dol_mktime(23, 59, 59, $month, 1, $year, $gm);
|
||||
$datelim -= (3600 * 24);
|
||||
|
||||
|
|
@ -909,7 +909,7 @@ function num_public_holiday($timestampStart, $timestampEnd, $countryCodeOrId = '
|
|||
}
|
||||
|
||||
if (in_array('ascension', $specialdayrule)) {
|
||||
// Calcul du jour de l'ascension (39 days after easter day)
|
||||
// Calculation of Ascension day (39 days after easter day)
|
||||
$date_paques = getGMTEasterDatetime($annee);
|
||||
$date_ascension = $date_paques + (3600 * 24 * 39);
|
||||
$jour_ascension = gmdate("d", $date_ascension);
|
||||
|
|
@ -1200,7 +1200,7 @@ function listPublicHoliday($timestampStart, $timestampEnd, $countryCodeOrId = ''
|
|||
}
|
||||
|
||||
if (in_array('ascension', $specialdayrule)) {
|
||||
// Calcul du jour de l'ascension (39 days after easter day)
|
||||
// Calculation of Ascension day (39 days after easter day)
|
||||
$date_paques = getGMTEasterDatetime($annee);
|
||||
$date_ascension = $date_paques + (3600 * 24 * 39);
|
||||
$jour_ascension = gmdate("d", $date_ascension);
|
||||
|
|
@ -1496,7 +1496,7 @@ function getFirstDayOfEachWeek($TWeek, $year)
|
|||
$TFirstDayOfWeek = array();
|
||||
foreach ($TWeek as $weekNb) {
|
||||
if (in_array('01', $TWeek) && in_array('52', $TWeek) && $weekNb == '01') {
|
||||
$year++; //Si on a la 1re semaine et la semaine 52 c'est qu'on change d'année
|
||||
$year++; // If we have both week 1 and week 52, it means we are changing year
|
||||
}
|
||||
$TFirstDayOfWeek[$weekNb] = date('d', strtotime($year.'W'.$weekNb));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -107,11 +107,11 @@ if ($resql) {
|
|||
while ($i < $num) {
|
||||
$obj = $db->fetch_object($resql);
|
||||
|
||||
// Le name de l'utilisateur
|
||||
// The name of the user
|
||||
$nombase = str_replace("°", "'", $obj->name);
|
||||
$input .= $nombase.';';
|
||||
|
||||
//affichage des resultats
|
||||
// Display results
|
||||
$ensemblereponses = $obj->reponses;
|
||||
for ($k = 0; $k < $nbcolonnes; $k++) {
|
||||
if (empty($somme[$k])) {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
/* Copyright (C) 2013-2020 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2014 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2018-2025 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2026 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2026 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
@ -83,7 +83,7 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) { // bo
|
|||
$nouveauchoix .= "1";
|
||||
} elseif (GETPOSTISSET("choix$i") && GETPOST("choix$i") == '2') {
|
||||
$nouveauchoix .= "2";
|
||||
} else { // else it's zéro
|
||||
} else { // else it's zero
|
||||
$nouveauchoix .= "0";
|
||||
}
|
||||
}
|
||||
|
|
@ -740,7 +740,7 @@ if ($object->format == "D") {
|
|||
// Displaying the months
|
||||
$colspan = 1;
|
||||
for ($i = 0; $i < $nbofsujet; $i++) {
|
||||
$cur = intval($toutsujet[$i]); // intval() est utilisé pour supprimer le suffixe @* qui déplaît logiquement à strftime()
|
||||
$cur = intval($toutsujet[$i]); // intval() is used to strip the @* suffix which naturally confuses strftime()
|
||||
|
||||
if (!isset($toutsujet[$i + 1])) {
|
||||
$next = false;
|
||||
|
|
@ -1123,7 +1123,7 @@ if ($nbofcheckbox >= 2) {
|
|||
print '</tr>'."\n";
|
||||
}
|
||||
|
||||
// S'il a oublié de remplir un nom
|
||||
// If they forgot to fill in a name
|
||||
if (GETPOSTISSET("boutonp") && GETPOST("nom") == "") {
|
||||
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Name")), null, 'errors');
|
||||
}
|
||||
|
|
@ -1136,7 +1136,7 @@ if (isset($erreur_ajout_date) && $erreur_ajout_date) {
|
|||
setEventMessages($langs->trans("ErrorWrongDate"), null, 'errors');
|
||||
}
|
||||
|
||||
//fin du tableau
|
||||
// End of table
|
||||
print '</table>'."\n";
|
||||
print '</div>'."\n";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
/* Copyright (C) 2013-2015 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2014 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2024-2026 MDW <mdeweerd@users.noreply.github.com>
|
||||
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2026 Frédéric France <frederic.france@free.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
|
||||
|
|
@ -87,7 +87,7 @@ if (GETPOSTISSET("confirmecreation")) {
|
|||
$toutchoix = substr($toutchoix, 1);
|
||||
$_SESSION["toutchoix"] = $toutchoix;
|
||||
|
||||
//test de remplissage des cases
|
||||
// Check that all fields are filled in
|
||||
$testremplissage = '';
|
||||
for ($i = 0; $i < $_SESSION["nbrecases"]; $i++) {
|
||||
if (isset($arrayofchoices[$i])) {
|
||||
|
|
@ -124,8 +124,8 @@ if (empty($_SESSION['title'])) {
|
|||
}
|
||||
|
||||
|
||||
//partie creation du sondage dans la base SQL
|
||||
//On prépare les données pour les inserer dans la base
|
||||
// Poll creation section in the SQL database
|
||||
// Prepare the data to insert into the database
|
||||
|
||||
print '<form name="formulaire" id="surveyform" action="'.$_SERVER["PHP_SELF"].'" method="POST">'."\n";
|
||||
print '<input type="hidden" name="token" value="'.newToken().'">';
|
||||
|
|
@ -139,7 +139,7 @@ print '<div>'."\n";
|
|||
|
||||
print '<table>'."\n";
|
||||
|
||||
//affichage des cases texte de formulaire
|
||||
// Display form text fields
|
||||
for ($i = 0; $i < $_SESSION["nbrecases"]; $i++) {
|
||||
$j = $i + 1;
|
||||
if (!isset($_SESSION["choix$i"])) {
|
||||
|
|
@ -154,7 +154,7 @@ for ($i = 0; $i < $_SESSION["nbrecases"]; $i++) {
|
|||
|
||||
print '</table>'."\n";
|
||||
|
||||
//ajout de cases supplementaires
|
||||
// Add extra fields
|
||||
print '<table><tr>'."\n";
|
||||
print '<td class="center">'.$langs->trans("5MoreChoices").'... ';
|
||||
if ($conf->use_javascript_ajax) {
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ if (GETPOST('confirmation')) {
|
|||
$errheure[$i][$j] = true;
|
||||
$erreur = true;
|
||||
}
|
||||
} elseif (preg_match(";^(\d{1,2})h(\d{0,2})$;i", $tmphorairesi[$j], $heures)) { //si c'est une heure encore plus simple type 8h
|
||||
} elseif (preg_match(";^(\d{1,2})h(\d{0,2})$;i", $tmphorairesi[$j], $heures)) { // if it is an even simpler time format like 8h
|
||||
// If the values are ok, add the data in the session variables
|
||||
if ($heures[1] < 24 && $heures[2] < 60) {
|
||||
$_SESSION["horaires$i"][$j] = $heures[0];
|
||||
|
|
@ -231,11 +231,11 @@ if (!isset($_SESSION["nbrecaseshoraires"])) {
|
|||
$_SESSION["nbrecaseshoraires"] = 5;
|
||||
} elseif ((GETPOST('ajoutcases') || GETPOST("ajoutcases_y")) && $_SESSION["nbrecaseshoraires"] == 5) {
|
||||
$_SESSION["nbrecaseshoraires"] = 10;
|
||||
//On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
//affichage des 5 cases horaires
|
||||
// Display the 5 time slots
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
$_SESSION["horaires$i"][$j] = $horairesi[$j];
|
||||
|
|
@ -277,11 +277,11 @@ if (issetAndNoEmpty('moisavant_x') || issetAndNoEmpty('moisavant')) {
|
|||
$_SESSION["mois"] -= 1;
|
||||
}
|
||||
|
||||
//On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
//affichage des 5 cases horaires
|
||||
// Display the 5 time slots
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
$_SESSION["horaires$i"][$j] = $horairesi[$j];
|
||||
|
|
@ -299,11 +299,11 @@ if (issetAndNoEmpty('moisapres_x') || issetAndNoEmpty('moisapres')) {
|
|||
$_SESSION["mois"] += 1;
|
||||
}
|
||||
|
||||
// On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
//affichage des 5 cases horaires
|
||||
// Display the 5 time slots
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
$_SESSION["horaires$i"][$j] = $horairesi[$j];
|
||||
|
|
@ -316,11 +316,11 @@ if (issetAndNoEmpty('moisapres_x') || issetAndNoEmpty('moisapres')) {
|
|||
if (issetAndNoEmpty('anneeavant_x') || issetAndNoEmpty('anneeavant')) {
|
||||
$_SESSION["annee"] -= 1;
|
||||
|
||||
//On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
//affichage des 5 cases horaires
|
||||
// Display the 5 time slots
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
$_SESSION["horaires$i"][$j] = $horairesi[$j];
|
||||
|
|
@ -333,11 +333,11 @@ if (issetAndNoEmpty('anneeavant_x') || issetAndNoEmpty('anneeavant')) {
|
|||
if (issetAndNoEmpty('anneeapres_x') || issetAndNoEmpty('anneeapres')) {
|
||||
$_SESSION["annee"] += 1;
|
||||
|
||||
//On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
//affichage des 5 cases horaires
|
||||
// Display the 5 time slots
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
$_SESSION["horaires$i"][$j] = $horairesi[$j];
|
||||
|
|
@ -421,7 +421,7 @@ if (issetAndNoEmpty('choixjourajout')) {
|
|||
$_SESSION["totalchoixjour"] = array();
|
||||
}
|
||||
|
||||
// Test pour éviter les doublons dans la variable qui contient toutes les dates
|
||||
// Check to avoid duplicates in the variable holding all dates
|
||||
$journeuf = true;
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) === true && issetAndNoEmpty('choixjourajout') === true) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
|
|
@ -440,7 +440,7 @@ if (issetAndNoEmpty('choixjourajout')) {
|
|||
sort($_SESSION["totalchoixjour"]);
|
||||
$cle = array_search(dol_mktime(0, 0, 0, $_SESSION["mois"], (int) $choixjourajout[0], $_SESSION["annee"]), $_SESSION["totalchoixjour"]);
|
||||
|
||||
//On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
for ($i = 0; $i < $cle; $i++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
|
|
@ -465,12 +465,12 @@ if (issetAndNoEmpty('choixjourajout')) {
|
|||
}
|
||||
}
|
||||
|
||||
//retrait d'une entrée dans la variable de session qui contient toutes les dates
|
||||
// Remove an entry from the session variable holding all dates
|
||||
if (issetAndNoEmpty('choixjourretrait')) {
|
||||
//On sauvegarde les heures deja entrées
|
||||
// Save the already entered hours
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
//affichage des 5 cases horaires
|
||||
// Display the 5 time slots
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
$horairesi = GETPOST("horaires".$i);
|
||||
$_SESSION["horaires$i"][$j] = $horairesi[$j];
|
||||
|
|
@ -490,7 +490,7 @@ if (issetAndNoEmpty('choixjourretrait')) {
|
|||
}
|
||||
}
|
||||
|
||||
//report des horaires dans toutes les cases
|
||||
// Copy hours to all time slots
|
||||
if (issetAndNoEmpty('reporterhoraires')) {
|
||||
$_SESSION["horaires0"] = GETPOST("horaires0");
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
|
|
@ -500,7 +500,7 @@ if (issetAndNoEmpty('reporterhoraires')) {
|
|||
}
|
||||
}
|
||||
|
||||
//effacer les horaires dans toutes les cases
|
||||
// Clear hours from all time slots
|
||||
if (issetAndNoEmpty('resethoraires')) {
|
||||
$nbofchoice = count($_SESSION["totalchoixjour"]);
|
||||
for ($i = 0; $i < $nbofchoice; $i++) {
|
||||
|
|
@ -508,7 +508,7 @@ if (issetAndNoEmpty('resethoraires')) {
|
|||
}
|
||||
}
|
||||
|
||||
// affichage du calendrier
|
||||
// Display the calendar
|
||||
print '<tr>'."\n";
|
||||
|
||||
for ($i = 0; $i < $nbrejourmois + $premierjourmois; $i++) {
|
||||
|
|
@ -548,16 +548,16 @@ for ($i = 0; $i < $nbrejourmois + $premierjourmois; $i++) {
|
|||
}
|
||||
}
|
||||
|
||||
//fin du tableau
|
||||
// End of table
|
||||
print '</tr>'."\n";
|
||||
print '</table>'."\n";
|
||||
print '</div></div>'."\n";
|
||||
|
||||
print '<div class="bodydate"><div class="center">'."\n";
|
||||
|
||||
// affichage de tous les jours choisis
|
||||
// Display all selected days
|
||||
if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) {
|
||||
//affichage des jours
|
||||
// Display the days
|
||||
print '<br>'."\n";
|
||||
print '<div align="left">';
|
||||
print '<strong>'.$langs->trans("SelectedDays").':</strong>'."<br>\n";
|
||||
|
|
@ -609,7 +609,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) {
|
|||
print '<tr>'."\n";
|
||||
print '<td class="left">'.dol_print_date($_SESSION["totalchoixjour"][$i], 'daytext').' <span class="opacitymedium">('.dol_print_date($_SESSION["totalchoixjour"][$i], '%A').')</span></td>';
|
||||
|
||||
//affichage des cases d'horaires
|
||||
// Display the time slot fields
|
||||
for ($j = 0; $j < $_SESSION["nbrecaseshoraires"]; $j++) {
|
||||
if (isset($errheure[$i][$j]) /* && $errheure[$i][$j] */) {
|
||||
// When an error is found, the checkbox background is red
|
||||
|
|
@ -638,9 +638,9 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur) {
|
|||
print '</tr>'."\n";
|
||||
print '</table>'."\n";
|
||||
print '<a name="bas"></a>'."\n";
|
||||
//fin du formulaire et bandeau de pied
|
||||
// End of form and footer
|
||||
print '</form>'."\n";
|
||||
//bandeau de pied
|
||||
// Footer bar
|
||||
print '<br><br><br><br>'."\n";
|
||||
print '</div></div>'."\n";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
/* Copyright (C) 2013-2014 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2014 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2015-2016 Alexandre Spangaro <aspangaro@open-dsi.fr>
|
||||
* Copyright (C) 2018-2024 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2018-2026 Frédéric France <frederic.france@free.fr>
|
||||
* Copyright (C) 2024-2025 MDW <mdeweerd@users.noreply.github.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
|
|
@ -61,7 +61,7 @@ foreach ($session_var as $var) {
|
|||
}
|
||||
}
|
||||
|
||||
// On initialise également les autres variables
|
||||
// Also initialise the other variables
|
||||
$cocheplus = '';
|
||||
$cochemail = '';
|
||||
$champdatefin = 0;
|
||||
|
|
|
|||
Loading…
Reference in a new issue