Randonnée - Marche nordique
Balisage - Écocitoyenneté

Sorties avec inscription

 

 📚Comprendre les termes et définitions utilisés dans le programme 💡 

Les inscriptions ci-dessous se font exclusivement en ligne en cliquant sur "PRÉ-INSCRIPTION OBLIGATOIRE" (le lien sera activé à l'ouverture des inscriptions).

Les personnes en PO (non adhérentes) doivent obligatoirement régler en ligne la sortie afin que leur demande de réservation soit prise en compte.

$fileName, ), Log::ALL, array($loggerName) ); // Ajouter le message switch ( $level ) { case 'EMERGENCY': $level = Log::EMERGENCY; break; case 'ALERT': $level = Log::ALERT; break; case 'CRITICAL': $level = Log::CRITICAL; break; case 'ERROR': $level = Log::ERROR; break; case 'WARNING': $level = Log::WARNING; break; case 'NOTICE': $level = Log::NOTICE; break; case 'INFO': $level = Log::INFO; break; case 'DEBUG': $level = Log::DEBUG; break; default: $level = Log::INFO; } $appelant = CommunHelper::appelant(); Log::add( "[" . $appelant . "]-" . $message, $level, $loggerName); } #=================================================== # Contrôle la fréquence d'exécution d'un module Joomla via ses params. #=================================================== /** * @param string $nomModule Nom du module(sa position). * @param int $delai Durée entre deux exécutions. * @param string $unite uniteé de temps ('seconde', 'minute', 'heure', 'jour'). * * @return bool True si l'exécution est autorisée, False sinon. */ /**Exemple : use MonSite\Helpers\CommunHelper; $nbr=5;$delai=minute; if ( CommunHelper::peutExecuterModule('MOD-InscriptionAnimateur-moins-x-jours', $nbr, $delai) ) { echo "
Execution autorisée, cela fait plus de $nbr $delai (maj time) "; } else { echo "
Execution non autorisé , cela fait moins de $nbr $delai que le module s'est excuté "; } #Initialisation avec une heure pile exemple : 1747108800 ( Pour les nimateurs 1 fois par jour : 1747069200 12 mai à 19h GMT) GMT: Tuesday 13 May 2025 05:00:00 Your time zone: mardi 13 mai 2025 07:00:00 GMT+02:00 DST #site : https://www.epochconverter.com/ */ public static function peutExecuterModule($moduleNom, $delai = 1, $unite = 'heure') { // Conversion du délai en secondes $unites = [ 'minute' => 60, 'heure' => 3600, 'jour' => 86400, ]; if (!isset($unites[$unite])) { CommunHelper::ajoutLog("[CommunHelper::peutExecuterModule] Unité de temps invalide : $unite", "WARNING"); } $delaiEnSecondes = $delai * $unites[$unite]; $db = DatabaseHelper::getDb(); // Chercher le module dans la table modules $query = $db->getQuery(true) ->select('id, params') ->from('#__modules') ->where('position = ' . $db->quote($moduleNom)) ->where('published = 1') ->setLimit(1); $module = DatabaseHelper::selectOne($query); if (!$module) { CommunHelper::ajoutLog("[CommunHelper::peutExecuterModule] Erreur Position module $moduleNom introuvable", "WARNING"); } // Décoder les params $params = json_decode($module->params); $derniereExecution = isset($params->derniere_execution) ? (int) $params->derniere_execution : 0; #Heure actuelle en timestamp avec des secondes à 00 #$heureActuelle = time(); $date = new Date(); $date->setTime($date->format('H'), $date->format('i'), 0); $heureActuelle = $date->toUnix(); #Date stocker en timesatamp, conversion avec https://www.timestamp.fr/ ex: 1747048607 ==> 12/05/2025 13:16:47 if (($heureActuelle - $derniereExecution) < $delaiEnSecondes) { #Ce n'est pas le moment de l'executer return false; } else { // Mettre à jour la dernière exécution dans les params $params->derniere_execution = $heureActuelle; $paramsJson = json_encode($params); $query = $db->getQuery(true) ->update('#__modules') ->set('params = ' . $db->quote($paramsJson)) ->where('id = ' . (int) $module->id); $result = DatabaseHelper::execute($query, false); if ($result) { CommunHelper::ajoutLog("[CommunHelper::peutExecuterModule] Peut être executé $moduleNom : heureActuelle=$heureActuelle - derniereExecution=$derniereExecution) < delaiEnSecondes=$delaiEnSecondes", "INFO"); return true; } else { return false; } } } #=================================================== # Connaitre l'appelant #=================================================== /** * @return le chemin de l'appelant (peut-être ameliorer). */ /**Exemple : use MonSite\Helpers\CommunHelper; $appelant = CommunHelper::appelant() */ public static function appelant() { $db = DatabaseHelper::getDb(); $app = \Joomla\CMS\Factory::getApplication(); $option = $app->input->getCmd('option'); // com_content, com_users etc. $view = $app->input->getCmd('view'); // article, category etc. $id = $app->input->getInt('id'); // récupère l'id s'il existe $appelant = $app->getName() . "/" . $option . "/" . $view; // Si c'est un article, on récupère son titre if ($option === 'com_content' && $view === 'article' && $id) { $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__content')) ->where($db->quoteName('id') . ' = ' . (int) $id); $title = DatabaseHelper::selectOne($query, false); if ($title) { $appelant .= " / Article: " . $title; } } return $appelant; } /** * Redirige vers l'URL Joomla demandée * * @param string $url L'URL interne Joomla (ex: 'index.php?option=com_acym&ctrl=campaigns&task=campaigns') * @param boolean $useSEF true pour convertir en SEF via JRoute */ public static function redirectVers($url, $useSEF = true) { $app = Factory::getApplication(); // Génération de l'URL via JRoute si demandé $redirectUrl = $useSEF ? Route::_($url) : $url; // Redirection $app->redirect($redirectUrl); // Important : stoppe l'exécution après redirection $app->close(); } public static function direBonjour($nom) { return "Bonjour, $nom !"; } #=================================================== # Suis-je sur le site de prod ? (false/true) #=================================================== public static function isProductionSite(): bool { $host = $_SERVER['HTTP_HOST']; return $host === 'rando-plaisirs.fr'; } #=================================================== # Retourne le mois en français et en majuscules à partir d'une date #=================================================== /** * @param string $date Date au format 'Y-m-d' ou 'Y-m-d H:i:s' (ex : '2018-07-01' ou '2018-08-31 15:31:35') * @return string Mois en lettres capitales (ex: 'JANVIER') */ public static function getMoisFrancais($moisNum) { $intVal = (int) $moisNum; $moisFrancais = [ 1 => 'janvier', 2 => 'février', 3 => 'mars', 4 => 'avril', 5 => 'mai', 6 => 'juin', 7 => 'juillet', 8 => 'août', 9 => 'septembre', 10 => 'octobre', 11 => 'novembre', 12 => 'décembre' ]; return mb_strtoupper($moisFrancais[$intVal], 'UTF-8'); } }

 

