if ($sBaseUrl) {
    $sBaseDir = parse_url($sBaseUrl, PHP_URL_PATH);
    if ($sBaseDir) {
        session_set_cookie_params(COOKIE_LIFETIME, $sBaseDir);
    } else {
        session_set_cookie_params(COOKIE_LIFETIME);
    }
    unset($sBaseDir);
}
unset($sBaseUrl);
session_start();
// Neue Sitzung erstellen
if (!$_SESSION['rpc_sid']) {
    // Am RP-System mit Gast-Token anmelden
    if (bbRpc::auth() === NULL) {
        if (Renderer::DEBUG) {
            Status::injectRPCMsgs();
            Renderer::assign('_msgs', Status::getMessages());
        }
        Renderer::renderFatal('Verbindung zum Shop-System konnte nicht hergestellt werden.');
    }
    // Vom RP verwendete Sitzungs-ID für nächste Seitenaufrufe speichern
    $_SESSION['rpc_sid'] = bbRpc::getSid();
    // Bestehende Sitzung wiederherstellen
} else {
    // RP-Sitzung wiederverwenden
    bbRpc::setSid($_SESSION['rpc_sid']);
}
// Werte der Sitzung speichern
// Nach diesem Aufruf steht das $_SESSION-Array dem Skript nicht mehr bereit
session_write_close();
 /**
  * Fehlermeldung zum Feld suchen 
  *
  * @param string $sFld        Name des Feldes
  * @param [string] $sParent   Schlüssel des übergeordneten Felds
  * @return string             Fehlermeldung des Felds
  */
 public static function getError($sFld, $sParent = null)
 {
     // Aufgetretene Fehlermeldungen cachen
     if (is_null(static::$msg_cache)) {
         static::$msg_cache = Status::getMessages();
     }
     // In Meldungen nach angegebenem Feld suchen
     foreach (static::$msg_cache as $msg) {
         if (is_null($sParent) && $msg['fld'] == $sFld && !array_key_exists('parent', $msg) || !is_null($sParent) && $msg['fld'] == $sFld && array_key_exists('parent', $msg) && $msg['parent'] == $sParent) {
             // Name des Felds aus Meldung entfernen und direkt zurückgeben
             return preg_replace(array('/(F|f)eld: \\$[a-zA-Z0-9_-]+/', '/\\$tab\\.[a-zA-Z0-9_-]+: /'), array('', ''), $msg['msg']);
         }
     }
     // Kein Fehler aufgetreten
     return '';
 }
 private static final function getResult($data = array())
 {
     Status::injectRPCMsgs();
     return array('messages' => Status::getMessages(), 'success' => !Status::hasErrors(), 'data' => $data);
 }