适用于SP1、SP2系统升级到DedeCMSV6
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

170 lines
6.9KB

  1. <?php
  2. /**
  3. * @version $Id: common.func.php 2020-11-18 tianya $
  4. * @copyright Copyright (c) 2020, DedeBIZ.COM
  5. * @license https://www.dedebiz.com/license
  6. * @link https://www.dedebiz.com
  7. */
  8. $v6sql = <<<EOT
  9. ALTER TABLE `#@__arctype`
  10. ADD COLUMN `namegk` varchar(255) NULL AFTER `typename`,
  11. ADD COLUMN `enname` varchar(255) NULL AFTER `namegk`,
  12. ADD COLUMN `ennamegk` varchar(255) NULL AFTER `enname`,
  13. ADD COLUMN `litpic` varchar(255) NULL AFTER `ennamegk`,
  14. ADD COLUMN `litimg` varchar(255) NULL AFTER `litpic`;
  15. ALTER TABLE `#@__tagindex`
  16. ADD COLUMN `uptime` INT(10) UNSIGNED NOT NULL DEFAULT '0' AFTER `addtime`,
  17. ADD COLUMN `mktime` INT(10) UNSIGNED NOT NULL DEFAULT '0' AFTER `uptime`;
  18. ALTER TABLE `#@__feedback`
  19. ADD COLUMN `fid` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `aid`;
  20. ALTER TABLE `#@__feedback`
  21. ADD COLUMN `replycount` INT(10) UNSIGNED NOT NULL DEFAULT '0' AFTER `dtime`;
  22. INSERT INTO `#@__sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ( 'cfg_feedback_msglen', '评论内容字数限定', 5, 'number', '200');
  23. INSERT INTO `#@__sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ( 'cfg_auth_code', '授权码(登录www.dedebiz.com进行商业授权)', 1, 'bstring', '');
  24. INSERT INTO `#@__sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ( 'cfg_bizcore_hostname', 'DedeBIZ Core地址', 1, 'string', '127.0.0.1');
  25. INSERT INTO `#@__sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ( 'cfg_bizcore_port', 'DedeBIZ Core端口', 1, 'number', '8181');
  26. INSERT INTO `#@__sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ( 'cfg_bizcore_appid', 'DedeBIZ Core应用ID', 1, 'string', '');
  27. INSERT INTO `#@__sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ( 'cfg_bizcore_key', 'DedeBIZ Core通信密钥', 1, 'string', '');
  28. CREATE TABLE `#@__feedback_goodbad` (
  29. `fgid` INT(11) NOT NULL AUTO_INCREMENT,
  30. `mid` INT(11) NOT NULL DEFAULT '0',
  31. `fid` INT(11) NOT NULL DEFAULT '0',
  32. `fgtype` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '0:good 1:bad',
  33. PRIMARY KEY (`fgid`)
  34. ) TYPE=MyISAM CHARSET=utf8;
  35. CREATE TABLE `#@__search_limits` (
  36. `ip` VARCHAR(200) NOT NULL,
  37. `searchtime` INT(11) NULL DEFAULT NULL,
  38. PRIMARY KEY (`ip`)
  39. ) TYPE=MyISAM CHARSET=utf8;
  40. EOT;
  41. function RpLine($str)
  42. {
  43. $str = str_replace("\r", "\\r", $str);
  44. $str = str_replace("\n", "\\n", $str);
  45. return $str;
  46. }
  47. function PutInfo($msg1,$msg2)
  48. {
  49. $msginfo = "<html>\n<head>
  50. <meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
  51. <title>DedeCMSV6 提示信息</title>
  52. <link rel=\"stylesheet\" href=\"static/css/bootstrap.min.css\"><style>.modal {position: static;}</style><link href=\"static/font-awesome/css/font-awesome.min.css\" rel=\"stylesheet\">
  53. <base target='_self'/>\n</head>\n<body leftmargin='0' topmargin='0'>\n<center>
  54. <br/>
  55. <main class='container'><div class='modal' tabindex='-1' role='dialog' style='display:block'><div class='modal-dialog'><div class='modal-content'><div class='modal-header'><h6 class='modal-title'>DedeCMSV6 提示信息</h6></div><div class='modal-body'>
  56. {$msg1}</div></div></div></div></main>\r\n{$msg2}";
  57. echo $msginfo."</center>\n</body>\n</html>";
  58. }
  59. function ShowMsgV6($msg, $gourl, $onlymsg=0, $limittime=0)
  60. {
  61. if(empty($GLOBALS['cfg_plus_dir'])) $GLOBALS['cfg_plus_dir'] = '..';
  62. $htmlhead = "<html>\r\n<head>\r\n<title>DedeCMSV6 提示信息</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">";
  63. $htmlhead .= "<link rel=\"stylesheet\" href=\"static/css/bootstrap.min.css\"><style>.modal {position: static;}</style><link href=\"static/font-awesome/css/font-awesome.min.css\" rel=\"stylesheet\">";
  64. $htmlhead .= "<base target='_self'/></head>\r\n<body leftmargin='0' topmargin='0' bgcolor='#FFFFFF'>".(isset($GLOBALS['ucsynlogin']) ? $GLOBALS['ucsynlogin'] : '')."\r\n<center>\r\n<script>\r\n";
  65. $htmlfoot = "</script>\r\n</center>\r\n</body>\r\n</html>\r\n";
  66. $litime = ($limittime==0 ? 1000 : $limittime);
  67. $func = '';
  68. if($gourl=='-1')
  69. {
  70. if($limittime==0) $litime = 5000;
  71. $gourl = "javascript:history.go(-1);";
  72. }
  73. if($gourl=='' || $onlymsg==1)
  74. {
  75. $msg = "<script>alert(\"".str_replace("\"","“",$msg)."\");</script>";
  76. }
  77. else
  78. {
  79. //当网址为:close::objname 时, 关闭父框架的id=objname元素
  80. if(preg_match('/close::/',$gourl))
  81. {
  82. $tgobj = trim(preg_replace('/close::/', '', $gourl));
  83. $gourl = 'javascript:;';
  84. $func .= "window.parent.document.getElementById('{$tgobj}').style.display='none';\r\n";
  85. }
  86. $func .= " var pgo=0;
  87. function JumpUrl(){
  88. if(pgo==0){ location='$gourl'; pgo=1; }
  89. }\r\n";
  90. $rmsg = $func;
  91. $rmsg .= "document.write(\"<main class='container'><div class='modal' tabindex='-1' role='dialog' style='display:block'><div class='modal-dialog'><div class='modal-content'><div class='modal-header'><h6 class='modal-title'>";
  92. $rmsg .= "DedeCMSV6 提示信息!</h6></div><div class='modal-body'>\");\r\n";
  93. $rmsg .= "document.write(\"".str_replace("\"","“",$msg)."\");\r\n";
  94. $rmsg .= "document.write(\"";
  95. if($onlymsg==0)
  96. {
  97. if( $gourl != 'javascript:;' && $gourl != '')
  98. {
  99. $rmsg .= "<br /><a href='{$gourl}'>如果你的浏览器没反应,请点击这里...</a>";
  100. $rmsg .= "</div></div></div></div></main>\");\r\n";
  101. $rmsg .= "setTimeout('JumpUrl()',$litime);";
  102. }
  103. else
  104. {
  105. $rmsg .= "</div></div></div></div></main>\");\r\n";
  106. }
  107. }
  108. else
  109. {
  110. $rmsg .= "</div></div></div></div></main>\");\r\n";
  111. }
  112. $msg = $htmlhead.$rmsg.$htmlfoot;
  113. }
  114. echo $msg;
  115. }
  116. $configfile = DEDEDATA.'/config.cache.inc.php';
  117. //更新配置函数
  118. function ReWriteConfig($conn)
  119. {
  120. global $configfile;
  121. if(!is_writeable($configfile))
  122. {
  123. echo "配置文件'{$configfile}'不支持写入,无法修改系统配置参数!";
  124. exit();
  125. }
  126. $fp = fopen($configfile,'w');
  127. flock($fp,3);
  128. fwrite($fp,"<"."?php\r\n");
  129. $sql = "SELECT `varname`,`type`,`value`,`groupid` FROM `#@__sysconfig` ORDER BY aid ASC ";
  130. $prefix="#@__";
  131. $sql = str_replace($prefix, $GLOBALS['cfg_dbprefix']."v6_", $sql);
  132. $result=mysqli_query($conn,$sql);
  133. while($row = mysqli_fetch_array($result,MYSQLI_ASSOC))
  134. {
  135. if($row['type']=='number')
  136. {
  137. if($row['value']=='') $row['value'] = 0;
  138. fwrite($fp,"\${$row['varname']} = ".$row['value'].";\r\n");
  139. }
  140. else
  141. {
  142. fwrite($fp,"\${$row['varname']} = '".str_replace("'",'',$row['value'])."';\r\n");
  143. }
  144. }
  145. fwrite($fp,"?".">");
  146. fclose($fp);
  147. }
  148. ?>