public static function get_koala_object_for($steam_object, $type, $obj_type)
 {
     if (strpos($obj_type, "container_pyramiddiscussion") === 0) {
         return new koala_container_pyramiddiscussion($steam_object, new units_pyramiddiscussion(lms_steam::get_root_creator($steam_object)));
     }
     return FALSE;
 }
 protected function get_link_path_internal($top_object)
 {
     $koala_creator = koala_object::get_koala_object(lms_steam::get_root_creator($this->steam_object));
     $link_path = $koala_creator->get_link_path($top_object);
     $link_path[] = array("name" => $this->get_display_name(), "link" => $koala_creator->get_url() . "units/" . $this->get_id() . "/", "koala_obj" => $this, "obj" => $this->steam_object);
     return $link_path;
 }
 public static function get_koala_object_for($steam_object, $type, $obj_type)
 {
     if (strpos($obj_type, "container_pointlist") === 0 && strpos($obj_type, "container_pointlist_studinfo") !== 0) {
         return new koala_container_pointlist($steam_object, new units_pointlist(lms_steam::get_root_creator($steam_object)));
     }
     return FALSE;
 }
Пример #4
0
 public static function get_koala_object_for($steam_object, $type, $obj_type)
 {
     if (strpos($obj_type, "docextern_unit_koala") === 0) {
         return new koala_object_docextern($steam_object, new units_extern(lms_steam::get_root_creator($steam_object)));
     }
     return FALSE;
 }
 public static function get_koala_object_for($steam_object, $type, $obj_type)
 {
     if (strpos($obj_type, "container_routeplaner") === 0 || strpos($obj_type, "room_routeplaner") === 0) {
         return new koala_container_routeplaner($steam_object, new units_routeplaner(lms_steam::get_root_creator($steam_object)));
     }
     return FALSE;
 }
 public static function get_koala_object_for($steam_object, $type, $obj_type)
 {
     if ($obj_type === "container_homework_unit_koala") {
         return new koala_container_homework($steam_object, new units_homework(lms_steam::get_root_creator($steam_object)));
     }
     if ($type == CLASS_CONTAINER && !is_string($obj_type)) {
         $root_env = $steam_object->get_root_environment();
         $env = $steam_object->get_environment();
         if (!is_object($env) || !is_object($root_env) || $root_env->get_id() != $env->get_id()) {
             return FALSE;
         }
         // object is not directly in a workroom
         $root_creator = $root_env->get_creator();
         if (is_object($root_creator) && $root_creator->get_attribute(OBJ_TYPE) !== 'course_learners') {
             return FALSE;
         }
         // object is not in learners' workroom
         return new koala_container_homework($steam_object, new units_homework(lms_steam::get_root_creator($steam_object)));
     }
     return FALSE;
 }
 public static function get_koala_object_for($steam_object, $type, $obj_type)
 {
     if ($obj_type === "mediathing_unit_koala") {
         return new koala_object_mediathing($steam_object, new units_mediathing(lms_steam::get_root_creator($steam_object)));
     }
     return FALSE;
 }
Пример #8
0
 public function get_url()
 {
     return koala_object::get_koala_object(lms_steam::get_root_creator($this->steam_object))->get_url() . "units/" . $this->get_id() . "/";
 }
Пример #9
0
     $msg = gettext("Could not place '%OBJECT' into '%CONTAINER'.");
     $_SESSION["problem"] = str_replace(array("%OBJECT", "%CONTAINER"), array($koala_obj->get_display_name(), $koala_container->get_display_name()), $msg);
     header("Location: " . $_SERVER["HTTP_REFERER"]);
     exit;
 }
 $copy = steam_factory::create_copy($GLOBALS["STEAM"]->get_id(), $obj);
 if (!is_object($copy)) {
     $msg = gettext("Could not obtain a copy of '%OBJECT'.");
     $_SESSION["confirmation"] = str_replace(array("%OBJECT", "%CONTAINER"), array($koala_obj->get_display_name(), $koala_container->get_display_name()), $msg);
     header("Location: " . $_SERVER["HTTP_REFERER"]);
     exit;
 }
 if ($copy->move($container)) {
     $access = $koala_obj->get_access_scheme();
     if ($access) {
         $root_creator = lms_steam::get_root_creator($container);
         if (is_object($root_creator)) {
             $koala_creator = koala_object::get_koala_object($root_creator);
             if (is_object($koala_creator) && $koala_creator instanceof koala_group) {
                 $access_desc = $koala_obj->get_access_descriptions($root_creator);
                 if (isset($access_desc[$access]['members']) && isset($access_desc[$access]['steam'])) {
                     $koala_obj->set_access($access, $access_desc[$access]['members'], $access_desc[$access]['steam'], $koala_creator->get_members_group(), $koala_creator->get_staff_group(), $koala_creator->get_admins_group());
                 }
             }
         }
     }
     //TODO: change access permissions for the target/source:
     $msg = gettext("Obtained a copy of '%OBJECT' and placed it into '%CONTAINER'.");
     $_SESSION["confirmation"] = str_replace(array("%OBJECT", "%CONTAINER"), array($koala_obj->get_display_name(), $koala_container->get_display_name()), $msg);
     header("Location: " . $_SERVER["HTTP_REFERER"]);
     exit;