不同版本的升級辦法:
====================

特別注意: 2.5到2.6版本為了向XML靠攏,改進了標籤調用的參數寫法,請自行查找並替換所有標籤中的參數加上引號

- Modify (非常重要) 標籤語法遵守XML方式,所有調用標籤參數的值必須用引號""括起來，比如:
         <CMS::LIST:List NodeID="1" TableID="2" Limit="">
         所有標籤的參數名不再區分大小寫,但調用標籤名要區分大小寫,如:
          <CMS::NODELIST:List NodeID='1'> 中的NODELIST必須大寫,但NodeID和nodeid一樣
（在官方論壇有模板轉換器下載，自動幫您轉換這些區別）



======================================================================
一、 完全備份所有的文檔,其中包括最重要的:

  /config.php    系統總配置文檔
  /templates/    所有的模板文檔
  /resource/     所有上傳的圖片資源原始目錄
  /plugins/bbsInterface/bbs/論壇名/bbs.config.php
                 論壇接口的配置文檔
  /publish/config.php
  /publish/js.config.php    前台動態應用插件配置文檔

  *所有發佈的頁面文檔和目錄只要不在CMSware目錄中一般不影響,但請自行備份

  特別注意:如果你自行改動過/setting/的函數配置文檔,則需要再次去進行更改




-----------------------------------------------------------
二、完整備份數據庫內容,使用系統後台的備份功能,也可以用phpMyAdmin完整插入方式備份




-----------------------------------------------------------
三、用新版本文檔完全覆蓋舊版本,注意以上重要配置文檔不要覆蓋




-----------------------------------------------------------
四、請執行update.php升級程序，在界面按您的版本，順序執行或是從2.1一次升級，直到2.5正式版
注意,如果沒有對應版本的升級文檔,則表示數據庫不需要升級,你可以跳過這步. 如有疑問,直接與技術支持聯繫


------------
手工升級方法：

或者，您想自己來手工執行升級就請參考以下

以下是手工執行一個版本一個版本升級的過程

升級 1.0.0905 到 1.1        執行 update1.0_1.1.php
升級 1.0.0905 到 1.1 SP1    執行 update1.0_1.1SP1.php
升級 1.1 to 2.0             執行 update1.1_2.0.php
升級 2.0 to 2.1             執行 update2_0to2_1.php
升級 2.1 to 2.5RC1          執行 update2_1to2_5.php
升級 2.5RC1到2.5RC2         覆蓋替換RC1文檔，注意config.php不要覆蓋

-----升級 2.5RC2 到 2.5RC3 -----------------------------------
1.使用RC3的文檔覆蓋RC2的文檔，注意不要覆蓋原RC2的config.php文檔

2.執行以下sql語句（推薦使用phpmyadmin）
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('CollectionPageNum', '15');
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('ContentPageNum', '15');
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('SearchPageNum', '15');

