1: <?php
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33: if ( !defined("XOOPS_LISTS_INCLUDED") ) {
34: define("XOOPS_LISTS_INCLUDED",1);
35: class XoopsLists
36: {
37: function &getTimeZoneList()
38: {
39: $root =& XCube_Root::getSingleton();
40: $root->mLanguageManager->loadPageTypeMessageCatalog('timezone');
41: $time_zone_list = array (
42: "-12" => _TZ_GMTM12,
43: "-11" => _TZ_GMTM11,
44: "-10" => _TZ_GMTM10,
45: "-9" => _TZ_GMTM9,
46: "-8" => _TZ_GMTM8,
47: "-7" => _TZ_GMTM7,
48: "-6" => _TZ_GMTM6,
49: "-5" => _TZ_GMTM5,
50: "-4.5" => _TZ_GMTM45,
51: "-4" => _TZ_GMTM4,
52: "-3.5" => _TZ_GMTM35,
53: "-3" => _TZ_GMTM3,
54: "-2" => _TZ_GMTM2,
55: "-1" => _TZ_GMTM1,
56: "0" => _TZ_GMT0,
57: "1" => _TZ_GMTP1,
58: "2" => _TZ_GMTP2,
59: "3" => _TZ_GMTP3,
60: "3.5" => _TZ_GMTP35,
61: "4" => _TZ_GMTP4,
62: "4.5" => _TZ_GMTP45,
63: "5" => _TZ_GMTP5,
64: "5.5" => _TZ_GMTP55,
65: "5.75" => _TZ_GMTP575,
66: "6" => _TZ_GMTP6,
67: "6.5" => _TZ_GMTP65,
68: "7" => _TZ_GMTP7,
69: "8" => _TZ_GMTP8,
70: "9" => _TZ_GMTP9,
71: "9.5" => _TZ_GMTP95,
72: "10" => _TZ_GMTP10,
73: "11" => _TZ_GMTP11,
74: "12" => _TZ_GMTP12,
75: "13" => _TZ_GMTP13);
76: return $time_zone_list;
77: }
78:
79: 80: 81:
82: function &getThemesList()
83: {
84: $ret =& XoopsLists::getDirListAsArray(XOOPS_THEME_PATH.'/');
85: return $ret;
86: }
87:
88: 89: 90:
91: function &getModulesList()
92: {
93: $ret =& XoopsLists::getDirListAsArray(XOOPS_ROOT_PATH."/modules/");
94: return $ret;
95: }
96:
97: 98: 99:
100: function &getDirListAsArray($dirname)
101: {
102: $dirlist = array();
103: if (is_dir($dirname) && $handle = opendir($dirname)) {
104: while (false !== ($file = readdir($handle))) {
105: if (!preg_match("/^\..*$/", $file)) {
106: if (strtolower($file) != 'cvs' && is_dir($dirname.$file) ) {
107: $dirlist[$file]=$file;
108: }
109: }
110: }
111: closedir($handle);
112: asort($dirlist);
113: reset($dirlist);
114: }
115: return $dirlist;
116: }
117:
118: 119: 120:
121: function &getFileListAsArray($dirname, $prefix="")
122: {
123: $filelist = array();
124: if (substr($dirname, -1) == '/') {
125: $dirname = substr($dirname, 0, -1);
126: }
127: if (is_dir($dirname) && $handle = opendir($dirname)) {
128: while (false !== ($file = readdir($handle))) {
129: if (!preg_match("/^[\.]{1,2}$/",$file) && is_file($dirname.'/'.$file)) {
130: $file = $prefix.$file;
131: $filelist[$file]=$file;
132: }
133: }
134: closedir($handle);
135: asort($filelist);
136: reset($filelist);
137: }
138: return $filelist;
139: }
140:
141: 142: 143:
144: function &getImgListAsArray($dirname, $prefix="")
145: {
146: $filelist = array();
147: if ($handle = opendir($dirname)) {
148: while (false !== ($file = readdir($handle))) {
149: if ( !preg_match("/^[\.]{1,2}$/",$file) && preg_match("/(\.gif|\.jpg|\.png)$/i",$file) ) {
150: $file = $prefix.$file;
151: $filelist[$file]=$file;
152: }
153: }
154: closedir($handle);
155: asort($filelist);
156: reset($filelist);
157: }
158: return $filelist;
159: }
160:
161: 162: 163:
164: function &getHtmlListAsArray($dirname, $prefix="")
165: {
166: $filelist = array();
167: if ($handle = opendir($dirname)) {
168: while (false !== ($file = readdir($handle))) {
169: if ( ( !preg_match( "/^[\.]{1,2}$/", $file ) && preg_match( "/(\.htm|\.html|\.xhtml)$/i", $file ) && !is_dir( $file ) ) )
170: {
171: if ( strtolower( $file ) != 'cvs' && !is_dir( $file ) )
172: {
173: $file = $prefix.$file;
174: $filelist[$file] = $prefix.$file;
175: }
176: }
177: }
178: closedir($handle);
179: asort($filelist);
180: reset($filelist);
181: }
182: return $filelist;
183: }
184:
185: 186: 187: 188:
189: function &getAvatarsList($avatar_dir="")
190: {
191: $avatars = array();
192: if ( $avatar_dir != "" ) {
193: $avatars =& XoopsLists::getImgListAsArray(XOOPS_ROOT_PATH."/images/avatar/".$avatar_dir."/", $avatar_dir."/");
194: } else {
195: $avatars =& XoopsLists::getImgListAsArray(XOOPS_ROOT_PATH."/images/avatar/");
196: }
197: return $avatars;
198: }
199:
200: 201: 202:
203: function &getAllAvatarsList()
204: {
205: $avatars = array();
206: $dirlist = array();
207: $dirlist =& XoopsLists::getDirListAsArray(XOOPS_ROOT_PATH."/images/avatar/");
208: if ( count($dirlist) > 0 ) {
209: foreach ( $dirlist as $dir ) {
210: $avatars[$dir] =& XoopsLists::getImgListAsArray(XOOPS_ROOT_PATH."/images/avatar/".$dir."/", $dir."/");
211: }
212: return $avatars;
213: }
214: $ret = false;
215: return $ret;
216: }
217:
218: 219: 220: 221:
222: function &getSubjectsList($sub_dir="")
223: {
224: $subjects = array();
225: if($sub_dir != ""){
226: $subjects =& XoopsLists::getImgListAsArray(XOOPS_ROOT_PATH."/images/subject/".$sub_dir, $sub_dir."/");
227: } else {
228: $subjects =& XoopsLists::getImgListAsArray(XOOPS_ROOT_PATH."/images/subject/");
229: }
230: return $subjects;
231: }
232:
233: 234: 235:
236: function &getLangList()
237: {
238: $lang_list = array();
239: $lang_list =& XoopsLists::getDirListAsArray(XOOPS_ROOT_PATH."/language/");
240: return $lang_list;
241: }
242:
243: function &getCountryList()
244: {
245: $country_list = array (
246: "" => "-",
247: "AD" => "Andorra",
248: "AE" => "United Arab Emirates",
249: "AF" => "Afghanistan",
250: "AG" => "Antigua and Barbuda",
251: "AI" => "Anguilla",
252: "AL" => "Albania",
253: "AM" => "Armenia",
254: "AN" => "Netherlands Antilles",
255: "AO" => "Angola",
256: "AQ" => "Antarctica",
257: "AR" => "Argentina",
258: "AS" => "American Samoa",
259: "AT" => "Austria",
260: "AU" => "Australia",
261: "AW" => "Aruba",
262: "AZ" => "Azerbaijan",
263: "BA" => "Bosnia and Herzegovina",
264: "BB" => "Barbados",
265: "BD" => "Bangladesh",
266: "BE" => "Belgium",
267: "BF" => "Burkina Faso",
268: "BG" => "Bulgaria",
269: "BH" => "Bahrain",
270: "BI" => "Burundi",
271: "BJ" => "Benin",
272: "BM" => "Bermuda",
273: "BN" => "Brunei Darussalam",
274: "BO" => "Bolivia",
275: "BR" => "Brazil",
276: "BS" => "Bahamas",
277: "BT" => "Bhutan",
278: "BV" => "Bouvet Island",
279: "BW" => "Botswana",
280: "BY" => "Belarus",
281: "BZ" => "Belize",
282: "CA" => "Canada",
283: "CC" => "Cocos (Keeling) Islands",
284: "CF" => "Central African Republic",
285: "CG" => "Congo",
286: "CH" => "Switzerland",
287: "CI" => "Cote D'Ivoire (Ivory Coast)",
288: "CK" => "Cook Islands",
289: "CL" => "Chile",
290: "CM" => "Cameroon",
291: "CN" => "China",
292: "CO" => "Colombia",
293: "CR" => "Costa Rica",
294: "CS" => "Czechoslovakia (former)",
295: "CU" => "Cuba",
296: "CV" => "Cape Verde",
297: "CX" => "Christmas Island",
298: "CY" => "Cyprus",
299: "CZ" => "Czech Republic",
300: "DE" => "Germany",
301: "DJ" => "Djibouti",
302: "DK" => "Denmark",
303: "DM" => "Dominica",
304: "DO" => "Dominican Republic",
305: "DZ" => "Algeria",
306: "EC" => "Ecuador",
307: "EE" => "Estonia",
308: "EG" => "Egypt",
309: "EH" => "Western Sahara",
310: "ER" => "Eritrea",
311: "ES" => "Spain",
312: "ET" => "Ethiopia",
313: "FI" => "Finland",
314: "FJ" => "Fiji",
315: "FK" => "Falkland Islands (Malvinas)",
316: "FM" => "Micronesia",
317: "FO" => "Faroe Islands",
318: "FR" => "France",
319: "FX" => "France, Metropolitan",
320: "GA" => "Gabon",
321: "GB" => "Great Britain (UK)",
322: "GD" => "Grenada",
323: "GE" => "Georgia",
324: "GF" => "French Guiana",
325: "GH" => "Ghana",
326: "GI" => "Gibraltar",
327: "GL" => "Greenland",
328: "GM" => "Gambia",
329: "GN" => "Guinea",
330: "GP" => "Guadeloupe",
331: "GQ" => "Equatorial Guinea",
332: "GR" => "Greece",
333: "GS" => "S. Georgia and S. Sandwich Isls.",
334: "GT" => "Guatemala",
335: "GU" => "Guam",
336: "GW" => "Guinea-Bissau",
337: "GY" => "Guyana",
338: "HK" => "Hong Kong",
339: "HM" => "Heard and McDonald Islands",
340: "HN" => "Honduras",
341: "HR" => "Croatia (Hrvatska)",
342: "HT" => "Haiti",
343: "HU" => "Hungary",
344: "ID" => "Indonesia",
345: "IE" => "Ireland",
346: "IL" => "Israel",
347: "IN" => "India",
348: "IO" => "British Indian Ocean Territory",
349: "IQ" => "Iraq",
350: "IR" => "Iran",
351: "IS" => "Iceland",
352: "IT" => "Italy",
353: "JM" => "Jamaica",
354: "JO" => "Jordan",
355: "JP" => "Japan",
356: "KE" => "Kenya",
357: "KG" => "Kyrgyzstan",
358: "KH" => "Cambodia",
359: "KI" => "Kiribati",
360: "KM" => "Comoros",
361: "KN" => "Saint Kitts and Nevis",
362: "KP" => "Korea (North)",
363: "KR" => "Korea (South)",
364: "KW" => "Kuwait",
365: "KY" => "Cayman Islands",
366: "KZ" => "Kazakhstan",
367: "LA" => "Laos",
368: "LB" => "Lebanon",
369: "LC" => "Saint Lucia",
370: "LI" => "Liechtenstein",
371: "LK" => "Sri Lanka",
372: "LR" => "Liberia",
373: "LS" => "Lesotho",
374: "LT" => "Lithuania",
375: "LU" => "Luxembourg",
376: "LV" => "Latvia",
377: "LY" => "Libya",
378: "MA" => "Morocco",
379: "MC" => "Monaco",
380: "MD" => "Moldova",
381: "MG" => "Madagascar",
382: "MH" => "Marshall Islands",
383: "MK" => "Macedonia",
384: "ML" => "Mali",
385: "MM" => "Myanmar",
386: "MN" => "Mongolia",
387: "MO" => "Macau",
388: "MP" => "Northern Mariana Islands",
389: "MQ" => "Martinique",
390: "MR" => "Mauritania",
391: "MS" => "Montserrat",
392: "MT" => "Malta",
393: "MU" => "Mauritius",
394: "MV" => "Maldives",
395: "MW" => "Malawi",
396: "MX" => "Mexico",
397: "MY" => "Malaysia",
398: "MZ" => "Mozambique",
399: "NA" => "Namibia",
400: "NC" => "New Caledonia",
401: "NE" => "Niger",
402: "NF" => "Norfolk Island",
403: "NG" => "Nigeria",
404: "NI" => "Nicaragua",
405: "NL" => "Netherlands",
406: "NO" => "Norway",
407: "NP" => "Nepal",
408: "NR" => "Nauru",
409: "NT" => "Neutral Zone",
410: "NU" => "Niue",
411: "NZ" => "New Zealand (Aotearoa)",
412: "OM" => "Oman",
413: "PA" => "Panama",
414: "PE" => "Peru",
415: "PF" => "French Polynesia",
416: "PG" => "Papua New Guinea",
417: "PH" => "Philippines",
418: "PK" => "Pakistan",
419: "PL" => "Poland",
420: "PM" => "St. Pierre and Miquelon",
421: "PN" => "Pitcairn",
422: "PR" => "Puerto Rico",
423: "PT" => "Portugal",
424: "PW" => "Palau",
425: "PY" => "Paraguay",
426: "QA" => "Qatar",
427: "RE" => "Reunion",
428: "RO" => "Romania",
429: "RU" => "Russian Federation",
430: "RW" => "Rwanda",
431: "SA" => "Saudi Arabia",
432: "Sb" => "Solomon Islands",
433: "SC" => "Seychelles",
434: "SD" => "Sudan",
435: "SE" => "Sweden",
436: "SG" => "Singapore",
437: "SH" => "St. Helena",
438: "SI" => "Slovenia",
439: "SJ" => "Svalbard and Jan Mayen Islands",
440: "SK" => "Slovak Republic",
441: "SL" => "Sierra Leone",
442: "SM" => "San Marino",
443: "SN" => "Senegal",
444: "SO" => "Somalia",
445: "SR" => "Suriname",
446: "ST" => "Sao Tome and Principe",
447: "SU" => "USSR (former)",
448: "SV" => "El Salvador",
449: "SY" => "Syria",
450: "SZ" => "Swaziland",
451: "TC" => "Turks and Caicos Islands",
452: "TD" => "Chad",
453: "TF" => "French Southern Territories",
454: "TG" => "Togo",
455: "TH" => "Thailand",
456: "TJ" => "Tajikistan",
457: "TK" => "Tokelau",
458: "TM" => "Turkmenistan",
459: "TN" => "Tunisia",
460: "TO" => "Tonga",
461: "TP" => "East Timor",
462: "TR" => "Turkey",
463: "TT" => "Trinidad and Tobago",
464: "TV" => "Tuvalu",
465: "TW" => "Taiwan",
466: "TZ" => "Tanzania",
467: "UA" => "Ukraine",
468: "UG" => "Uganda",
469: "UK" => "United Kingdom",
470: "UM" => "US Minor Outlying Islands",
471: "US" => "United States",
472: "UY" => "Uruguay",
473: "UZ" => "Uzbekistan",
474: "VA" => "Vatican City State (Holy See)",
475: "VC" => "Saint Vincent and the Grenadines",
476: "VE" => "Venezuela",
477: "VG" => "Virgin Islands (British)",
478: "VI" => "Virgin Islands (U.S.)",
479: "VN" => "Viet Nam",
480: "VU" => "Vanuatu",
481: "WF" => "Wallis and Futuna Islands",
482: "WS" => "Samoa",
483: "YE" => "Yemen",
484: "YT" => "Mayotte",
485: "YU" => "Yugoslavia",
486: "ZA" => "South Africa",
487: "ZM" => "Zambia",
488: "ZR" => "Zaire",
489: "ZW" => "Zimbabwe"
490: );
491: asort($country_list);
492: reset($country_list);
493: return $country_list;
494: }
495:
496: function &getHtmlList()
497: {
498: $html_list = array (
499: "a" => "<a>",
500: "abbr" => "<abbr>",
501: "acronym" => "<acronym>",
502: "address" => "<address>",
503: "b" => "<b>",
504: "bdo" => "<bdo>",
505: "big" => "<big>",
506: "blockquote" => "<blockquote>",
507: "caption" => "<caption>",
508: "cite" => "<cite>",
509: "code" => "<code>",
510: "col" => "<col>",
511: "colgroup" => "<colgroup>",
512: "dd" => "<dd>",
513: "del" => "<del>",
514: "dfn" => "<dfn>",
515: "div" => "<div>",
516: "dl" => "<dl>",
517: "dt" => "<dt>",
518: "em" => "<em>",
519: "font" => "<font>",
520: "h1" => "<h1>",
521: "h2" => "<h2>",
522: "h3" => "<h3>",
523: "h4" => "<h4>",
524: "h5" => "<h5>",
525: "h6" => "<h6>",
526: "hr" => "<hr>",
527: "i" => "<i>",
528: "img" => "<img>",
529: "ins" => "<ins>",
530: "kbd" => "<kbd>",
531: "li" => "<li>",
532: "map" => "<map>",
533: "object" => "<object>",
534: "ol" => "<ol>",
535: "samp" => "<samp>",
536: "small" => "<small>",
537: "strong" => "<strong>",
538: "sub" => "<sub>",
539: "sup" => "<sup>",
540: "table" => "<table>",
541: "tbody" => "<tbody>",
542: "td" => "<td>",
543: "tfoot" => "<tfoot>",
544: "th" => "<th>",
545: "thead" => "<thead>",
546: "tr" => "<tr>",
547: "tt" => "<tt>",
548: "ul" => "<ul>",
549: "var" => "<var>"
550: );
551: asort($html_list);
552: reset($html_list);
553: return $html_list;
554: }
555:
556: function &getUserRankList()
557: {
558: $db =& Database::getInstance();
559: $myts =& MyTextSanitizer::getInstance();
560: $sql = "SELECT rank_id, rank_title FROM ".$db->prefix("ranks")." WHERE rank_special = 1";
561: $ret = array();
562: $result = $db->query($sql);
563: while ( $myrow = $db->fetchArray($result) ) {
564: $ret[$myrow['rank_id']] = $myts->makeTboxData4Show($myrow['rank_title']);
565: }
566: return $ret;
567: }
568: }
569: }
570: ?>
571: