Main menu

Forum


× Forum d'aide en Français

[RÉGLÉ] Champ "modified" de la table icagenda_events

  • fynhooft
  • Avatar di fynhooft Autore della discussione
  • Junior Member
  • Junior Member
Di più
10 Anni 7 Mesi fa - 10 Anni 7 Mesi fa #7400 da fynhooft
Bonjour,

Après enregistrements de quelques uns de mes évènements, j'ai constaté que le champ "modified" contenu dans la table icagenda_events n'est jamais actualisé !

Est-ce normal ?

Visitez mon site sur les tutoriels GIMP : www.gimpons.net
Ultima Modifica 10 Anni 7 Mesi fa da Lyr!C. Motivo: [RÉGLÉ]

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Lyr!C
  • Avatar di Lyr!C
  • Administrator
  • Administrator
  • Lead Developer
Di più
10 Anni 7 Mesi fa #7442 da Lyr!C
Effectivement!

J'ai bien mis ce champs "standard" joomla, mais je n'en ai pas encore fait une utilisation.
Par contre, c'est prévu, car je prévois aussi un système de notification programmée pour informer les utilisateurs des nouveaux évènements, d'un évènement modifié, etc...

Donc, oui cette donnée devra être enregistrée.

Je vais même veiller à le faire dès la prochaine mise à jour officielle!
;-)

En attendant cette mise à jour, vous pouvez modifier le fichier ROOT/administrator/components/com_icagenda/models/event.php

Et remplacer la fonction prepareTable() par celle-ci :
	protected function prepareTable( $table )
	{

		$date = JFactory::getDate();
		$user = JFactory::getUser();

		$table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);

		if (empty($table->id))
		{
			// Set the values
			$table->created = $date->toSql();

			// Set ordering to the last item if not set
			if (empty($table->ordering))
			{
				$db = JFactory::getDbo();
				$query = $db->getQuery(true)
					->select('MAX(ordering)')
					->from($db->quoteName('#__icagenda_events'));
				$db->setQuery($query);
				$max = $db->loadResult();

				$table->ordering = $max + 1;
			}
		}
		else
		{
			// Set the values
			$table->modified = $date->toSql();
			$table->modified_by = $user->get('id');
		}
	}

Ensuite, pour afficher ces champs dans l'édition d'un évènement, ajouter ceci au fichier ROOT/administrator/components/com_icagenda/views/event/tmpl/edit.php après la partie 'created' :
<div class="control-group">
								<div class="control-label">
									<?php echo $this->form->getLabel('modified'); ?>
								</div>
								<div class="controls">
									<?php echo $this->form->getInput('modified'); ?>
								</div>
							</div>
							<div class="control-group">
								<div class="control-label">
									<?php echo $this->form->getLabel('modified_by'); ?>
								</div>
								<div class="controls">
									<?php echo $this->form->getInput('modified_by'); ?>
								</div>
							</div>

Voilà, c'est fait :-)

Cyril

Latest version : iCagenda 3.9.8
We recommend every user to keep iCagenda updated.
Don't forget to have your Joomla!™ up-to-date!

Do you like iCagenda?
I would appreciate if you could take 5 minutes to post a review on JED (Joomla Extensions Directory) .

File allegato:

Si prega Accedi o Crea un account a partecipare alla conversazione.

Moderatori: Lyr!C
Tempo creazione pagina: 0.185 secondi

 

Follow Us

Create your Joomla templates with Template Creator CK

acymailing logo new