La Toscane Tarnaise

Randonnee
Catégorie
Randonnée à date flexible
Date
mardi 17 octobre 07:30
Lieu
Lisle sur Tarn
Nombre de places
200
Places disponibles
181
Email
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
Dépt/Pays
81
1/ Longueur
30km
1/ Dénivelé
570m
1/ Niveau d'effort
IBP=97
1/ Niveau de technicité
1/ Niveau de risque
Repas
RTS
Dist. de Rville
60km
Départ de
Place Jean Jaurès à Rville
Transport
Covoiturage
Porte Ouverte (PO)
Non
Précisions
Randonnée Endurance
Informations
Belle randonnée entre vignes, petis bois et champs, parsemée de chapelles; 73% de sentiers;au km19 : point d'eau et possibilité de rejoindre le départ situé à environ 3km. A Lisle sur Tarn l'église et la place à couverts méritent la visite !
Animateur (Org.)
Jean Alain B. 06 88 94 02 21
Animateur
Jacques D. 06 82 95 26 38
Mardi. Rando de 30km dén 570m RTS. 60km de Rville. Randonnée Endurance INSCRIPTION OBLIGATOIRE à partir du 02/10 à 19h
 
 

  RP ADMIN LOGO

© 2024 Rando-Plaisirs

Qui sommes-nous? | Mentions légales | Connexion | Nous contacter

logo Ramonville   logo Toulouse   logo Pechbusque   logo Sicoval  logo helloasso logo CD31    logo Ministere sport   logo ffrp31