X-Git-Url: http://git.dj3c1t.com/?a=blobdiff_plain;f=app%2Fdata%2Fmodules%2Fsql%2Fsml_data_source_groupes.php;h=0ada4f02ab586cc1ffe43656e206cb2cee3c1770;hb=refs%2Ftags%2Fsourceml.1.1.0;hp=44dec362116c7ad173610f48d41ea7bbc8d70884;hpb=2802d2dbcb5a1ea3c269d6fb4df9fbfb0f13f93d;p=mw_sourceml diff --git a/app/data/modules/sql/sml_data_source_groupes.php b/app/data/modules/sql/sml_data_source_groupes.php index 44dec36..0ada4f0 100644 --- a/app/data/modules/sql/sml_data_source_groupes.php +++ b/app/data/modules/sql/sml_data_source_groupes.php @@ -96,6 +96,22 @@ return $sources; } + function source_has_groupe($id_source, $id_groupe){ + $sgbd = $this->sgbd(); + $HAS_THIS_GROUP = 0; + try{ + $sql = + "SELECT count(*) as n FROM #--sml_sources_authors" + ." WHERE id_source=".$this->eq($id_source) + ." AND id_author=".$this->eq($id_groupe); + $rst = $sgbd->query($sql); + if($v_rst = $sgbd->fetch_assoc($rst)) $HAS_THIS_GROUP = $v_rst["n"]; + $sgbd->free_result($rst); + } + catch(Exception $e) { $HAS_THIS_GROUP = false; } + return $HAS_THIS_GROUP; + } + function add_source_groupe($id_source, $id_groupe, $id_groupe_status) { $sgbd = $this->sgbd(); try{ @@ -137,10 +153,13 @@ return true; } - function del_source_groupe($id) - { $sgbd = $this->sgbd(); + function del_source_groupe($id_source, $id_author){ + $sgbd = $this->sgbd(); try{ - $sql = "DELETE FROM #--sml_sources_authors WHERE id=".$this->eq($id); + $sql = + "DELETE FROM #--sml_sources_authors" + ." WHERE id_source=".$this->eq($id_source) + ." AND id_author=".$this->eq($id_author); $sgbd->query($sql); } catch(Exception $e) { return false; } @@ -179,8 +198,8 @@ function get_editor_groupes($groupes){ $editor_groupes = array(); - if(is_array($groupes)) foreach($groupes as $source_groupe) - { if( + if(is_array($groupes)) foreach($groupes as $source_groupe){ + if( $source_groupe["id_groupe_status"] == $this->id_groupe_status_admin() || $source_groupe["id_groupe_status"] == $this->id_groupe_status_editeur() ){ @@ -215,6 +234,21 @@ return $permissions; } +// -------------------------------------------------------------------- + + function sources_invitations($groupes, $id_user){ + $groupes_in = ""; + foreach($groupes as $id_groupe => $groupe) $groupes_in .= ($groupes_in ? "," : "").$id_groupe; + return $this->list_sml_sources_invitations( + array( + "index_name" => "id", + "where"=> ($groupes_in ? "id_author IN(".$groupes_in.") OR " : "")."id_user=".$id_user, + "order_by" => "date_invitation", + "order" => "DESC" + ) + ); + } + } ?> \ No newline at end of file