Пример #1
0
 public static function install($data, &$fail, &$errno, &$error)
 {
     $res = array();
     if (!$fail) {
         // die /platform Befehle auslösen
         $list = Einstellungen::getLinks('postPlatform');
         $platform = Installation::PlattformZusammenstellen($data);
         $multiRequestHandle = new Request_MultiRequest();
         for ($i = 0; $i < count($list); $i++) {
             // inits all components
             $handler = Request_CreateRequest::createPost($list[$i]->getAddress() . '/platform', array(), Platform::encodePlatform($platform));
             $multiRequestHandle->addRequest($handler);
         }
         $answer = $multiRequestHandle->run();
         for ($i = 0; $i < count($list); $i++) {
             $url = $list[$i]->getTargetName();
             $result = $answer[$i];
             $res[$url] = array();
             if (isset($result['content']) && isset($result['status']) && $result['status'] === 201) {
                 $res[$url]['status'] = 201;
             } else {
                 $res[$url]['status'] = 409;
                 $fail = true;
                 if (isset($result['status'])) {
                     $errno = $result['status'];
                     $res[$url]['status'] = $result['status'];
                 }
             }
         }
     }
     return $res;
 }
 public static function cleanCourses($data, &$fail, &$errno, &$error)
 {
     $res = array();
     if (!$fail) {
         $cleanLinks = Einstellungen::getLinks('deleteClean');
         // alle Veranstaltungen abrufen
         $multiRequestHandle = new Request_MultiRequest();
         $handler = Request_CreateRequest::createGet($data['PL']['url'] . '/DB/DBCourse/course', array(), '');
         $multiRequestHandle->addRequest($handler);
         $result = $multiRequestHandle->run();
         if (isset($result[0]['content']) && isset($result[0]['status']) && $result[0]['status'] === 200) {
             // /course ausloesen
             $courses = Course::decodeCourse($result[0]['content']);
             if (!is_array($courses)) {
                 $courses = array($courses);
             }
             $offset = count($courses) - 50;
             // nur die letzten 50 Veranstaltungen werden bereinigt
             $offset = $offset < 0 ? 0 : $offset;
             $courses = array_slice($courses, $offset);
             foreach ($courses as $course) {
                 $multiRequestHandle = new Request_MultiRequest();
                 $answer = array();
                 for ($i = 0; $i < count($cleanLinks); $i++) {
                     // inits all components
                     $handler = Request_CreateRequest::createDelete($cleanLinks[$i]->getAddress() . '/clean/clean/course/' . $course->getId(), array(), '');
                     $multiRequestHandle->addRequest($handler);
                 }
                 $answer = $multiRequestHandle->run();
             }
             $res['status'] = 201;
         } else {
             $fail = true;
             $error = "GET /DB/DBCourse/course " . Language::Get('courses', 'operationFailed');
             if (isset($result[0]['status'])) {
                 $errno = $result[0]['status'];
             }
         }
     }
     return $res;
 }