#1 2007-07-19 17:29:11

flop25
Équipe Piwigo
2006-07-06
6544

Droits non hérités !!

Bonjour !
J'ai un problème assez embêtant : g mis mes catégories litigieuses en privées et gérer les droits une première fois
Mais d'un coup, après l'ajout d'images autres que ces catégories, les droits des catégories mères ne se sont plus transmises au filles  Les filles sont privées mais les groupes ne s'héritent plus ; c'est normal ou avant c'était normal ?

Dernière modification par flop25 (2009-02-18 16:33:04)

Hors ligne

#2 2007-07-19 18:02:28

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: Droits non hérités !!

Doits / Droits

Mais ré-explique nous ton problème par un exemple.

Catégorie CPa, CPb,... ou CVa, CVb,...
Groupe GUa, GUb, ...
Image I1...

Tu fais quoi?


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#3 2007-07-19 18:19:04

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

Hum oui droits lol

ben j'ai

+-1
    +-1.1
    +-1.2
      +-1.2.1
      +-1.2.2
    +-1.3

La 1 est privée : les 1.x et 1.1.x le deviennent
Je mets pour 1 : "groupe 18 autorisé"
et là avant, j'avais "groupe 18 autorisé" pour les 1.x et 1.1.x Mais maintenant rien d'autorisé pour les 1.x et 1.1.x
d'où maintenant:

+-1-privé[groupe 18 autorisé]
    +-1.1-privé[pour_tous_interdit]
    +-1.2-privé[pour_tous_interdit]
      +-1.2.1-privé[pour_tous_interdit]
      +-1.2.2-privé[pour_tous_interdit]
    +-1.3-privé[pour_tous_interdit]

avant:
+-1-privé[groupe 18 autorisé]
    +-1.1-privé[groupe 18 autorisé]
    +-1.2-privé[groupe 18 autorisé]
      +-1.2.1-privé[groupe 18 autorisé]
      +-1.2.2-privé[groupe 18 autorisé]
    +-1.3-privé[groupe 18 autorisé]

Dernière modification par flop25 (2007-07-19 18:19:26)

Hors ligne

#4 2007-07-20 09:26:56

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

si il y a qqch à faire, à corriger.. dites-le car je n'ai pas envie de gérer manuellement plus de 100 catégories

ps : ce qu'il faudrait dans l'immédiat c'est un script php avec requête sql pour attribuer une autorisation automatiquement à touts les niveaux inférieurs d'une catégories précise Svp

Dernière modification par flop25 (2007-07-20 13:32:44)

Hors ligne

#5 2007-07-22 11:57:28

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: Droits non hérités !!

flop25 a écrit:

La 1 est privée : les 1.x et 1.1.x le deviennent
Je mets pour 1 : "groupe 18 autorisé"
et là avant, j'avais "groupe 18 autorisé" pour les 1.x et 1.1.x

Tu n'avais pas. Je viens de refaire le test en 1.6.2.
C'est d'autant plus certain que je te conseille de lire ceci:
http://forum.phpwebgallery.net/viewtopi … 109#p34109

marsue attend encore...
Ça sera peut-être en 1.8 va savoir.
8-)


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#6 2007-07-22 14:24:13

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

Je sens que je vais me tirer une balle !! Ouiins .....

J'ai ajouter une note au bug 352 qu'il avait ouvert, pour le réactualiser

Hors ligne

#7 2007-07-25 14:15:41

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

je reviens dessus !

Dans admin/cat_perm.php

il y a ceci :

else if (isset($_POST['grant_groups_submit'])
         and isset($_POST['grant_groups'])
         and count($_POST['grant_groups']) > 0)
{
  $query = '
SELECT id
  FROM '.CATEGORIES_TABLE.'
  WHERE id IN ('.implode(',', get_uppercat_ids(array($page['cat']))).')
  AND status = \'private\'
;';
  $private_uppercats = array_from_query($query, 'id');

  // We must not reinsert already existing lines in group_access table
  $granteds = array();
  foreach ($private_uppercats as $cat_id)
  {
    $granteds[$cat_id] = array();
  }
 
  $query = '
SELECT group_id, cat_id
  FROM '.GROUP_ACCESS_TABLE.'
  WHERE cat_id IN ('.implode(',', $private_uppercats).')
    AND group_id IN ('.implode(',', $_POST['grant_groups']).')
;';
  $result = pwg_query($query);
  while ($row = mysql_fetch_array($result))
  {
    array_push($granteds[$row['cat_id']], $row['group_id']);
  }

  $inserts = array();
 
  foreach ($private_uppercats as $cat_id)
  {
    $group_ids = array_diff($_POST['grant_groups'], $granteds[$cat_id]);
    foreach ($group_ids as $group_id)
    {
      array_push($inserts, array('group_id' => $group_id,
                                 'cat_id' => $cat_id));
    }
  }

  mass_inserts(GROUP_ACCESS_TABLE, array('group_id','cat_id'), $inserts);
}

