国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

170 lines
4.7KB

  1. <?php
  2. /**
  3. * 空间皮肤
  4. *
  5. * @version $Id: spaceskin.php 1 8:38 2010年7月9日Z tianya $
  6. * @package DedeCMS.Member
  7. * @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
  8. * @license http://help.dedecms.com/usersguide/license.html
  9. * @link http://www.dedecms.com
  10. */
  11. require_once(dirname(__FILE__)."/config.php");
  12. CheckRank(0,0);
  13. $menutype = 'config';
  14. if($cfg_mb_lit=='Y')
  15. {
  16. ShowMsg("由于系统开启了精简版会员空间,你访问的功能不可用!","-1");
  17. exit();
  18. }
  19. if(empty($dopost)) $dopost = '';
  20. if($dopost=="use")
  21. {
  22. AjaxHead();
  23. $t = preg_replace("#[^a-z0-9-]#i", "", $t);
  24. $dsql->ExecuteNoneQuery("UPDATE `#@__member_space` SET spacestyle='$t' WHERE mid='".$cfg_ml->M_ID."';");
  25. ShowMsg('成功更新空间样式!', 'spaceskin.php');
  26. }
  27. //默认界面
  28. else
  29. {
  30. $userrow = $dsql->GetOne("SELECT spacestyle FROM `#@__member_space` WHERE mid='".$cfg_ml->M_ID."' ");
  31. require_once(dirname(__FILE__)."/templets/spaceskin.htm");
  32. exit();
  33. }
  34. /**
  35. * 检查样式是否使用
  36. *
  37. * @access public
  38. * @param string $type 样式类型
  39. * @return string
  40. */
  41. function checkuse($type)
  42. {
  43. global $cfg_ml, $userrow;
  44. if($userrow['spacestyle'] == $type)
  45. {
  46. return '<a href="#"><font color=red>使用中...</font></a>';
  47. }
  48. else
  49. {
  50. return '<a href="spaceskin.php?t='.$type.'&dopost=use" title="使用此风格">使用</a>';
  51. }
  52. }
  53. /**
  54. * 提取预览小图
  55. *
  56. * @access public
  57. * @param string $dir 目录
  58. * @param string $dirname 目录名称
  59. * @return string
  60. */
  61. function showdemopic($dir, $dirname)
  62. {
  63. if (file_exists("$dir/$dirname/demo.png")) {
  64. $demopic = "$dir/$dirname/demo.png";
  65. } else if (file_exists("$dir/$dirname/demo.jpg")) {
  66. $demopic = "$dir/$dirname/demo.jpg";
  67. } else if (file_exists("$dir/$dirname/demo.jpeg")) {
  68. $demopic = "$dir/$dirname/demo.jpeg";
  69. } else if (file_exists("$dir/$dirname/demo.gif")) {
  70. $demopic = "$dir/$dirname/demo.gif";
  71. }
  72. return $demopic;
  73. }
  74. /**
  75. * 列出风格目录
  76. *
  77. * @access public
  78. * @param string
  79. * @return string
  80. */
  81. function ListSkin()
  82. {
  83. global $cfg_ml;
  84. $dir = 'space';
  85. $allskins = array();
  86. //读取文件夹
  87. if(file_exists($dir.'/skinlist.inc'))
  88. {
  89. $ds = file($dir.'/skinlist.inc');
  90. foreach($ds as $d)
  91. {
  92. $d = trim($d);
  93. if(empty($d) || substr($d, 0, 2)=='//') continue;
  94. if(!is_dir($dir.'/'.$d)) continue;
  95. $dirs[] = $d;
  96. }
  97. }
  98. else
  99. {
  100. $fp = opendir($dir);
  101. while ($sysname = readdir($fp))
  102. {
  103. $dirs[] = $sysname;
  104. }
  105. closedir($dh);
  106. }
  107. //获得模板摘要信息
  108. foreach($dirs as $sysname)
  109. {
  110. if ($sysname=='.' || $sysname=='..' || $sysname=='CVS'
  111. || !file_exists("$dir/$sysname/info.txt"))
  112. {
  113. continue;
  114. }
  115. $demopic = showdemopic($dir, $sysname);
  116. $date = MyDate('Y-m-d', filemtime("$dir/$sysname"));
  117. $listdb = array(
  118. 'sign' => $sysname,
  119. 'demo' => $demopic,
  120. 'name' => '',
  121. 'author' => 'Unkown',
  122. 'date' => ''
  123. );
  124. $infodatas = file("$dir/$sysname/info.txt");
  125. foreach($infodatas as $d)
  126. {
  127. $d = trim($d);
  128. if(empty($d)) continue;
  129. $ds = explode(':', $d);
  130. $listdb[trim($ds[0])] = trim($ds[1]);
  131. }
  132. if($listdb['type'] != 'default' && $listdb['type'] != $cfg_ml->M_MbType)
  133. {
  134. continue;
  135. }
  136. $allskins[] = $listdb;
  137. }
  138. //输出模板列表
  139. $num = 0;
  140. print '<tr class="head" height="25"><td colspan="2">&nbsp; &nbsp;<b></b></td></tr>';
  141. foreach ($allskins as $value)
  142. {
  143. if($num==0) { print '<tr height="20">'; }
  144. $num++;
  145. print '<td class="b"><img src="'.$value['demo'].'" width="150" height="150" border="0" /><br />';
  146. print '风格名称:'.$value['name']."({$value['sign']})".'<br />';
  147. print '风格作者:'.$value['author'].'<br />';
  148. //print '建立时间:'.$value['date'].'<br />';
  149. print '操作:'.checkuse($value['sign']).'';
  150. if($num==4)
  151. {
  152. $num=0;
  153. print '</tr>';
  154. }
  155. }
  156. if($num != 0)
  157. {
  158. for($i=$num; $num < 4; $num++)
  159. {
  160. print' <td class="b">&nbsp;</td>';
  161. }
  162. print '</tr>';
  163. }
  164. print '</td>';
  165. }