国内流行的内容管理系统(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.

129 lines
4.1KB

  1. <?php
  2. /**
  3. * 文档随机模板
  4. *
  5. * @version $Id: article_template_rand.php 1 14:31 2010年7月12日Z tianya $
  6. * @package DedeCMS.Administrator
  7. * @copyright Copyright (c) 2007 - 2018, DesDev, Inc.
  8. * @copyright Copyright (c) 2020, DedeBIZ.COM
  9. * @license https://www.dedebiz.com/license/v6
  10. * @link https://www.dedebiz.com
  11. */
  12. require_once(dirname(__FILE__).'/config.php');
  13. require_once(DEDEINC.'/oxwindow.class.php');
  14. CheckPurview('sys_StringMix');
  15. if(empty($dopost)) $dopost = '';
  16. $templates = empty($templates) ? '' : stripslashes($templates);
  17. $m_file = DEDEDATA.'/template.rand.php';
  18. //----------------------action
  19. $okmsg = '';
  20. //保存配置
  21. if($dopost=='save')
  22. {
  23. CheckCSRF();
  24. $fp = fopen($m_file,'w');
  25. flock($fp,3);
  26. fwrite($fp,$templates);
  27. fclose($fp);
  28. $okmsg = '成功保存配置信息 AT:('.MyDate('H:i:s', time()).')';
  29. }
  30. //对旧文档进行随机模板处理
  31. else if($dopost=='makeold')
  32. {
  33. CheckCSRF();
  34. set_time_limit(3600);
  35. if(!file_exists($m_file))
  36. {
  37. AjaxHead();
  38. echo "配置文件不存在!";
  39. exit();
  40. }
  41. require_once($m_file);
  42. if($cfg_tamplate_rand==0)
  43. {
  44. AjaxHead();
  45. echo "系统没开启允许随机模板的选项!";
  46. exit();
  47. }
  48. $totalTmp = count($cfg_tamplate_arr) - 1;
  49. if( $totalTmp < 1 )
  50. {
  51. AjaxHead();
  52. echo "随机模板的数量必须为2个或以上!";
  53. exit();
  54. }
  55. for($i=0; $i < 10; $i++)
  56. {
  57. $temp = $cfg_tamplate_arr[mt_rand(0, $totalTmp)];
  58. $dsql->ExecuteNoneQuery(" Update `#@__addonarticle` set templet='$temp' where RIGHT(aid, 1)='$i' ");
  59. }
  60. AjaxHead();
  61. echo "全部随机操作成功!";
  62. exit();
  63. }
  64. //清除全部的指定模板
  65. else if($dopost=='clearold')
  66. {
  67. CheckCSRF();
  68. $dsql->ExecuteNoneQuery(" Update `#@__addonarticle` set templet='' ");
  69. $dsql->ExecuteNoneQuery(" OPTIMIZE TABLE `#@__addonarticle` ");
  70. AjaxHead();
  71. echo "全部清除操作成功!";
  72. exit();
  73. }
  74. //-------------------------read
  75. //读出
  76. if(empty($templates) && filesize($m_file)>0)
  77. {
  78. $fp = fopen($m_file,'r');
  79. $templates = fread($fp,filesize($m_file));
  80. fclose($fp);
  81. }
  82. $wintitle = "随机模板防采集设置";
  83. $wecome_info = "随机模板防采集设置";
  84. make_hash();
  85. $msg = "
  86. <link href='css/base.css' rel='stylesheet' type='text/css' />
  87. <script language='javascript' src='js/main.js'></script>
  88. <script language='javascript' src='../static/js/dedeajax2.js'></script>
  89. <script language='javascript'>
  90. function DoRand(jobname)
  91. {
  92. ChangeFullDiv('show');
  93. \$DE('loading').style.display = 'block';
  94. var myajax = new DedeAjax(\$DE('tmpct'));
  95. myajax.SendGet2('article_template_rand.php?dopost='+jobname+'&token={$_SESSION['token']}');
  96. \$DE('loading').style.display = 'none';
  97. ChangeFullDiv('hide');
  98. }
  99. </script>
  100. <div id='loading' style='z-index:3000;top:160;left:300;position:absolute;display:none;'>
  101. <img src='images/loadinglit.gif' /> 请稍后,正在操作中...
  102. </div>
  103. <table width='98%' align='center'>
  104. <tr>
  105. <td height='28'>
  106. 如果你想对旧的文章应用随机模板设置,请点击此对旧文章进行处理(必须设置好模板项)!
  107. &nbsp; <a href='#' onclick='DoRand(\"makeold\")' class='btn btn-secondary btn-sm'>设置全部</a>
  108. &nbsp; <a href='#' onclick='DoRand(\"clearold\")' class='btn btn-secondary btn-sm'>取消全部</a>
  109. &nbsp; <span id='tmpct' style='color:red;font-weight:bold'>$okmsg</span>
  110. </td>
  111. </tr>
  112. <tr>
  113. <td bgcolor='#F9FCEF'><b>请按说明修改设置:</b></td>
  114. </tr>
  115. <tr>
  116. <td><textarea name='templates' id='templates' style='width:100%;height:250px'>$templates</textarea></td>
  117. </tr>
  118. </table>";
  119. $win = new OxWindow();
  120. $win->Init('article_template_rand.php','js/blank.js','POST');
  121. $win->AddHidden('dopost','save');
  122. $win->AddHidden('token',$_SESSION['token']);
  123. $win->AddTitle("本设置仅适用于系统默认的文章模型,设置后发布文章时会自动按指定的模板随机获取一个,如果不想使用此功能,把它设置为空即可!");
  124. $win->AddMsgItem($msg);
  125. $winform = $win->GetWindow('ok');
  126. $win->Display();