elle est censée ajouter des droits par groupe : c'est cela ?

Donc on pourrait faire la même chose mais en remplaçant "get_uppercat_ids" par "get_subcat_ids" : comme ça les droits se transmettent "vers le bas" J'ai juste ? [çà m'a l'air trop simple]

Hors ligne

#8 2007-07-26 10:05:02

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

Houahou ! ça marche !!! j'ai testé en local !!

j'ai donc mis :

/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
  $query = '
SELECT id
  FROM '.CATEGORIES_TABLE.'
  WHERE id IN ('.implode(',', get_subcat_ids(array($page['cat']))).')
  AND status = \'private\'
;';
  $private_uppercats = array_from_query($query, 'id');

  // We must not reinsert already existing lines in group_access table
  $granteds = array();
  foreach ($private_uppercats as $cat_id)
  {
    $granteds[$cat_id] = array();
  }
 
  $query = '
SELECT group_id, cat_id
  FROM '.GROUP_ACCESS_TABLE.'
  WHERE cat_id IN ('.implode(',', $private_uppercats).')
    AND group_id IN ('.implode(',', $_POST['grant_groups']).')
;';
  $result = pwg_query($query);
  while ($row = mysql_fetch_array($result))
  {
    array_push($granteds[$row['cat_id']], $row['group_id']);
  }

  $inserts = array();
 
  foreach ($private_uppercats as $cat_id)
  {
    $group_ids = array_diff($_POST['grant_groups'], $granteds[$cat_id]);
    foreach ($group_ids as $group_id)
    {
      array_push($inserts, array('group_id' => $group_id,
                                 'cat_id' => $cat_id));
    }
  }

  mass_inserts(GROUP_ACCESS_TABLE, array('group_id','cat_id'), $inserts);

/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////


après le code précédent ! génial !! Je rajoute une note dans le bug 352

Hors ligne

#9 2007-07-26 10:12:01

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: Droits non hérités !!

Bien... (Ça aide d'avoir le Bac.)

8-)


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#10 2007-07-26 10:16:13

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

hé attend : mention bien à plus de 15 de moyenne tu t'adresses pas à n'importe qui ! héhé :D

Hors ligne

#11 2007-07-26 10:24:10

rub
Former Piwigo Team
Lille
2005-08-26
5239

Re: Droits non hérités !!

flop25 a écrit:

hé attend : mention bien à plus de 15 de moyenne tu t'adresses pas à n'importe qui ! héhé :D

Ouais, mais aujourd'hui le bac est donné comparé à celui qu'on a passé à l'époque? mdr!
Je plaisante...

Hors ligne

#12 2007-07-26 10:27:34

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

franchement : l'année dernière oui il était donné (cpe ..)
Mais cette année, il était à la fois dur, facile, et original !

Hors ligne

#13 2007-07-26 10:33:38

rub
Former Piwigo Team
Lille
2005-08-26
5239

Re: Droits non hérités !!

flop25 a écrit:

franchement : l'année dernière oui il était donné (cpe ..)

8-)

Hors ligne

#14 2007-07-26 10:45:51

Victor
Membre
Paris
2004-03-13
369

Re: Droits non hérités !!

flop25 a écrit:

franchement : l'année dernière oui il était donné (cpe ..)
Mais cette année, il était à la fois dur, facile, et original !

Un grand merci pour ta remarque de la part des bacheliers 2006 :p

Hors ligne

#15 2007-07-26 10:48:34

flop25
Équipe Piwigo
2006-07-06
6544

Re: Droits non hérités !!

Je suis désolé mais c'est la vérité ! J'ai vu les sujets et ce qu'on faisait dans l'année était plus difficile que ça ! (rien qu'à voir la physique-chimie) Attention moi je parle des S (comme supérieur ^^), les autres j'en sais rien

Hors ligne

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact