original_string: public function addDatabaseReaderUser($login)
  	{
  		if (strlen($login) < 1) {
  			throw new InvalidArgumentException("Login can't be empty");
  		}
  		$sec = $this->getSecurity();
  		if (in_array($login, $sec->readers->names)) {
  			return true;
  		}
  		array_push($sec->readers->names, $login);
  		$back = $this->setSecurity($sec);
  		if (is_object($back) && property_exists($back, "ok") && $back->ok == true) {
  			return true;
  		}
  		return false;
  	}
code: public function addDatabaseReaderUser($login)
  	{
  		if (strlen($login) < 1) {
  			throw new InvalidArgumentException("Login can't be empty");
  		}
  		$sec = $this->getSecurity();
  		if (in_array($login, $sec->readers->names)) {
  			return true;
  		}
  		array_push($sec->readers->names, $login);
  		$back = $this->setSecurity($sec);
  		if (is_object($back) && property_exists($back, "ok") && $back->ok == true) {
  			return true;
  		}
  		return false;
  	}
code_tokens: public function addDatabaseReaderUser ( $ login ) { if ( strlen ( $ login ) < 1 ) { throw new InvalidArgumentException ( "Login can't be empty" ) ; } $ sec = $ this -> getSecurity ( ) ; if ( in_array ( $ login , $ sec -> readers -> names ) ) { return true ; } array_push ( $ sec -> readers -> names , $ login ) ; $ back = $ this -> setSecurity ( $ sec ) ; if ( is_object ( $ back ) && property_exists ( $ back , "ok" ) && $ back -> ok == true ) { return true ; } return false ; }
docstring: add a user to the list of readers for the current database
  
  @param string $login user login
  @return boolean true if the user has successfuly been added
  @throws InvalidArgumentException
docstring_tokens: add a user to the list of readers for the current database