[TikiWiki-commits] [Git][tikiwiki/tiki][29.x] [FIX] small fixes during index rebuild and tracker import: odbc pass...

"Victor Emanouilov \(@kroky\) via TikiWiki-cvs" <[email protected]>
Newsgroups gmane.comp.cms.tiki.cvs
Message-ID <693d7473d79bc_2a17f53453586@gitlab-sidekiq-low-urgency-cpu-bound-v2-64d4768b4d-xcxhm.mail>

Victor Emanouilov pushed to branch 29.x at Tiki Wiki CMS Groupware / Tiki


Commits:
80ff161b by Victor Emanouilov at 2025-12-13T16:12:56+02:00
[FIX] small fixes during index rebuild and tracker import: odbc pass connection when iterating, array_shift on a variable in GroupSelector, conditionally use url in auth client if available

- - - - -


3 changed files:

- lib/core/Tracker/Field/GroupSelector.php
- lib/core/Tracker/Tabular/ODBCManager.php
- lib/tikilib.php


Changes:

=====================================
lib/core/Tracker/Field/GroupSelector.php
=====================================
@@ -139,7 +139,8 @@ class Tracker_Field_GroupSelector extends \Tracker\Field\AbstractItemField imple
                 $group_info = $usersLib->get_group_info($groupId);
             }
             if ($group_info) {
-                $templatedGroup = array_shift($usersLib->get_included_container_groups($usersLib->get_user_default_group($user)));
+                $includedContainerGroups = $usersLib->get_included_container_groups($usersLib->get_user_default_group($user));
+                $templatedGroup = array_shift($includedContainerGroups);
                 if ($templatedGroup && $templatedGroup['id'] == $group_info['id']) {
                     $clientGroups = $usersLib->get_including_groups($templatedGroup['groupName']);
                     foreach (array_intersect(array_keys($userGroups), $clientGroups) as $userGroup) {


=====================================
lib/core/Tracker/Tabular/ODBCManager.php
=====================================
@@ -105,7 +105,7 @@ class ODBCManager
         }
         if ($rs) {
             while ($row = odbc_fetch_array($rs)) {
-                $row = $this->reverseMapFieldsFromConfig($row);
+                $row = $this->reverseMapFieldsFromConfig($row, $conn);
                 yield $row;
             }
         }
@@ -503,7 +503,7 @@ class ODBCManager
         return $row;
     }
 
-    private function reverseMapFieldsFromConfig(array $row): array
+    private function reverseMapFieldsFromConfig(array $row, $conn = null): array
     {
         $userslib = TikiLib::lib('user');
         if (! empty($this->config['value_mappings'])) {
@@ -513,7 +513,9 @@ class ODBCManager
                     continue;
                 }
                 if (isset($mapping['type']) && $mapping['type'] === 'user') {
-                    $conn = $this->getConnection();
+                    if (! $conn) {
+                        $conn = $this->getConnection();
+                    }
                     $rs = odbc_prepare($conn, "SELECT * FROM {$mapping['table']} WHERE \"{$mapping['valueField']}\" = ?");
                     if ($rs) {
                         odbc_execute($rs, [$row[$field]]);


=====================================
lib/tikilib.php
=====================================
@@ -369,9 +369,10 @@ class TikiLib extends TikiDb_Bridge
      */
     private function prepare_http_auth_header($client, $arguments)
     {
-        $url = $arguments['url'];
-
-        $client->setUri($this->urlencode_accent($url)); // Laminas\Http\Client seems to fail with accents in urls
+        if (isset($arguments['url'])) {
+            $url = $arguments['url'];
+            $client->setUri($this->urlencode_accent($url)); // Laminas\Http\Client seems to fail with accents in urls
+        }
         $client->setMethod(Laminas\Http\Request::METHOD_GET);
 
         $headers = $client->getRequest()->getHeaders();



View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/80ff161bc266e087fe32400254e63b4be47684d4

-- 
View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/80ff161bc266e087fe32400254e63b4be47684d4
You're receiving this email because of your account on gitlab.com.

_______________________________________________
TikiWiki-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tikiwiki-cvs
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.