/**
  * Adds an elevate configuration row, optionnally for a given language.
  *
  * @param string $queryString Query string for which elevate configuration is added
  * @param int $objectID Content object for which the elevate configuration is added
  * @param string $languageCode Language code for which the elevate configuration is added. Defaults to 'all languages'
  */
 public static function add($queryString, $objectID, $languageCode = self::WILDCARD)
 {
     $db = eZDB::instance();
     $queryString = $db->escapeString($queryString);
     if ($languageCode === self::WILDCARD) {
         self::purge($queryString, $objectID);
     } else {
         // trying to insert an elevate configuration row for a specific language, while one already exists for all languages.
         if (parent::fetchObject(self::definition(), null, array('contentobject_id' => $objectID, 'search_query' => $queryString, 'language_code' => self::WILDCARD))) {
             return null;
         }
     }
     $row = array('search_query' => $queryString, 'contentobject_id' => $objectID, 'language_code' => $languageCode);
     $conf = new eZFindElevateConfiguration($row);
     $conf->store();
     return $conf;
 }