Updated all the contrib modules to their latest versions.
[yaffs-website] / web / modules / contrib / permissions_by_term / src / Service / AccessCheck.php
index e558f085ee29eab4bc3cc6feef17088dba845ce3..b5635d82730fc10a3df2f0967b3d27ede4a3112e 100644 (file)
@@ -44,7 +44,9 @@ class AccessCheck {
    *
    * @return array|bool
    */
-  public function canUserAccessByNodeId($nid, $uid = FALSE, $langcode = 'en') {
+  public function canUserAccessByNodeId($nid, $uid = FALSE, $langcode = '') {
+               $langcode = ($langcode === '') ? \Drupal::languageManager()->getCurrentLanguage()->getId() : $langcode;
+
     if (\Drupal::currentUser()->hasPermission('bypass node access')) {
       return TRUE;
     }
@@ -66,7 +68,7 @@ class AccessCheck {
     foreach ($terms as $term) {
       $termInfo = Term::load($term->tid);
 
-      if ($termInfo->get('langcode')->getLangcode() == $langcode) {
+      if ($termInfo instanceof Term && $termInfo->get('langcode')->getLangcode() == $langcode) {
         $access_allowed = $this->isAccessAllowedByDatabase($term->tid, $uid, $termInfo->get('langcode')->getLangcode());
         if (!$access_allowed) {
           if ($singleTermRestriction) {
@@ -90,7 +92,8 @@ class AccessCheck {
    * @param string   $langcode
    * @return bool
    */
-  public function isAccessAllowedByDatabase($tid, $uid = FALSE, $langcode = 'en') {
+  public function isAccessAllowedByDatabase($tid, $uid = FALSE, $langcode = '') {
+               $langcode = ($langcode === '') ? \Drupal::languageManager()->getCurrentLanguage()->getId() : $langcode;
 
     if ($uid === FALSE || (int) $uid === 0) {
       $user = \Drupal::currentUser();
@@ -172,7 +175,9 @@ class AccessCheck {
    *
    * @return bool
    */
-  public function isAnyPermissionSetForTerm($tid, $langcode = 'en') {
+  public function isAnyPermissionSetForTerm($tid, $langcode = '') {
+               $langcode = ($langcode === '') ? \Drupal::languageManager()->getCurrentLanguage()->getId() : $langcode;
+
     $iUserTableResults = intval($this->database->query("SELECT COUNT(1) FROM {permissions_by_term_user} WHERE tid = :tid AND langcode = :langcode",
       [':tid' => $tid, ':langcode' => $langcode])->fetchField());