/**
  * Set Entitlement Enforcement - if entitelement is enabled \ disabled in this session
  * @param int $categoryId
  * @param int $kuser
  * @return bool
  */
 public static function initEntitlementEnforcement($partnerId = null, $enableEntit = null)
 {
     self::$initialized = true;
     if (is_null($partnerId)) {
         $partnerId = kCurrentContext::$partner_id ? kCurrentContext::$partner_id : kCurrentContext::$ks_partner_id;
     }
     if (is_null($partnerId)) {
         return;
     }
     $partner = PartnerPeer::retrieveByPK($partnerId);
     if (!$partner) {
         return;
     }
     if (!PermissionPeer::isValidForPartner(PermissionName::FEATURE_ENTITLEMENT, $partnerId)) {
         return;
     }
     $partnerDefaultEntitlementEnforcement = $partner->getDefaultEntitlementEnforcement();
     // default entitlement scope is true - enable.
     if (is_null($partnerDefaultEntitlementEnforcement)) {
         $partnerDefaultEntitlementEnforcement = true;
     }
     self::$entitlementEnforcement = $partnerDefaultEntitlementEnforcement;
     $ksString = kCurrentContext::$ks ? kCurrentContext::$ks : '';
     if ($ksString != '') {
         $ks = ks::fromSecureString($ksString);
         $enableEntitlement = $ks->getDisableEntitlement();
         if ($enableEntitlement) {
             self::$entitlementEnforcement = false;
         }
         $enableEntitlement = $ks->getEnableEntitlement();
         if ($enableEntitlement) {
             self::$entitlementEnforcement = true;
         }
     }
     if (!is_null($enableEntit)) {
         if ($enableEntit) {
             self::$entitlementEnforcement = true;
         } else {
             self::$entitlementEnforcement = false;
         }
     }
     if (self::$entitlementEnforcement) {
         KalturaCriterion::enableTag(KalturaCriterion::TAG_ENTITLEMENT_ENTRY);
         KalturaCriterion::enableTag(KalturaCriterion::TAG_ENTITLEMENT_CATEGORY);
     }
 }