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

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