groups parentship : translation and addition of parentship option in add_group form

skala
Noël Dieschburg 14 years ago
parent 1870ceaa31
commit 4a8ca39cfe
  1. 10
      main/admin/group_add.php
  2. 11
      main/admin/group_edit.php
  3. 47
      main/inc/lib/group_portal_manager.lib.php
  4. 4
      main/lang/english/admin.inc.php
  5. 3
      main/lang/french/admin.inc.php

@ -77,6 +77,13 @@ $form->addElement('file', 'picture', get_lang('AddPicture'));
$allowed_picture_types = array ('jpg', 'jpeg', 'png', 'gif');
$form->addRule('picture', get_lang('OnlyImagesAllowed').' ('.implode(',', $allowed_picture_types).')', 'filetype', $allowed_picture_types);
//Group Parentship
$groups = array();
$groups[0] = get_lang('NoParentship');
$groups = $groups + GroupPortalManager::get_groups_list($group_id);
$group_data['parent_group'] = GroupPortalManager::get_parent_group($group_id);
$form->addElement('select', 'parent_group', get_lang('GroupParentship'), $groups, array());
// Status
$status = array();
$status[GROUP_PERMISSION_OPEN] = get_lang('Open');
@ -106,8 +113,11 @@ if( $form->validate()) {
$url = $values['url'];
$status = intval($values['visibility']);
$picture = $_FILES['picture'];
$parent_group_id = intval($values['parent_group']);
$group_id = GroupPortalManager::add($name, $description, $url, $status);
GroupPortalManager::set_parent_group($group_id,$parent_group_id);
if (!empty($picture['name'])) {
$picture_uri = GroupPortalManager::update_group_picture($group_id, $_FILES['picture']['name'], $_FILES['picture']['tmp_name']);

@ -79,17 +79,18 @@ if (strlen($group_data['picture_uri']) > 0) {
$form->addElement('checkbox', 'delete_picture', '', get_lang('DelImage'));
}
// Status
$status = array();
//Group Parentship
$groups = array();
$groups = GroupPortalManager::get_groups_list($group_id);
$groups[0] = get_lang('NoParentship');
$group_data['parent_group'] = GroupPortalManager::get_parent_group($group_id);
$form->addElement('select', 'parent_group', get_lang('GroupParentship'), $groups, array());
// Status
$status = array();
$status[GROUP_PERMISSION_OPEN] = get_lang('Open');
$status[GROUP_PERMISSION_CLOSED] = get_lang('Closed');
$form->addElement('select', 'parent_group', get_lang('GroupParentship'), $groups, array());
$form->addElement('select', 'visibility', get_lang('GroupPermissions'), $status, array());
// Submit button

@ -209,6 +209,53 @@ class GroupPortalManager
return $arr['group_id'];
}
}
public static function get_subgroups($root, $level){
$t_group = Database::get_main_table(TABLE_MAIN_GROUP);
$t_rel_group = Database :: get_main_table(TABLE_MAIN_GROUP_REL_GROUP);
$select_part = "SELECT ";
$cond_part='';
for ($i=1; $i <= $level; $i++) {
$g_number=$i;
$rg_number=$i-1;
if ( $i == $level) {
$select_part .= "g$i.id as id_$i, g$i.name as name_$i ";
} else {
$select_part .="g$i.id as id_$i, g$i.name name_$i, ";
}
if ($i == 1){
$cond_part .= "FROM $t_group g1 JOIN $t_rel_group rg0 on g1.id = rg0.subgroup_id and rg0.group_id = $root ";
}else {
$cond_part .= "LEFT JOIN $t_rel_group rg$rg_number on g$rg_number.id = rg$rg_number.group_id ";
$cond_part .= "LEFT JOIN $t_group g$g_number on rg$rg_number.subgroup_id = g$g_number.id ";
}
}
$sql = $select_part.' '. $cond_part;
$res = Database::query($sql);
$toreturn = array();
while ($item = Database::fetch_assoc($res)) {
echo "<pre>";
print_r($item);
echo "</pre>";
foreach ($item as $key => $value ){
if ($key == 'id_1') {
$toreturn[$value]['name'] = $item['name_1'];
} else {
$temp = explode('_',$key);
echo "ppp : $index_key - $string_key ppp";
$index_key = $temp[1];
$string_key = $temp[0];
$previous_key = $string_key.'_'.$index_key-1;
if ( $string_key == 'id' && isset($item[$key]) ) {
echo $previous_key;
$toreturn[$item[$previous_key]]['hrms'][$index_key]['name'] = $item['name_'.$index_id];
}
}
}
}
return $toreturn;
}
/**
* Gets the tags from a given group

@ -1303,4 +1303,8 @@ $DRHPageAfterLoginTitle = "After login page for DRH";
$DRHPageAfterLoginComment = "Leave blank for chamilo default page after login.";
$SessionAdminPageAfterLoginTitle = "After login page for session admin";
$SessionAdminPageAfterLoginComment = "Leave blank for chamilo default page after login.";
$event_title = 'Events notifications manager';
$GroupParentship = 'Parent group';
$NoParentship = 'No parent group';
?>

@ -1281,5 +1281,6 @@ $DRHPageAfterLoginComment = "Laisser vide pour le comportement normal de chamilo
$SessionAdminPageAfterLoginTitle = "Page à montrer pour les adminsitrateurs de sessions une fois authentifiés";
$SessionAdminPageAfterLoginComment = "Laisser vide pour le comportement normal de chamilo.";
$events_title = 'Gestion des évenements';
$GroupParentship = 'Groupe parent';
$NoParentship = 'Aucun groupe parent';
?>

Loading…
Cancel
Save