ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
class.ilMDUtils.php
Go to the documentation of this file.
1<?php
2/*
3 +-----------------------------------------------------------------------------+
4 | ILIAS open source |
5 +-----------------------------------------------------------------------------+
6 | Copyright (c) 1998-2001 ILIAS open source, University of Cologne |
7 | |
8 | This program is free software; you can redistribute it and/or |
9 | modify it under the terms of the GNU General Public License |
10 | as published by the Free Software Foundation; either version 2 |
11 | of the License, or (at your option) any later version. |
12 | |
13 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | GNU General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU General Public License |
19 | along with this program; if not, write to the Free Software |
20 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21 +-----------------------------------------------------------------------------+
22*/
23
24
33{
42 function _LOMDurationToArray($a_string)
43 {
44 $a_string = trim($a_string);
45 #$pattern = '/^(PT)?(\d{1,2}H)?(\d{1,2}M)?(\d{1,2}S)?$/i';
46 $pattern = '/^P(\d{1,2}M)?(\d{1,2}D)?(T(\d{1,2}H)?(\d{1,2}M)?(\d{1,2}S)?)?$/i';
47
48 if(!preg_match($pattern,$a_string,$matches))
49 {
50 return false;
51 }
52 // Month
53 if(preg_match('/^P(\d+)M/i',$a_string,$matches))
54 {
55 $months = $matches[1];
56 }
57 // Days
58 if(preg_match('/(\d+)+D/i',$a_string,$matches))
59 {
60 #var_dump("<pre>",$matches,"<pre>");
61 $days = $matches[1];
62 }
63
64 if(preg_match('/(\d+)+H/i',$a_string,$matches))
65 {
66 #var_dump("<pre>",$matches,"<pre>");
67 $hours = $matches[1];
68 }
69 if(preg_match('/T(\d{1,2}H)?(\d+)M/i',$a_string,$matches))
70 {
71 #var_dump("<pre>",$matches,"<pre>");
72 $min = $matches[2];
73 }
74 if(preg_match('/(\d+)S/i',$a_string,$matches))
75 {
76 #var_dump("<pre>",$matches,"<pre>");
77 $sec = $matches[1];
78 }
79
80 // Hack for zero values
81 if(!$months and !$days and !$hours and !$min and !$sec)
82 {
83 return false;
84 }
85
86 return array($months,$days,$hours,$min,$sec);
87 }
88
99 public static function _fillHTMLMetaTags($a_rbac_id,$a_obj_id,$a_type)
100 {
101 global $tpl,$ilObjDataCache;
102
103 include_once('Services/MetaData/classes/class.ilMDKeyword.php');
104 foreach(ilMDKeyword::_getKeywordsByLanguageAsString($a_rbac_id,$a_obj_id,$a_type) as $lng_code => $key_string)
105 {
106 $tpl->setCurrentBlock('mh_meta_item');
107 $tpl->setVariable('MH_META_NAME','keywords');
108 $tpl->setVariable('MH_META_LANG',$lng_code);
109 $tpl->setVariable('MH_META_CONTENT',$key_string);
110 $tpl->parseCurrentBlock();
111 }
112 include_once('Services/MetaData/classes/class.ilMDContribute.php');
113 foreach(ilMDContribute::_lookupAuthors($a_rbac_id,$a_obj_id,$a_type) as $author)
114 {
115 $tpl->setCurrentBlock('mh_meta_item');
116 $tpl->setVariable('MH_META_NAME','author');
117 $tpl->setVariable('MH_META_CONTENT',$author);
118 $tpl->parseCurrentBlock();
119 }
120
121 }
122
132 public static function _parseCopyright($a_copyright)
133 {
134 include_once('Services/MetaData/classes/class.ilMDSettings.php');
135 $settings = ilMDSettings::_getInstance();
136 if(!$settings->isCopyrightSelectionActive())
137 {
138 return $a_copyright;
139 }
140 include_once('Services/MetaData/classes/class.ilMDCopyrightSelectionEntry.php');
142 }
143
144
145}
global $tpl
Definition: ilias.php:8
static _lookupAuthors($a_rbac_id, $a_obj_id, $a_obj_type)
Lookup authors.
static _lookupCopyright($a_cp_string)
lookup copyright by entry id
static _getKeywordsByLanguageAsString($a_rbac_id, $a_obj_id, $a_type)
Get keywords by language as string.
static _getInstance()
get instance
_LOMDurationToArray($a_string)
LOM datatype duration is a string like P2M4DT7H18M2S (2 months 4 days 7 hours 18 minutes 2 seconds) T...
static _fillHTMLMetaTags($a_rbac_id, $a_obj_id, $a_type)
Fill html meta tags.
static _parseCopyright($a_copyright)
Parse copyright.