20        self::addPurpose(
$service, $purpose);
 
   21        self::addPreferred(
$service, $purpose, $preferred);
 
   28    protected static function addPurpose(
$service, $purpose)
 
   35            self::PURPOSE_PURPOSES_TABLE,
 
   37                'purpose_id'    =>      array(
'int',    
$ilDB->nextId(self::PURPOSE_PURPOSES_TABLE)),
 
   38                'service'               =>      array(
'text',   
$service),
 
   39                'purpose'               =>      array(
'text',   $purpose),
 
   49    protected static function addPreferred(
$service, $purpose, $preferred)
 
   55            self::PURPOSE_MAP_TABLE,
 
   57                'map_id'    => array(
'int', 
$ilDB->nextId(self::PURPOSE_MAP_TABLE)),
 
   58                'service'   => array(
'text', 
$service),
 
   59                'purpose'   => array(
'text', $purpose),
 
   60                'preferred' => array(
'text', $preferred),
 
   61                'selected'  => array(
'text', $preferred)
 
   75        $ilDB->manipulate(
"DELETE FROM " . self::PURPOSE_PURPOSES_TABLE .
 
   76            " WHERE service = " . 
$ilDB->quote(
$service, 
"txt") . 
" AND purpose = " . 
$ilDB->quote($purpose, 
"txt"));
 
   89        $ilDB->manipulate(
"DELETE FROM " . self::PURPOSE_MAP_TABLE .
 
   90            " WHERE service = " . 
$ilDB->quote(
$service, 
"txt") . 
" AND purpose = " . 
$ilDB->quote($purpose, 
"txt") .
 
   91            " AND preferred = " . 
$ilDB->quote($preferred, 
"txt"));
 
  104        $ilDB->manipulate(
"DELETE FROM " . self::PURPOSE_PURPOSES_TABLE . 
" WHERE service = " . 
$ilDB->quote(
$service, 
"txt"));
 
  118        $query = 
'SELECT count(*) num FROM ' . self::PURPOSE_PURPOSES_TABLE . 
' WHERE service = ' 
  119            . 
$ilDB->quote(
$service, 
'text') . 
' AND purpose = ' . 
$ilDB->quote($purpose, 
'text');
 
  122        if (
$row[
'num'] != 0) {
 
  138        $query = 
'SELECT purpose FROM ' . self::PURPOSE_PURPOSES_TABLE . 
' WHERE service = ' . 
$ilDB->quote(
$service, 
'text');
 
  142            $purposes[] = 
$row[
'purpose'];
 
  155        $query = 
'SELECT service FROM ' . self::PURPOSE_PURPOSES_TABLE . 
' GROUP BY service';
 
  159            $services[] = 
$row[
'service'];
 
  171        $query = 
'SELECT service, purpose FROM ' . self::PURPOSE_PURPOSES_TABLE . 
' GROUP BY service, purpose having count(*) > 1';
 
  174        if (is_array(
$row) && count(
$row) > 0) {
 
  184        $query = 
'SELECT service, purpose FROM ' . self::PURPOSE_PURPOSES_TABLE . 
' GROUP BY service, purpose having count(*) > 1';
 
  188            self::addPurpose(
$row[
'service'], 
$row[
'purpose']);
 
  191        $query = 
'SELECT service, purpose, preferred FROM ' . self::PURPOSE_MAP_TABLE . 
' GROUP BY service, purpose, preferred having count(*) > 1';
 
  196            self::addPreferred(
$row[
'service'], 
$row[
'purpose'], 
$row[
'preferred']);
 
  210        if (!self::isPurposeRegistered(
$service, $purpose)) {
 
  219    public static function registerRenderer($renderer, 
$path)
 
  226            self::RENDERER_TABLE,
 
  228                      'renderer_id'     =>      array(
'int',    
$ilDB->nextId(self::RENDERER_TABLE)),
 
  229                      'renderer'        =>      array(
'text',   $renderer),
 
  230                      'path'            =>      array(
'text',   
$path)
 
  240    public static function registerRendererAvailability($renderer, 
$service, $purpose)
 
  247            self::RENDERER_AVAIL_TABLE,
 
  249                      'availability_id' =>      array(
'int',    
$ilDB->nextId(self::RENDERER_AVAIL_TABLE)),
 
  250                      'service'                 =>      array(
'text',   
$service),
 
  251                      'purpose'                 =>      array(
'text',   $purpose),
 
  252                      'renderer'                =>      array(
'text',   $renderer)
 
An exception for terminatinating execution or to throw for unit testing.
static unregisterPurpose($service, $purpose)
static isPurposeRegistered($service, $purpose)
static unregisterPreferred($service, $purpose, $preferred)
static getPurposesByService($service)
static updateFromXML($service, $purpose, $preferred)
static registerPurpose($service, $purpose, $preferred)
static checkForMultipleServiceAndPurposeCombination()
static flushPurposes($service)
const RENDERER_AVAIL_TABLE
const PURPOSE_PURPOSES_TABLE