00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00034 include_once "class.ilObjectGUI.php";
00035
00036 class ilObjStyleSheetFolderGUI extends ilObjectGUI
00037 {
00042 function ilObjStyleSheetFolderGUI($a_data,$a_id,$a_call_by_reference,$a_prepare_output = true)
00043 {
00044 $this->type = "styf";
00045 $this->ilObjectGUI($a_data,$a_id,$a_call_by_reference,$a_prepare_output);
00046 }
00047
00052 function saveObject()
00053 {
00054 global $rbacadmin;
00055
00056
00057 $newObj = parent::saveObject();
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068 sendInfo($this->lng->txt("object_added"),true);
00069
00070 ilUtil::redirect($this->getReturnLocation("save",$this->ctrl->getLinkTarget($this,"")));
00071 }
00072
00076 function viewObject()
00077 {
00078 global $rbacsystem, $ilias;
00079
00080 if (!$rbacsystem->checkAccess("visible,read",$this->object->getRefId()))
00081 {
00082 $this->ilias->raiseError($this->lng->txt("permission_denied"),$this->ilias->error_obj->MESSAGE);
00083 }
00084
00085 include_once "./classes/class.ilTableGUI.php";
00086
00087
00088 $this->tpl->addBlockfile("ADM_CONTENT", "adm_content", "tpl.table.html");
00089
00090
00091 $this->tpl->addBlockfile("TBL_CONTENT", "tbl_content", "tpl.styf_row.html");
00092
00093 $num = 0;
00094
00095 $this->tpl->setVariable("FORMACTION", "adm_object.php?ref_id=".$this->ref_id."$obj_str&cmd=gateway");
00096
00097
00098 $tbl = new ilTableGUI();
00099
00100
00101 $tbl->setTitle($this->object->getTitle(),"icon_styf.gif",
00102 $this->lng->txt("obj_".$this->object->getType()));
00103
00104
00105
00106
00107 $header_names = array("", $this->lng->txt("title"),
00108 $this->lng->txt("purpose"));
00109 $tbl->setHeaderNames($header_names);
00110
00111 $header_params = array("ref_id" => $this->ref_id);
00112 $tbl->setHeaderVars(array("", "title", "purpose"), $header_params);
00113 $tbl->setColumnWidth(array("0%", "80%", "20%"));
00114
00115
00116 $tbl->setOrderColumn($_GET["sort_by"]);
00117 $tbl->setOrderDirection($_GET["sort_order"]);
00118 $tbl->setLimit($_GET["limit"]);
00119 $tbl->setOffset($_GET["offset"]);
00120
00121
00122 $style_entries = array();
00123 $styles = $this->object->getStyles();
00124 foreach($styles as $style)
00125 {
00126 $style_entries[$style["title"].":".$style["id"]]
00127 = $style;
00128 }
00129 ksort($style_entries);
00130
00131
00132 $tbl->setMaxCount(count($style_entries));
00133
00134 $this->tpl->setVariable("COLUMN_COUNTS", 3);
00135
00136
00137 $tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next"));
00138
00139 $this->showActions(true);
00140
00141 include_once ("classes/class.ilObjStyleSheet.php");
00142
00143 $fixed_style = $ilias->getSetting("fixed_content_style_id");
00144 $default_style = $ilias->getSetting("default_content_style_id");
00145
00146 foreach ($style_entries as $style)
00147 {
00148 $this->tpl->setCurrentBlock("style_row");
00149
00150
00151 $css_row = ($css_row == "tblrow2")
00152 ? "tblrow1"
00153 : "tblrow2";
00154
00155 $this->tpl->setVariable("CHECKBOX_ID", $style["id"]);
00156 $this->tpl->setVariable("TXT_TITLE", $style["title"]);
00157 $this->tpl->setVariable("TXT_DESC", ilObject::_lookupDescription($style["id"]));
00158 $this->tpl->setVariable("LINK_STYLE",
00159 "adm_object.php?ref_id=".$_GET["ref_id"].
00160 "&obj_id=".$style["id"]);
00161 $this->tpl->setVariable("ROWCOL", $css_row);
00162 if ($style["id"] == $fixed_style)
00163 {
00164 $this->tpl->setVariable("TXT_PURPOSE", $this->lng->txt("global_fixed"));
00165 }
00166 if ($style["id"] == $default_style)
00167 {
00168 $this->tpl->setVariable("TXT_PURPOSE", $this->lng->txt("global_default"));
00169 }
00170 $this->tpl->parseCurrentBlock();
00171
00172 $this->tpl->setCurrentBlock("tbl_content");
00173 $this->tpl->parseCurrentBlock();
00174
00175 }
00176
00177 if (count($style_entries) == 0)
00178 {
00179 $tbl->disable("header");
00180 $tbl->disable("footer");
00181
00182 $this->tpl->setCurrentBlock("text");
00183 $this->tpl->setVariable("TXT_CONTENT", $this->lng->txt("obj_not_found"));
00184 $this->tpl->parseCurrentBlock();
00185
00186 $this->tpl->setCurrentBlock("tbl_content");
00187 $this->tpl->parseCurrentBlock();
00188 }
00189
00190
00191
00192
00193 $tbl->render();
00194 }
00195
00201 function deleteStyleObject($a_error = false)
00202 {
00203 if (!isset($_POST["id"]))
00204 {
00205 $this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
00206 }
00207
00208
00209 $_SESSION["saved_post"] = $_POST["id"];
00210
00211 $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.confirm_deletion.html");
00212
00213 if(!$a_error)
00214 {
00215 sendInfo($this->lng->txt("info_delete_sure"));
00216 }
00217
00218 $this->tpl->setVariable("FORMACTION", $this->getFormAction("delete",
00219 "adm_object.php?ref_id=".$_GET["ref_id"]."&cmd=gateway"));
00220
00221
00222 $this->tpl->setCurrentBlock("table_header");
00223 $this->tpl->setVariable("TEXT", $this->lng->txt("objects"));
00224 $this->tpl->parseCurrentBlock();
00225
00226
00227
00228
00229 $counter = 0;
00230
00231 foreach ($_POST["id"] as $id)
00232 {
00233 $this->tpl->setCurrentBlock("table_row");
00234 $this->tpl->setVariable("IMG_OBJ",ilUtil::getImagePath("icon_styf.gif"));
00235 $this->tpl->setVariable("CSS_ROW",ilUtil::switchColor(++$counter,"tblrow1","tblrow2"));
00236 $this->tpl->setVariable("TEXT_CONTENT",ilObject::_lookupTitle($id));
00237 $this->tpl->parseCurrentBlock();
00238 }
00239
00240
00241
00242
00243 $buttons = array("confirmedDelete" => $this->lng->txt("confirm"),
00244 "cancelDelete" => $this->lng->txt("cancel"));
00245 foreach ($buttons as $name => $value)
00246 {
00247 $this->tpl->setCurrentBlock("operation_btn");
00248 $this->tpl->setVariable("IMG_ARROW",ilUtil::getImagePath("arrow_downright.gif"));
00249 $this->tpl->setVariable("BTN_NAME",$name);
00250 $this->tpl->setVariable("BTN_VALUE",$value);
00251 $this->tpl->parseCurrentBlock();
00252 }
00253 }
00254
00255
00259 function confirmedDeleteObject()
00260 {
00261 global $ilias;
00262
00263 foreach($_SESSION["saved_post"] as $id)
00264 {
00265 $this->object->removeStyle($id);
00266 $style_obj =& $ilias->obj_factory->getInstanceByObjId($id);
00267 $style_obj->delete();
00268 }
00269 $this->object->update();
00270
00271 ilUtil::redirect($this->getReturnLocation("delete",$this->ctrl->getLinkTarget($this,"")));
00272 }
00273
00274
00280 function toggleGlobalDefaultObject()
00281 {
00282 global $ilias;
00283
00284 if (!isset($_POST["id"]))
00285 {
00286 $this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
00287 }
00288 if(count($_POST["id"]) > 1)
00289 {
00290 $this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
00291 }
00292
00293 $ilias->deleteSetting("fixed_content_style_id");
00294 $def_style = $ilias->getSetting("default_content_style_id");
00295
00296 if ($def_style != $_POST["id"][0])
00297 {
00298 $ilias->setSetting("default_content_style_id", $_POST["id"][0]);
00299 }
00300 else
00301 {
00302 $ilias->deleteSetting("default_content_style_id");
00303 }
00304
00305 ilUtil::redirect($this->ctrl->getLinkTarget($this,"view"));
00306 }
00307
00313 function toggleGlobalFixedObject()
00314 {
00315 global $ilias;
00316
00317 if (!isset($_POST["id"]))
00318 {
00319 $this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
00320 }
00321 if(count($_POST["id"]) > 1)
00322 {
00323 $this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
00324 }
00325
00326 $ilias->deleteSetting("default_content_style_id");
00327 $fixed_style = $ilias->getSetting("fixed_content_style_id");
00328 if ($fixed_style == $_POST["id"][0])
00329 {
00330 $ilias->deleteSetting("fixed_content_style_id");
00331 }
00332 else
00333 {
00334 $ilias->setSetting("fixed_content_style_id", $_POST["id"][0]);
00335 }
00336 ilUtil::redirect($this->ctrl->getLinkTarget($this,"view"));
00337 }
00338
00339
00346 function showActions($with_subobjects = false)
00347 {
00348
00349
00350 $this->tpl->setCurrentBlock("tbl_action_btn");
00351 $this->tpl->setVariable("BTN_NAME", "deleteStyle");
00352 $this->tpl->setVariable("BTN_VALUE", $this->lng->txt("delete"));
00353 $this->tpl->parseCurrentBlock();
00354
00355
00356 $this->tpl->setCurrentBlock("tbl_action_btn");
00357 $this->tpl->setVariable("BTN_NAME", "toggleGlobalDefault");
00358 $this->tpl->setVariable("BTN_VALUE", $this->lng->txt("toggleGlobalDefault"));
00359 $this->tpl->parseCurrentBlock();
00360
00361
00362 $this->tpl->setCurrentBlock("tbl_action_btn");
00363 $this->tpl->setVariable("BTN_NAME", "toggleGlobalFixed");
00364 $this->tpl->setVariable("BTN_VALUE", $this->lng->txt("toggleGlobalFixed"));
00365 $this->tpl->parseCurrentBlock();
00366
00367 if ($with_subobjects === true)
00368 {
00369 $this->showPossibleSubObjects();
00370 }
00371
00372 $this->tpl->setCurrentBlock("tbl_action_row");
00373 $this->tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.gif"));
00374 $this->tpl->parseCurrentBlock();
00375 }
00376
00377
00383 function getTabs(&$tabs_gui)
00384 {
00385
00386
00387 }
00388 }
00389 ?>