XOOPS  2.6.0
themesetparser.php
Go to the documentation of this file.
1 <?php
2 /*
3  You may not change or alter any portion of this comment or credits
4  of supporting developers from this source code or any supporting source code
5  which is considered copyrighted (c) material of the original comment or credit authors.
6 
7  This program is distributed in the hope that it will be useful,
8  but WITHOUT ANY WARRANTY; without even the implied warranty of
9  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10 */
11 
23 {
27  public $tempArr = array();
28 
32  public $themeSetData = array();
33 
37  public $imagesData = array();
38 
42  public $templatesData = array();
43 
47  public function __construct(&$input)
48  {
49  parent::__construct($input);
54  $this->addTagHandler(new ThemeSetNameHandler());
55  $this->addTagHandler(new ThemeSetEmailHandler());
56  $this->addTagHandler(new ThemeSetLinkHandler());
58  $this->addTagHandler(new ThemeSetImageHandler());
61  $this->addTagHandler(new ThemeSetTagHandler());
62  }
63 
69  public function setThemeSetData($name, &$value)
70  {
71  $this->themeSetData[$name] = $value;
72  }
73 
78  public function getThemeSetData($name = null)
79  {
80  if (isset($name)) {
81  if (isset($this->themeSetData[$name])) {
82  return $this->themeSetData[$name];
83  }
84  return false;
85  }
86  return $this->themeSetData;
87  }
88 
93  public function setImagesData(&$imagearr)
94  {
95  $this->imagesData[] = $imagearr;
96  }
97 
101  public function getImagesData()
102  {
103  return $this->imagesData;
104  }
105 
106 
111  public function setTemplatesData(&$tplarr)
112  {
113  $this->templatesData[] = $tplarr;
114  }
115 
119  public function getTemplatesData()
120  {
121  return $this->templatesData;
122  }
123 
130  public function setTempArr($name, &$value, $delim = '')
131  {
132  if (!isset($this->tempArr[$name])) {
133  $this->tempArr[$name] = $value;
134  } else {
135  $this->tempArr[$name] .= $delim . $value;
136  }
137  }
138 
142  public function getTempArr($name = null)
143  {
144  if (isset($name)) {
145  if (isset($this->tempArr[$name])) {
146  return $this->tempArr[$name];
147  }
148  return false;
149  }
150  return $this->tempArr;
151  }
152 
156  public function resetTempArr()
157  {
158  unset($this->tempArr);
159  $this->tempArr = array();
160  }
161 }
162 
164 {
165 
169  public function getName()
170  {
171  return 'dateCreated';
172  }
173 
179  public function handleCharacterData(SaxParser &$parser, &$data)
180  {
181  if (!is_a($parser,'XoopsThemeSetParser')) return;
182  switch ($parser->getParentTag()) {
183  case 'themeset':
184  $parser->setThemeSetData('date', $data);
185  break;
186  default:
187  break;
188  }
189  }
190 }
191 
193 {
197  public function getName()
198  {
199  return 'author';
200  }
201 
207  public function handleBeginElement(SaxParser &$parser, &$attributes)
208  {
209  if (!is_a($parser,'XoopsThemeSetParser')) return;
210  $parser->resetTempArr();
211  }
212 
217  public function handleEndElement(SaxParser &$parser)
218  {
219  if (!is_a($parser,'XoopsThemeSetParser')) return;
220  //todo where does this method come from??
221  $parser->setCreditsData($parser->getTempArr());
222  }
223 }
224 
226 {
230  public function getName()
231  {
232  return 'description';
233  }
234 
240  public function handleCharacterData(SaxParser &$parser, &$data)
241  {
242  if (!is_a($parser,'XoopsThemeSetParser')) return;
243  switch ($parser->getParentTag()) {
244  case 'template':
245  $parser->setTempArr('description', $data);
246  break;
247  case 'image':
248  $parser->setTempArr('description', $data);
249  break;
250  default:
251  break;
252  }
253  }
254 }
255 
257 {
261  public function getName()
262  {
263  return 'generator';
264  }
265 
271  public function handleCharacterData(SaxParser &$parser, &$data)
272  {
273  if (!is_a($parser,'XoopsThemeSetParser')) return;
274  switch ($parser->getParentTag()) {
275  case 'themeset':
276  $parser->setThemeSetData('generator', $data);
277  break;
278  default:
279  break;
280  }
281  }
282 }
283 
285 {
286 
287  public function getName()
288  {
289  return 'name';
290  }
291 
297  public function handleCharacterData(SaxParser &$parser, &$data)
298  {
299  if (!is_a($parser,'XoopsThemeSetParser')) return;
300  switch ($parser->getParentTag()) {
301  case 'themeset':
302  $parser->setThemeSetData('name', $data);
303  break;
304  case 'author':
305  $parser->setTempArr('name', $data);
306  break;
307  default:
308  break;
309  }
310  }
311 }
312 
314 {
318  public function getName()
319  {
320  return 'email';
321  }
322 
328  public function handleCharacterData(SaxParser &$parser, &$data)
329  {
330  if (!is_a($parser,'XoopsThemeSetParser')) return;
331  switch ($parser->getParentTag()) {
332  case 'author':
333  $parser->setTempArr('email', $data);
334  break;
335  default:
336  break;
337  }
338  }
339 }
340 
342 {
346  public function getName()
347  {
348  return 'link';
349  }
350 
356  public function handleCharacterData(SaxParser &$parser, &$data)
357  {
358  if (!is_a($parser,'XoopsThemeSetParser')) return;
359  switch ($parser->getParentTag()) {
360  case 'author':
361  $parser->setTempArr('link', $data);
362  break;
363  default:
364  break;
365  }
366  }
367 }
368 
370 {
374  public function getName()
375  {
376  return 'template';
377  }
378 
384  public function handleBeginElement(SaxParser &$parser, &$attributes)
385  {
386  if (!is_a($parser,'XoopsThemeSetParser')) return;
387  $parser->resetTempArr();
388  if (isset($attributes['name'])) {
389  $parser->setTempArr('name', $attributes['name']);
390  }
391  }
392 
397  public function handleEndElement(SaxParser &$parser)
398  {
399  if (!is_a($parser,'XoopsThemeSetParser')) return;
400  $value = $parser->getTempArr();
401  $parser->setTemplatesData($value);
402  }
403 }
404 
406 {
410  public function getName()
411  {
412  return 'image';
413  }
414 
420  public function handleBeginElement(SaxParser &$parser, &$attributes)
421  {
422  if (!is_a($parser,'XoopsThemeSetParser')) return;
423  $parser->resetTempArr();
424  if (isset($attributes['name'])) {
425  $parser->setTempArr('name', $attributes['name']);
426  }
427  }
428 
433  public function handleEndElement(SaxParser &$parser)
434  {
435  if (!is_a($parser,'XoopsThemeSetParser')) return;
436  $value = $parser->getTempArr();
437  $parser->setImagesData($value);
438  }
439 }
440 
442 {
446  public function getName()
447  {
448  return 'module';
449  }
450 
456  public function handleCharacterData(SaxParser &$parser, &$data)
457  {
458  if (!is_a($parser,'XoopsThemeSetParser')) return;
459  switch ($parser->getParentTag()) {
460  case 'template':
461  case 'image':
462  $parser->setTempArr('module', $data);
463  break;
464  default:
465  break;
466  }
467  }
468 }
469 
471 {
475  public function getName()
476  {
477  return 'fileType';
478  }
479 
485  public function handleCharacterData(SaxParser &$parser, &$data)
486  {
487  if (!is_a($parser,'XoopsThemeSetParser')) return;
488  switch ($parser->getParentTag()) {
489  case 'template':
490  $parser->setTempArr('type', $data);
491  break;
492  default:
493  break;
494  }
495  }
496 }
497 
499 {
503  public function getName()
504  {
505  return 'tag';
506  }
507 
513  public function handleCharacterData(SaxParser &$parser, &$data)
514  {
515  if (!is_a($parser,'XoopsThemeSetParser')) return;
516  switch ($parser->getParentTag()) {
517  case 'image':
518  $parser->setTempArr('tag', $data);
519  break;
520  default:
521  break;
522  }
523  }
524 }
addTagHandler(XmlTagHandler &$tagHandler)
Definition: saxparser.php:192
handleCharacterData(SaxParser &$parser, &$data)
handleBeginElement(SaxParser &$parser, &$attributes)
setTempArr($name, &$value, $delim= '')
handleEndElement(SaxParser &$parser)
handleEndElement(SaxParser &$parser)
handleCharacterData(SaxParser &$parser, &$data)
handleCharacterData(SaxParser &$parser, &$data)
handleBeginElement(SaxParser &$parser, &$attributes)
handleEndElement(SaxParser &$parser)
setImagesData(&$imagearr)
handleCharacterData(SaxParser &$parser, &$data)
setThemeSetData($name, &$value)
getParentTag()
Definition: saxparser.php:120
handleCharacterData(SaxParser &$parser, &$data)
handleBeginElement(SaxParser &$parser, &$attributes)
handleCharacterData(SaxParser &$parser, &$data)
handleCharacterData(SaxParser &$parser, &$data)
handleCharacterData(SaxParser &$parser, &$data)
getThemeSetData($name=null)