public function saveGroupMembers($idst, $members)
 {
     //validate parameters
     if ($idst <= 0) {
         return false;
     }
     if (is_numeric($members)) {
         $members = array($members);
     }
     if (!is_array($members)) {
         return false;
     }
     if (empty($members)) {
         return true;
     }
     //filter and validate members - group can't have hisself as member, members cannot be fncroles
     $fmodel = new FunctionalrolesAdm();
     $fncroles = $fmodel->getAllFunctionalRoles();
     if (!empty($fncroles)) {
         $members = array_diff($members, $fncroles);
     }
     //delete old members
     $res = $this->deleteGroupMembers($idst);
     if (!$res) {
         return false;
     }
     //write new members
     if (count($members) > 0) {
         $insert_list = array();
         foreach ($members as $member) {
             if (is_numeric($member) && $member > 0 && $member != $idst) {
                 $insert_list[] = '(' . (int) $idst . ', ' . (int) $member . ')';
             }
         }
         if (count($insert_list) > 0) {
             $query = "INSERT INTO %adm_group_members (idst, idstMember) VALUES " . implode(",", $insert_list);
             $res = $this->db->query($query);
         }
     }
     return $res;
 }