Example #1
0
 private function getRemoteCategoriesAsOptions($syncInfo, $parentId, $descending)
 {
     $controller = new Services_RemoteController($syncInfo['provider'], 'category');
     $categories = $controller->list_categories(array('parentId' => $parentId, 'descends' => $descending));
     $parts = array();
     foreach ($categories as $categ) {
         $parts[] = $categ['categId'] . '=' . $categ['name'];
     }
     return implode(',', $parts);
 }
Example #2
0
 private function getRemoteTranslations($syncInfo, $type, $remoteSource)
 {
     $controller = new Services_RemoteController($syncInfo['provider'], 'translation');
     $data = $controller->manage(array('type' => $type, 'source' => $remoteSource));
     $out = array();
     if ($data['translations']) {
         foreach ($data['translations'] as $translation) {
             if ($translation['objId'] != $remoteSource) {
                 $out[] = $translation['objId'];
             }
         }
     }
     return $out;
 }
Example #3
0
 function importRemoteField(array $info, array $syncInfo)
 {
     $groupIds = $this->getOption('groupIds', '');
     $groupIds = array_filter(explode('|', $groupIds));
     $groupIds = array_map('intval', $groupIds);
     $controller = new Services_RemoteController($syncInfo['provider'], 'user');
     $users = $controller->getResultLoader('list_users', array('groupIds' => $groupIds));
     $list = array();
     foreach ($users as $user) {
         $list[] = $user['login'];
     }
     if (count($list)) {
         $info['type'] = 'd';
         $info['options'] = implode(',', $list);
     } else {
         $info['type'] = 't';
         $info['options'] = '';
     }
     return $info;
 }
Example #4
0
 private function getRemoteItemLinks($syncInfo, $trackerId, $fieldId, $status)
 {
     $controller = new Services_RemoteController($syncInfo['provider'], 'tracker');
     $items = $controller->getResultLoader('list_items', array('trackerId' => $trackerId, 'status' => $status));
     $result = $controller->edit_field(array('trackerId' => $trackerId, 'fieldId' => $fieldId));
     $permName = $result['field']['permName'];
     if (empty($permName)) {
         return '';
     }
     $parts = array();
     foreach ($items as $item) {
         $parts[] = $item['itemId'] . '=' . $item['fields'][$permName];
     }
     return implode(',', $parts);
 }