Style Migration Class (->3.11)
More...
Style Migration Class (->3.11)
- Author
- Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
- Version
- $Id$
Definition at line 12 of file class.ilStyleMigration.php.
◆ _addMissingStyleClassesToAllStyles()
static ilStyleMigration::_addMissingStyleClassesToAllStyles |
( |
| ) |
|
|
static |
Add missing style classes to all styles.
Definition at line 355 of file class.ilStyleMigration.php.
References $core_styles, $file, $ilDB, _createImagesDirectory(), _getBasicStyleDom(), _getCoreStyles(), _getImagesDirectory(), and array.
363 $core_images =
array();
364 $core_dir = self::$basic_style_image_dir;
365 if (is_dir($core_dir))
367 $dir = opendir($core_dir);
368 while(
$file = readdir($dir))
370 if (substr(
$file, 0, 1) !=
"." && is_file($core_dir.
"/".
$file))
372 $core_images[] =
$file;
378 $sets = $ilDB->query(
"SELECT * FROM object_data WHERE type = 'sty'");
380 while ($recs = $ilDB->fetchAssoc($sets))
382 $id = $recs[
"obj_id"];
387 $set = $ilDB->queryF(
"SELECT * FROM style_char WHERE style_id = %s ".
388 "AND type = %s AND characteristic = %s",
389 array(
"integer",
"text",
"text"),
390 array($id, $cs[
"type"], $cs[
"class"]));
393 if (!($rec = $ilDB->fetchAssoc($set)))
395 $ilDB->manipulateF(
"INSERT INTO style_char (style_id, type, characteristic) ".
396 " VALUES (%s,%s,%s) ",
397 array(
"integer",
"text",
"text"),
398 array($id, $cs[
"type"], $cs[
"class"]));
400 $xpath =
new DOMXPath($bdom);
401 $par_nodes = $xpath->query(
"/StyleSheet/Style[@Tag = '".$cs[
"tag"].
"' and @Type='".
402 $cs[
"type"].
"' and @Class='".$cs[
"class"].
"']/StyleParameter");
403 foreach ($par_nodes as $par_node)
406 $set = $ilDB->queryF(
"SELECT * FROM style_parameter WHERE style_id = %s ".
407 "AND type = %s AND class = %s AND tag = %s AND parameter = %s",
408 array(
"integer",
"text",
"text",
"text",
"text"),
409 array($id, $cs[
"type"], $cs[
"class"],
410 $cs[
"tag"], $par_node->getAttribute(
"Name")));
413 if (!($rec = $ilDB->fetchAssoc($set)))
415 $ilDB->manipulateF(
"INSERT INTO style_parameter (style_id, type, class, tag, parameter, value) ".
416 " VALUES (%s,%s,%s,%s,%s,%s)",
417 array(
"integer",
"text",
"text",
"text",
"text",
"text"),
418 array($id, $cs[
"type"], $cs[
"class"], $cs[
"tag"],
419 $par_node->getAttribute(
"Name"), $par_node->getAttribute(
"Value")));
429 foreach($core_images as $cim)
431 if (!is_file($imdir.
"/".$cim))
433 copy($core_dir.
"/".$cim, $imdir.
"/".$cim);
static _getCoreStyles()
Get core styles.
static _getBasicStyleDom()
Get basic style dom.
static _getImagesDirectory($a_style_id)
Get images directory.
static _createImagesDirectory($a_style_id)
Create images directory <data_dir>/sty/sty_<id>/images.
Create styles array
The data for the language used.
if(!file_exists("$old.txt")) if($old===$new) if(file_exists("$new.txt")) $file
◆ _createImagesDirectory()
static ilStyleMigration::_createImagesDirectory |
( |
|
$a_style_id | ) |
|
|
static |
Create images directory <data_dir>/sty/sty_<id>/images.
Definition at line 304 of file class.ilStyleMigration.php.
References $ilErr, and ilUtil\makeDir().
Referenced by _addMissingStyleClassesToAllStyles().
308 $sty_data_dir = CLIENT_WEB_DIR.
"/sty";
310 if(!is_writable($sty_data_dir))
312 $ilErr->raiseError(
"Style data directory (".$sty_data_dir
313 .
") not writeable.", $ilErr->FATAL);
316 $style_dir = $sty_data_dir.
"/sty_".$a_style_id;
318 if(!@is_dir($style_dir))
320 $ilErr->raiseError(
"Creation of style directory failed (".
321 $style_dir.
").",$ilErr->FATAL);
325 $im_dir = $style_dir.
"/images";
327 if(!@is_dir($im_dir))
329 $ilErr->raiseError(
"Creation of Import Directory failed (".
330 $im_dir.
").", $ilErr->FATAL);
334 $thumb_dir = $style_dir.
"/images/thumbnails";
336 if(!@is_dir($thumb_dir))
338 $ilErr->raiseError(
"Creation of Import Directory failed (".
339 $thumb_dir.
").", $ilErr->FATAL);
static makeDir($a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
◆ _determineTag()
static ilStyleMigration::_determineTag |
( |
|
$a_type | ) |
|
|
static |
◆ _getBasicStyleDom()
static ilStyleMigration::_getBasicStyleDom |
( |
| ) |
|
|
static |
◆ _getCoreStyles()
static ilStyleMigration::_getCoreStyles |
( |
| ) |
|
|
static |
◆ _getImagesDirectory()
static ilStyleMigration::_getImagesDirectory |
( |
|
$a_style_id | ) |
|
|
static |
◆ addMissingStyleCharacteristics()
ilStyleMigration::addMissingStyleCharacteristics |
( |
|
$a_id = "" | ) |
|
Add missing style characteristics to styles.
Definition at line 121 of file class.ilStyleMigration.php.
References $ilDB, $t, and array.
128 $add_str =
" AND style_id = ".$ilDB->quote($a_id,
"integer");
131 $set = $ilDB->query($q =
"SELECT DISTINCT style_id, tag, class FROM style_parameter WHERE ".
132 $ilDB->equals(
"type",
"",
"text",
true).
" ".$add_str);
134 while ($rec = $ilDB->fetchAssoc($set))
142 if (in_array($rec[
"class"],
array(
"Headline3",
"Headline1",
143 "Headline2",
"TableContent",
"List",
"Standard",
"Remark",
144 "Additional",
"Mnemonic",
"Citation",
"Example")))
146 $types[] =
"text_block";
148 if (in_array($rec[
"class"],
array(
"Block",
"Remark",
149 "Additional",
"Mnemonic",
"Example",
"Excursus",
"Special")))
151 $types[] =
"section";
153 if (in_array($rec[
"class"],
array(
"Page",
"Footnote",
"PageTitle",
"LMNavigation")))
160 $types[] =
"table_cell";
164 if (in_array($rec[
"class"],
array(
"ExtLink",
"IntLink",
"FootnoteLink")))
171 $types[] =
"text_inline";
184 foreach ($types as
$t)
187 $set4 = $ilDB->queryF(
"SELECT * FROM style_char ".
188 " WHERE style_id = %s AND type = %s AND characteristic = %s",
189 array(
"integer",
"text",
"text"),
190 array($rec[
"style_id"], $t, $rec[
"class"]));
191 if ($rec4 = $ilDB->fetchAssoc($set4))
198 $ilDB->manipulateF(
"INSERT INTO style_char ".
199 " (style_id, type, characteristic) VALUES ".
201 array(
"integer",
"text",
"text"),
202 array($rec[
"style_id"], $t, $rec[
"class"]));
207 if ($rec[
"type"] ==
"")
209 if (count($types) > 0)
211 $ilDB->manipulateF(
"UPDATE style_parameter SET type = %s ".
212 " WHERE style_id = %s AND class = %s AND ".$ilDB->equals(
"type",
"",
"text",
true),
213 array(
"text",
"integer",
"text"),
214 array($types[0], $rec[
"style_id"], $rec[
"class"]));
217 if ($types[0] ==
"link")
219 $ilDB->manipulateF(
"UPDATE style_parameter SET type = %s ".
220 " WHERE style_id = %s AND (class = %s OR class = %s) AND ".$ilDB->equals(
"type",
"",
"text",
true),
221 array(
"text",
"integer",
"text",
"text"),
222 array($types[0], $rec[
"style_id"], $rec[
"class"].
":visited",
223 $rec[
"class"].
":hover"));
229 if (count($types) == 2)
233 $set2 = $ilDB->queryF(
"SELECT * FROM style_parameter ".
234 " WHERE style_id = %s AND class = %s AND type = %s",
235 array(
"integer",
"text",
"text"),
236 array($rec[
"style_id"], $rec[
"class"], $types[0]));
237 while ($rec2 = $ilDB->fetchAssoc($set2))
240 $set3 = $ilDB->queryF(
"SELECT * FROM style_parameter ".
241 " WHERE style_id = %s AND tag = %s AND class = %s AND type = %s AND parameter = %s",
242 array(
"integer",
"text",
"text",
"text",
"text"),
243 array($rec[
"style_id"], $rec[
"tag"], $rec[
"class"], $types[1], $rec[
"parameter"]));
244 if ($rec3 = $ilDB->fetchAssoc($set3))
250 $ilDB->manipulateF(
"INSERT INTO style_parameter ".
251 " (style_id, tag, class, parameter, value, type) VALUES ".
252 " (%s,%s,%s,%s,%s,%s) ",
253 array(
"integer",
"text",
"text",
"text",
"text",
"text"),
254 array($rec2[
"style_id"], $rec2[
"tag"], $rec2[
"class"],
255 $rec2[
"parameter"], $rec2[
"value"], $types[1]));
Create styles array
The data for the language used.
◆ $assigned_tags
ilStyleMigration::$assigned_tags |
|
static |
◆ $basic_style_dom
ilStyleMigration::$basic_style_dom |
|
staticprotected |
◆ $basic_style_file
ilStyleMigration::$basic_style_file = "./Services/Migration/DBUpdate_1385/basic_style/style.xml" |
|
staticprotected |
◆ $basic_style_image_dir
ilStyleMigration::$basic_style_image_dir = "./Services/Migration/DBUpdate_1385/basic_style/images" |
|
staticprotected |
◆ $core_styles
ilStyleMigration::$core_styles |
|
static |
The documentation for this class was generated from the following file: