private static function errorIfKsNotValid()
 {
     // if no ks in current context - no need to check anything
     if (!self::$ksString) {
         return;
     }
     $ksObj = null;
     $res = kSessionUtils::validateKSessionNoTicket(self::$ksPartnerId, self::$ksUserId, self::$ksString, $ksObj);
     if (0 >= $res) {
         switch ($res) {
             case ks::INVALID_STR:
                 KalturaLog::err('Invalid KS [' . self::$ksString . ']');
                 break;
             case ks::INVALID_PARTNER:
                 KalturaLog::err('Wrong partner [' . self::$ksPartnerId . '] actual partner [' . $ksObj->partner_id . ']');
                 break;
             case ks::INVALID_USER:
                 KalturaLog::err('Wrong user [' . self::$ksUserId . '] actual user [' . $ksObj->user . ']');
                 break;
             case ks::EXPIRED:
                 KalturaLog::err('KS Expired [' . date('Y-m-d H:i:s', $ksObj->valid_until) . ']');
                 break;
             case ks::LOGOUT:
                 KalturaLog::err('KS already logged out');
                 break;
             case ks::EXCEEDED_ACTIONS_LIMIT:
                 KalturaLog::err('KS exceeded number of actions limit');
                 break;
             case ks::EXCEEDED_RESTRICTED_IP:
                 KalturaLog::err('IP does not match KS restriction');
                 break;
         }
         throw new kCoreException("Invalid KS", kCoreException::INVALID_KS, ks::getErrorStr($res));
     }
 }
 private static function errorIfKsNotValid()
 {
     // if no ks in current context - no need to check anything
     if (!self::$ksString) {
         return;
     }
     $ksObj = null;
     $res = kSessionUtils::validateKSessionNoTicket(self::$ksPartnerId, self::$ksUserId, self::$ksString, $ksObj);
     if (0 >= $res) {
         switch ($res) {
             case ks::INVALID_STR:
                 KalturaLog::err('Invalid KS [' . self::$ksString . ']');
                 break;
             case ks::INVALID_PARTNER:
                 KalturaLog::err('Wrong partner [' . self::$ksPartnerId . '] actual partner [' . $ksObj->partner_id . ']');
                 break;
             case ks::INVALID_USER:
                 KalturaLog::err('Wrong user [' . self::$ksUserId . '] actual user [' . $ksObj->user . ']');
                 break;
             case ks::EXPIRED:
                 KalturaLog::err('KS Expired [' . date('Y-m-d H:i:s', $ksObj->valid_until) . ']');
                 break;
             case ks::LOGOUT:
                 KalturaLog::err('KS already logged out');
                 break;
         }
         throw new KalturaAPIException(APIErrors::INVALID_KS, self::$ksString, $res, ks::getErrorStr($res));
     }
 }