bonjour,

j'ai un module album qui contient des reportages photos.

J'ai des permissions et des credentials du plugin sfDoctrineGuardPlugin de type
album1edit
album1show

Je souhaiterais donc dans mon formulaire en Admin du module album afficher la liste des groupes et la liste des utilisateurs pour autoriser la consultation, car actuellement, je liste ceci par le module permission mais ce n'est pas pratique à l'ajout d'un album.

Il faudrait donc que je fasse la liaison entre le credential ou la permission et l'album, puis faire la liaison entre la permission et les groups/users.

J'ai donc ajouté dans mon generator.yml la ligne suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
      form:
        display:
                "Permissions and groups": [groups_list, users_list]
J'ai l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Widget "groups_list" does not exist.
Je sais comment créer ce widget sur l'exemple de sfGuardUserAdminForm.class.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
class sfGuardUserAdminForm extends BasesfGuardUserAdminForm
{
  /**
   * @see sfForm
   */
  public function configure()
  {
	$utilisateurForm = new UtilisateuradminForm($this->object->utilisateur);
	$this->embedForm('utilisateur', $utilisateurForm);
 
	$this->widgetSchema['is_active'] = new sfWidgetFormChoice(array('expanded' => true, 'choices'  => array( 1 => 'Yes', 0 => 'No')));
	$this->widgetSchema['is_active']->setDefault(1);
 
	$this->widgetSchema->setLabels(array(
		'is_active' => 'Active',
	));
 
	//Sert pour faire le orderby des permissions
	$choices = Doctrine::getTable('sfGuardPermission')
				->createQuery('a')
				->orderBy('a.name')
				->execute();
 
	$result = array();
 
	foreach($choices as $choice)
	{
		$result[$choice->getId()] = $choice;
	}
 
	$this->widgetSchema['permissions_list'] = new sfWidgetFormChoice(array('multiple' => true, 'choices' => $result));
	$this->widgetSchema['permissions_list']->validator = new sfValidatorChoice(array('multiple' => true, 'choices' => array_keys($result), 'required' => false));
 
	//Sert pour faire le orderby des groupes
	$choices = Doctrine::getTable('sfGuardGroup')
				->createQuery('a')
				->orderBy('a.name')
				->execute();
 
	$result = array();
 
	foreach($choices as $choice)
	{
		$result[$choice->getId()] = $choice;
	}
 
	$this->widgetSchema['groups_list'] = new sfWidgetFormChoice(array('multiple' => true, 'choices' => $result));
	$this->widgetSchema['groups_list']->validator = new sfValidatorChoice(array('multiple' => true, 'choices' => array_keys($result), 'required' => false));
  }
}
Si quelqu'un peut m'aiguiller sur la réalisation de la liaison entre album et permissions.

Merci.