Commit e82af71b2c85bd95dcf3eb035cbb21f5c5522496
1 parent
048b4d77
Exists in
master
and in
111 other branches
catalog draft
Showing
3 changed files
with
81 additions
and
56 deletions
Show diff stats
php/classes/AmdaAction.php
@@ -1236,8 +1236,8 @@ class AmdaAction { | @@ -1236,8 +1236,8 @@ class AmdaAction { | ||
1236 | //AKKA - New action to clean user WS | 1236 | //AKKA - New action to clean user WS |
1237 | public function cleanUserWS() | 1237 | public function cleanUserWS() |
1238 | { | 1238 | { |
1239 | -// require_once(INTEGRATION_SRC_DIR."RequestManager.php"); | ||
1240 | -// return $this->executeRequest($obj, FunctionTypeEnumClass::PROCESSCLEAN); | 1239 | + require_once(INTEGRATION_SRC_DIR."RequestManager.php"); |
1240 | + return $this->executeRequest($obj, FunctionTypeEnumClass::PROCESSCLEAN); | ||
1241 | } | 1241 | } |
1242 | 1242 | ||
1243 | public function deleteSpecialInfo($name) | 1243 | public function deleteSpecialInfo($name) |
php/classes/CatalogCacheMgr.php
@@ -273,6 +273,31 @@ class CatalogCacheMgr extends TimeTableCacheMgr | @@ -273,6 +273,31 @@ class CatalogCacheMgr extends TimeTableCacheMgr | ||
273 | 'status' => $this->cache->getStatus(), 'parameters' => $paramHeaders); | 273 | 'status' => $this->cache->getStatus(), 'parameters' => $paramHeaders); |
274 | } | 274 | } |
275 | 275 | ||
276 | + public function initFromTT($id, $typeTT) { | ||
277 | + //Create new cache | ||
278 | + $this->cache = new CatalogeCacheObject(); | ||
279 | + | ||
280 | + //Load intervals from TT file and add to cache | ||
281 | + $intervals_res = $this->ttMgr->loadIntervalsFromTT($id,$typeTT); | ||
282 | + | ||
283 | + if (!$intervals_res['success']) | ||
284 | + return $intervals_res; | ||
285 | + | ||
286 | + foreach ($intervals_res['intervals'] as $interval) | ||
287 | + { | ||
288 | + //Add interval | ||
289 | + $this->cache->addInterval($interval['start'], $interval['stop']); | ||
290 | + } | ||
291 | + | ||
292 | + unset($intervals_res); | ||
293 | + | ||
294 | + //Update cache | ||
295 | + $this->cache->updateIndexes(); | ||
296 | + | ||
297 | + //Save cache file | ||
298 | + return array('success' => $this->saveToFile(), 'token' => $this->cache->getToken(), 'status' => $this->cache->getStatus()); | ||
299 | + } | ||
300 | + | ||
276 | 301 | ||
277 | protected function loadFromFile() { | 302 | protected function loadFromFile() { |
278 | 303 |
php/classes/CatalogMgr.php
@@ -109,60 +109,60 @@ class CatalogMgr extends TimeTableMgr { | @@ -109,60 +109,60 @@ class CatalogMgr extends TimeTableMgr { | ||
109 | } | 109 | } |
110 | 110 | ||
111 | 111 | ||
112 | -// public function loadIntervalsFromTT($id,$typeTT,$start = NULL, $limit = NULL) | ||
113 | -// { | ||
114 | -// | ||
115 | -// if ($typeTT == 'sharedtimeTable') { | ||
116 | -// $pathid = SHAREDPATH.'TT/'.$id; | ||
117 | -// } | ||
118 | -// else { | ||
119 | -// $pathid = USERTTDIR.$id; | ||
120 | -// } | ||
121 | -// | ||
122 | -// //load intervals from TT id | ||
123 | -// if (!file_exists($pathid.'.xml')) | ||
124 | -// return array('success' => false, 'message' => "Cannot find TT file ".$id); | ||
125 | -// | ||
126 | -// $this->objectDom -> load($pathid.'.xml'); | ||
127 | -// | ||
128 | -// if (!($objToGet = $this->objectDom->getElementById($id))) | ||
129 | -// return array('success' => false, 'message' => NO_SUCH_ID." ".$id); | ||
130 | -// | ||
131 | -// $xpath = new DOMXPath($this->objectDom); | ||
132 | -// $intervals = $xpath->query('//intervals'); | ||
133 | -// | ||
134 | -// $result = array(); | ||
135 | -// | ||
136 | -// if (!isset($start) || !isset($limit)) | ||
137 | -// { | ||
138 | -// foreach ($intervals as $interval) | ||
139 | -// { | ||
140 | -// $startTime = $interval->getElementsByTagName('start')->item(0)->nodeValue; | ||
141 | -// $stopTime = $interval->getElementsByTagName('stop')->item(0)->nodeValue; | ||
142 | -// array_push($result, array('start' => $startTime, 'stop' => $stopTime)); | ||
143 | -// } | ||
144 | -// } | ||
145 | -// else | ||
146 | -// { | ||
147 | -// for ($i = 0; $i < $limit; ++$i) | ||
148 | -// { | ||
149 | -// if ($start+$i >= $intervals->length) | ||
150 | -// break; | ||
151 | -// $startTime = $intervals->item($start+$i)->getElementsByTagName('start')->item(0)->nodeValue; | ||
152 | -// $stopTime = $intervals->item($start+$i)->getElementsByTagName('stop')->item(0)->nodeValue; | ||
153 | -// array_push($result, array('start' => $startTime, 'stop' => $stopTime)); | ||
154 | -// } | ||
155 | -// } | ||
156 | -// | ||
157 | -// return array( | ||
158 | -// 'totalCount' => $intervals->length, | ||
159 | -// 'intervals' => $result, | ||
160 | -// 'start' => isset($start) ? $start : 0, | ||
161 | -// 'limit' => isset($limit) ? $limit : 0, | ||
162 | -// 'success' => true | ||
163 | -// ); | ||
164 | -// | ||
165 | -// } | 112 | + public function loadIntervalsFromTT($id, $typeTT, $start = NULL, $limit = NULL) |
113 | + { | ||
114 | + | ||
115 | + if ($typeTT == 'sharedcatalog') { | ||
116 | + $pathid = SHAREDPATH.'TT/'.$id; | ||
117 | + } | ||
118 | + else { | ||
119 | + $pathid = USERTTDIR.$id; | ||
120 | + } | ||
121 | + | ||
122 | + //load intervals from TT id | ||
123 | + if (!file_exists($pathid.'.xml')) | ||
124 | + return array('success' => false, 'message' => "Cannot find Catalog file ".$id); | ||
125 | + | ||
126 | + $this->objectDom->load($pathid.'.xml'); | ||
127 | + | ||
128 | + if (!($objToGet = $this->objectDom->getElementById($id))) | ||
129 | + return array('success' => false, 'message' => NO_SUCH_ID." ".$id); | ||
130 | + | ||
131 | + $xpath = new DOMXPath($this->objectDom); | ||
132 | + $intervals = $xpath->query('//intervals'); | ||
133 | + | ||
134 | + $result = array(); | ||
135 | + | ||
136 | + if (!isset($start) || !isset($limit)) | ||
137 | + { | ||
138 | + foreach ($intervals as $interval) | ||
139 | + { | ||
140 | + $startTime = $interval->getElementsByTagName('start')->item(0)->nodeValue; | ||
141 | + $stopTime = $interval->getElementsByTagName('stop')->item(0)->nodeValue; | ||
142 | + array_push($result, array('start' => $startTime, 'stop' => $stopTime)); | ||
143 | + } | ||
144 | + } | ||
145 | + else | ||
146 | + { | ||
147 | + for ($i = 0; $i < $limit; ++$i) | ||
148 | + { | ||
149 | + if ($start+$i >= $intervals->length) | ||
150 | + break; | ||
151 | + $startTime = $intervals->item($start+$i)->getElementsByTagName('start')->item(0)->nodeValue; | ||
152 | + $stopTime = $intervals->item($start+$i)->getElementsByTagName('stop')->item(0)->nodeValue; | ||
153 | + array_push($result, array('start' => $startTime, 'stop' => $stopTime)); | ||
154 | + } | ||
155 | + } | ||
156 | + | ||
157 | + return array( | ||
158 | + 'totalCount' => $intervals->length, | ||
159 | + 'intervals' => $result, | ||
160 | + 'start' => isset($start) ? $start : 0, | ||
161 | + 'limit' => isset($limit) ? $limit : 0, | ||
162 | + 'success' => true | ||
163 | + ); | ||
164 | + | ||
165 | + } | ||
166 | 166 | ||
167 | /* | 167 | /* |
168 | * catalog header | 168 | * catalog header |