3.清空系統緩存
sysdata/Cache_*.php
sysdata/templates_c/*
sysdata/sysinfo/*


-----升級 2.5RC3 到 2.5RC4 或 2.5RC5----------------------------------
1.使用RC4的文檔覆蓋RC3的文檔，注意不要覆蓋原RC3的config.php文檔
2.執行以下sql語句（推薦使用phpmyadmin）
ALTER TABLE `cmsware_site` ADD COLUMN `WorkFlow` int(8) NOT NULL DEFAULT 0;
ALTER TABLE `cmsware_contribution_1` ADD INDEX `NodeID` (`NodeID`);
ALTER TABLE `cmsware_contribution_1` CHANGE COLUMN `State` `State` int(5) NULL DEFAULT 0;
ALTER TABLE `cmsware_contribution_2` ADD INDEX `NodeID` (`NodeID`);
ALTER TABLE `cmsware_contribution_2` CHANGE COLUMN `State` `State` int(5) NULL DEFAULT 0;

INSERT INTO `cmsware_group` VALUES (3, '編輯', '0', '', '', 0, 1, 0, 0, 0, 0);
INSERT INTO `cmsware_group` VALUES (4, '高級編輯', '0', '', '', 0, 1, 0, 0, 0, 0);

DROP TABLE IF EXISTS cmsware_workflow;
CREATE TABLE cmsware_workflow (
  `wID` int(8) NOT NULL auto_increment,
  `Name` varchar(30) default NULL,
  `Intro` text,
  PRIMARY KEY  (`wID`),
  UNIQUE KEY `wID` (`wID`)
) TYPE=MyISAM  ;

INSERT INTO `cmsware_workflow` VALUES (3, '稿件審核工作流', '測試！！');

DROP TABLE IF EXISTS cmsware_workflow_record;
CREATE TABLE cmsware_workflow_record (
  `OpID` int(8) NOT NULL auto_increment,
  `wID` int(8) default NULL,
  `Executor` int(8) default NULL,
  `OpName` varchar(50) default NULL,
  `StateBeforeOp` varchar(100) default NULL,
  `StateAfterOp` varchar(100) default NULL,
  `AppendNote` int(1) default '0',
  `OpIntro` text,
  PRIMARY KEY  (`OpID`),
  UNIQUE KEY `OpID` (`OpID`),
  KEY `wID` (`wID`)
) TYPE=MyISAM  ;


INSERT INTO `cmsware_workflow_record` VALUES (3, 3, 3, '設置為「正在編輯」', '1/103', '100', 0, '將用戶的投稿設置為「正在編輯「狀態');
INSERT INTO `cmsware_workflow_record` VALUES (4, 3, 3, '通過審核', '100', '101', 0, NULL);
INSERT INTO `cmsware_workflow_record` VALUES (5, 3, 3, '打回作者', '100/1/103', '3', 1, '');
INSERT INTO `cmsware_workflow_record` VALUES (6, 3, 4, '設置為「正在編輯」', '101', '102', 0, NULL);
INSERT INTO `cmsware_workflow_record` VALUES (7, 3, 4, '打回給作者', '102/101', '3', 1, NULL);
INSERT INTO `cmsware_workflow_record` VALUES (8, 3, 4, '打回給編輯', '102/101', '103', 1, '');
INSERT INTO `cmsware_workflow_record` VALUES (9, 3, 4, '通過終審', '102', '2', 0, '完成稿件的審核,稿件被導入內容庫,等待發佈');
INSERT INTO `cmsware_workflow_record` VALUES (10, 3, 3, '撤回', '101', '100', 0, NULL);

DROP TABLE IF EXISTS cmsware_workflow_state;
CREATE TABLE cmsware_workflow_state (
  `ID` int(8) NOT NULL auto_increment,
  `Name` char(30) default NULL,
  `State` int(5) default NULL,
  `System` int(1) default '0',
  PRIMARY KEY  (`ID`),
  UNIQUE KEY `ID` (`ID`),
  UNIQUE KEY `State` (`State`)
) TYPE=MyISAM  ;

INSERT INTO `cmsware_workflow_state` VALUES (1, '新增', 0, 1);
INSERT INTO `cmsware_workflow_state` VALUES (2, '刪除', -1, 1);
INSERT INTO `cmsware_workflow_state` VALUES (3, '已投稿', 1, 1);
INSERT INTO `cmsware_workflow_state` VALUES (4, '被打回', 3, 1);
INSERT INTO `cmsware_workflow_state` VALUES (5, '已錄用', 2, 1);
INSERT INTO `cmsware_workflow_state` VALUES (9, '正在編輯(編輯)', 100, 0);
INSERT INTO `cmsware_workflow_state` VALUES (11, '審核通過(編輯)', 101, 0);
INSERT INTO `cmsware_workflow_state` VALUES (12, '正在編輯(高級編輯)', 102, 0);
INSERT INTO `cmsware_workflow_state` VALUES (13, '打回編輯(高級編輯)', 103, 0);


3.清空系統緩存
sysdata/Cache_*.php
sysdata/templates_c/*
sysdata/sysinfo/*

4.修改config.php 在下面這行的下面增加後面三行代碼，如下：
  $this->resource_ref = $db_config['table_pre'].'resource_ref';
  //這以下是RC4版本以後需要新增加的三行
  $this->workflow = $db_config['table_pre'].'workflow';
  $this->workflow_state = $db_config['table_pre'].'workflow_state';
  $this->workflow_record = $db_config['table_pre'].'workflow_record';




-----升級 2.5RC5 到 2.5RC6----------------------------------
1.使用RC6的文檔覆蓋RC5的文檔，注意不要覆蓋原RC5的config.php文檔
2.執行以下sql語句（推薦使用phpmyadmin,把表名前綴cmsware_改成你的）
ALTER TABLE `cmsware_collection_category` ADD COLUMN `InRunPlan` tinyint(1) NOT NULL DEFAULT 1; 
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('sessionTimeout', '120'); 
INSERT INTO `cmsware_content_fields` VALUES ('', 2, '界面預覽', 'Photo', 'varchar', '250', 'text', NULL, NULL, 'upload', NULL, NULL, 0, 0, 0, 0, 0); 
INSERT INTO `cmsware_content_fields` VALUES ('', 2, '本地上傳', 'LocalUpload', 'varchar', '250', 'text', NULL, NULL, 'upload_attach', NULL, NULL, 0, 0, 0, 0, 0); 
ALTER TABLE `cmsware_collection_2` ADD COLUMN `Photo` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_collection_2` ADD COLUMN `LocalUpload` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_content_2` ADD COLUMN `Photo` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_content_2` ADD COLUMN `LocalUpload` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_contribution_2` ADD COLUMN `Photo` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_contribution_2` ADD COLUMN `LocalUpload` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_publish_2` ADD COLUMN `Photo` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_publish_2` ADD COLUMN `LocalUpload` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_plugin_fulltext_search_2` ADD COLUMN `Photo` varchar(250) NOT NULL default ''; 
ALTER TABLE `cmsware_plugin_fulltext_search_2` ADD COLUMN `LocalUpload` varchar(250) NOT NULL default ''; 

3.清空系統緩存
sysdata/Cache_*.php
sysdata/templates_c/*
sysdata/sysinfo/*



-----升級 2.5RC6 到 2.5正式版 ----------------------------------
1.使用2.5正式版的文檔覆蓋RC6的文檔，注意不要覆蓋原RC6的config.php文檔
2.執行以下sql語句（推薦使用phpmyadmin,把表名前綴cmsware_改成你的）
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('isLogLogin', '1'); 
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('isLogAdmin', '1'); 
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('DisplayPublishCount', '1'); 
ALTER TABLE `cmsware_group` ADD COLUMN `canCollection` tinyint(1) NULL DEFAULT 0; 
ALTER TABLE `cmsware_content_fields` ADD COLUMN `EnableContribution` tinyint(1) NULL DEFAULT 1; 
ALTER TABLE `cmsware_content_fields` ADD COLUMN `EnableCollection` tinyint(1) NULL DEFAULT 1; 
ALTER TABLE `cmsware_content_fields` ADD COLUMN `EnablePublish` tinyint(1) NULL DEFAULT 1; 
ALTER TABLE `cmsware_site` ADD COLUMN `NodeGUID` char(250) NOT NULL AFTER `NodeID`; 
CREATE TABLE `cmsware_log_admin` ( `LogID` int(10) NOT NULL auto_increment, `uName` char(50) default NULL, `IP` char(15) default NULL, `Action` char(100) default NULL, `ActionURL` char(250) default NULL, `Time` int(10) default NULL, PRIMARY KEY (`LogID`) ) TYPE=MyISAM;
CREATE TABLE `cmsware_log_login` ( `LogID` int(10) NOT NULL auto_increment, `uName` char(50) default NULL, `IP` char(15) default NULL, `Time` int(10) default NULL, PRIMARY KEY (`LogID`) ) TYPE=MyISAM;
CREATE TABLE `cmsware_block_ip` ( `Id` int(6) unsigned NOT NULL auto_increment, `IP` char(15) NULL, `ExpireTime` int(10) NULL, `Reason` char(250) NULL, PRIMARY KEY (`Id`) ) TYPE=MyISAM;
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('LoginTryTime', '15'); 
INSERT INTO `cmsware_sys` (`varName`, `varValue`) VALUES ('LoginTryCount', '5'); 
ALTER TABLE `cmsware_tpl_vars` ADD COLUMN `IsGlobal` tinyint(1) NULL DEFAULT 1; 
ALTER TABLE `cmsware_tpl_vars` ADD COLUMN `NodeScope` text NULL; 
ALTER TABLE `cmsware_keywords` ADD COLUMN `IsGlobal` tinyint(1) NULL DEFAULT 1; 
ALTER TABLE `cmsware_keywords` ADD COLUMN `NodeScope` text NULL; 

3.RC6升級Stable的門戶版用戶請修改你的config.php 請在 
	$this->workflow_state = $db_config['table_pre'].'workflow_state'; 
	$this->workflow_record = $db_config['table_pre'].'workflow_record'; 
後面添加以下2行 
	$this->log_login = $db_config['table_pre'].'log_login'; 
	$this->log_admin = $db_config['table_pre'].'log_login';

4.清空系統緩存
sysdata/Cache_*.php
sysdata/templates_c/*
sysdata/sysinfo/*



-----升級 2.5 到 2.6版 ----------------------------------

請執行update.php


-----升級 2.6 到 2.7版 ----------------------------------

請執行update.php


-----升級 2.7 到 2.85版 ----------------------------------
(1)不增加新的頻道功能的用戶，就直接覆蓋升級，修改好相應的配置就可以了

(2)需要新頻道的，建議安裝一份新的完整包，然後參考裡面的模型和結點設置，參照著增加新結點，綁定模板，然後修改每個頻道模板目錄下的TplConfig.html. 
因為頻道基本是獨立的，就是結點＋模型＋模板的形式。TplConfig.html裡定義你的頻道結點的入口結點號. 
搬頻道一般就是模型＋模板＋結點，而會變的就只有結點號，我們定的結構就是各頻道都有一個TplConfig.html來存放此頻道的結點號和參數變量. 
搬頻道的方法，都是基礎操作，建立結點，建立模型，綁模板，改TplConfig.html，把skin目錄放到根，這些統統是基礎操作。
最後，如果再有需要，再根據自己的需求，修改模板裡的區塊代碼，或修正些錯誤。
(3)現在擴展包的兩個publish是一樣的，用到的只有根目錄的這個，cmsware/publish這個只是為了便於老用戶覆蓋
=====================================================
註：對應升級程序文檔名的txt文檔是各版本升級時的簡要說明

