57                 $this->rule_id = $a_rule_id;
 
   63                 $this->rule_id = $a_id;
 
   73                 $this->role_id = $a_id;
 
   83                 $this->attribute_name = $a_name;
 
   93                 $this->attribute_value = $a_value;
 
  103                 $this->plugin_active = $a_status;
 
  113                 $this->add_on_update = $a_status;
 
  123                 $this->remove_on_update = $a_status;
 
  133                 $this->plugin_id = $a_id;
 
  147                         return $lng->txt(
'shib_plugin_id').
': '.$this->
getPluginId();
 
  185         public function delete()
 
  189                 $query = 
"DELETE FROM shib_role_assignment ".
 
  190                         "WHERE rule_id = ".$this->db->quote($this->
getRuleId() , 
'integer');
 
  191                 $ilDB->manipulate(
$query);
 
  199                 $next_id = $ilDB->nextId(
'shib_role_assignment');
 
  200                 $query = 
"INSERT INTO shib_role_assignment (rule_id,role_id,name,value,plugin,plugin_id,add_on_update,remove_on_update ) ".
 
  202                         $ilDB->quote($next_id,
'integer').
', '.
 
  203                         $this->db->quote($this->
getRoleId(),
'integer').
', '.
 
  204                         $this->db->quote($this->
getName(),
'text').
', '.
 
  205                         $this->db->quote($this->
getValue(),
'text').
', '.
 
  207                         $this->db->quote((
int) $this->
getPluginId(),
'integer').
', '.
 
  211                 $ilDB->manipulate(
$query);
 
  213                 $this->
setRuleId($this->db->getLastInsertId());
 
  221                 $query = 
"UPDATE shib_role_assignment ".
 
  222                         "SET role_id = ".$this->db->quote($this->
getRoleId(),
'integer').
', '.
 
  223                         "name = ".$this->db->quote($this->
getName(),
'text').
', '.
 
  224                         "value = ".$this->db->quote($this->
getValue(),
'text').
', '.
 
  225                         "plugin = ".$this->db->quote((
int) $this->
isPluginActive(),
'integer').
', '.
 
  226                         "plugin_id = ".$this->db->quote((
int) $this->
getPluginId(),
'integer').
', '.
 
  229                         "WHERE rule_id = ".$this->db->quote($this->
getRuleId(),
'integer');
 
  230                 $ilDB->manipulate(
$query);
 
  239                         include_once 
'./Services/AuthShibboleth/classes/class.ilShibbolethRoleAssignmentRules.php';
 
  243                 if(!isset($a_data[$this->
getName()]))
 
  248                 $values = $a_data[$this->
getName()];
 
  250                 if(is_array($values))
 
  252                         return in_array($this->
getValue(),$values);
 
  257                         #return $this->getValue() == $values; 
  263                 $pattern = str_replace(
'*',
'.*?', $a_str1);
 
  264                 $GLOBALS[
'ilLog']->write(__METHOD__.
': Replace pattern:'. $pattern.
' => '.$a_str2);
 
  265                 return (
bool) preg_match(
'/^'.$pattern.
'$/i',$a_str2);
 
  276                 $query = 
"SELECT * FROM shib_role_assignment ".
 
  277                         "WHERE rule_id = ".$this->db->quote($this->
getRuleId(),
'integer');