diff --git a/Makefile b/Makefile index bcb84bcb74..9704df9156 100644 --- a/Makefile +++ b/Makefile @@ -1,14 +1,14 @@ VERSION=$(shell head -n 1 VERSION) -all: tgz +all: prepare pms zstory ztask ztest clean: - rm -fr zentaopms + rm -fr {zentaopms,zentaostory,zentaotask,zentaotest,storyext,taskext,testext} rm -fr *.tar.gz rm -fr *.zip rm -fr api* rm -fr build/linux/lampp rm -fr lampp -tgz: +prepare: mkdir zentaopms cp -fr bin zentaopms/ cp -fr config zentaopms/ && rm -fr zentaopms/config/my.php @@ -42,18 +42,42 @@ tgz: chmod 777 zentaopms/module chmod a+rx zentaopms/bin/* find zentaopms/ -name ext |xargs chmod -R 777 - # add zentaotest zentaotask zentaostory extension. - svn export https://svn.cnezsoft.com/easysoft/trunk/zentaoext/zentaotest - svn export https://svn.cnezsoft.com/easysoft/trunk/zentaoext/zentaotask - svn export https://svn.cnezsoft.com/easysoft/trunk/zentaoext/zentaostory - zip -rm -9 zentaotest.zip zentaotest - zip -rm -9 zentaotask.zip zentaotask - zip -rm -9 zentaostory.zip zentaostory - mv zentaotest.zip zentaopms/tmp/extension - mv zentaostory.zip zentaopms/tmp/extension - mv zentaotask.zip zentaopms/tmp/extension - # zip it. +pms: + echo full > zentaopms/.flow zip -r -9 ZenTaoPMS.$(VERSION).zip zentaopms +zstory: + cp -frp zentaopms zentaostory + svn export https://svn.cnezsoft.com/easysoft/trunk/zentaoext/zentaostory storyext + cp -fr storyext/module/* zentaostory/module/ + find zentaostory/ -name ext |xargs chmod -R 777 + echo zentaostory > zentaostory/.flow + sed -e 's/zentao/story/g' zentaostory/www/.ztaccess > .ztaccess.bak + mv .ztaccess.bak zentaostory/www/.ztaccess + zip -r -9 ZenTaoStory.$(VERSION).zip zentaostory + rm -fr storyext + rm -fr zentaostory +ztask: + cp -frp zentaopms zentaotask + svn export https://svn.cnezsoft.com/easysoft/trunk/zentaoext/zentaotask taskext + cp -fr taskext/module/* zentaotask/module/ + find zentaotask/ -name ext |xargs chmod -R 777 + echo zentaotask > zentaotask/.flow + sed -e 's/zentao/task/g' zentaotask/www/.ztaccess > .ztaccess.bak + mv .ztaccess.bak zentaotask/www/.ztaccess + zip -r -9 ZenTaoTask.$(VERSION).zip zentaotask + rm -fr taskext + rm -fr zentaotask +ztest: + cp -frp zentaopms zentaotest + svn export https://svn.cnezsoft.com/easysoft/trunk/zentaoext/zentaotest testext + cp -fr testext/module/* zentaotest/module/ + find zentaotest/ -name ext |xargs chmod -R 777 + echo zentaotest > zentaotest/.flow + sed -e 's/zentao/test/g' zentaotest/www/.ztaccess > .ztaccess.bak + mv .ztaccess.bak zentaotest/www/.ztaccess + zip -r -9 ZenTaoTest.$(VERSION).zip zentaotest + rm -fr testext + rm -fr zentaotest rm -fr zentaopms patchphpdoc: sudo cp misc/doc/phpdoc/*.tpl /usr/share/php/data/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/ diff --git a/VERSION b/VERSION index 80e3420014..e213e0142e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5.0.beta1 +5.0.beta2 diff --git a/module/admin/control.php b/module/admin/control.php index 8924d8ee02..24bd712c76 100644 --- a/module/admin/control.php +++ b/module/admin/control.php @@ -181,22 +181,4 @@ class admin extends control $this->view->position[] = $this->lang->admin->clearData; $this->display(); } - - /** - * Set flow. - * - * @access public - * @return void - */ - public function setFlow() - { - if($_POST) - { - if($this->post->flow != 'full') die(js::locate($this->createLink('extension', 'install', "extension={$this->post->flow}"), 'parent')); - - $this->loadModel('setting')->setItem('system.common.global.flow', 'full'); - die(js::reload( 'parent.parent')); - } - $this->display(); - } } diff --git a/module/admin/lang/en.php b/module/admin/lang/en.php index 5d52870b45..2891b54bda 100644 --- a/module/admin/lang/en.php +++ b/module/admin/lang/en.php @@ -55,12 +55,3 @@ $lang->admin->bind = new stdclass(); $lang->admin->bind->caption = 'Bind with community account'; $lang->admin->bind->action = 'bind'; $lang->admin->bind->success = "Bind success"; - -$lang->admin->selectFlow = 'How do you plan to use zentao?'; - -$lang->admin->flowList['full'] = 'All features(including product, project, plan, release, story, task, bug, case, testtask, doc and so on.)'; -$lang->admin->flowList['zentaotest'] = 'Only testing(including product, release, bug, case, testtask, doc and so on.)'; -$lang->admin->flowList['zentaotask'] = 'Only task (including project, task, doc and so on.)'; -$lang->admin->flowList['zentaostory'] = 'Only story(including product, story, plan, release, doc and so on.)'; - -$lang->admin->flowNotice = "You can remove testing, task or story extension in admin->extension panel to use all features again."; diff --git a/module/admin/lang/zh-cn.php b/module/admin/lang/zh-cn.php index fd5e9e7b1e..c8347fb6cc 100644 --- a/module/admin/lang/zh-cn.php +++ b/module/admin/lang/zh-cn.php @@ -55,12 +55,3 @@ $lang->admin->bind = new stdclass(); $lang->admin->bind->caption = '关联社区账号'; $lang->admin->bind->action = '关联'; $lang->admin->bind->success = "关联账户成功"; - -$lang->admin->selectFlow = '您计划如何使用禅道?'; - -$lang->admin->flowList['full'] = '所有功能(包括产品、项目、需求、计划、发布、任务、Bug、用例、测试任务和文档等功能。)'; -$lang->admin->flowList['zentaotest'] = '仅测试管理(包括产品、版本、Bug、用例、测试任务和文档管理等功能。)'; -$lang->admin->flowList['zentaotask'] = '仅任务管理(包括项目、任务和文档管理。)'; -$lang->admin->flowList['zentaostory'] = '仅需求管理(包括产品、需求、计划、发布和文档管理等功能。)'; - -$lang->admin->flowNotice = "注:如果您使用的不是所有功能,后续可以到“管理->插件”中,卸载相应的插件,即可重新使用禅道所有功能。"; diff --git a/module/admin/view/setflow.html.php b/module/admin/view/setflow.html.php deleted file mode 100644 index a7cee5e37d..0000000000 --- a/module/admin/view/setflow.html.php +++ /dev/null @@ -1,36 +0,0 @@ - - * @package admin - * @version $Id$ - * @link http://www.zentao.net - */ -?> - -
- - - admin->flowList as $type => $name):?> - - - - - - - - - - -
admin->selectFlow?>
- $name"; - ?> -
{$lang->admin->flowNotice}

"?>
-
- - diff --git a/module/custom/config.php b/module/custom/config.php index 4007559eff..7e9ea47aba 100644 --- a/module/custom/config.php +++ b/module/custom/config.php @@ -47,6 +47,6 @@ $config->custom->todo->fields['statusList'] = '状态'; $config->custom->todo->canAdd = 'priList,typeList'; $config->custom->user = new stdClass(); -$config->custom->user->fields['roleList'] = '角色'; +$config->custom->user->fields['roleList'] = '职位'; $config->custom->user->fields['statusList'] = '状态'; $config->custom->user->canAdd = 'roleList'; diff --git a/module/my/control.php b/module/my/control.php index 0cb9b822a5..eabfb06279 100644 --- a/module/my/control.php +++ b/module/my/control.php @@ -43,7 +43,6 @@ class my extends control $this->app->loadClass('pager', true); $pager = new pager($recTotal = 1000, $this->config->my->dynamicCounts); // Init the $recTotal var, thus omit one sql query. - $this->view->setFlow = (!(isset($this->config->global->flow) or strpos($this->app->company->admins, ",{$this->app->user->account},") === false)) ? true : false; $this->view->projectStats = $projectStats; $this->view->productStats = $productStats; $this->view->actions = $this->loadModel('action')->getDynamic('all', 'latest3days', 'date_desc', $pager); diff --git a/module/my/js/index.js b/module/my/js/index.js index fdb7c7a150..a2c933d982 100644 --- a/module/my/js/index.js +++ b/module/my/js/index.js @@ -14,5 +14,4 @@ $(function() { $(this).sparkline('html', {height:'25px'}); }) - if(flow) $.colorbox({href:createLink('admin', 'setFlow'), open:true, width:800, height:277, transition:'none', iframe:true}); }); diff --git a/module/my/view/index.html.php b/module/my/view/index.html.php index 0d2d4e2062..0d0eb0bdd0 100644 --- a/module/my/view/index.html.php +++ b/module/my/view/index.html.php @@ -37,5 +37,4 @@ - diff --git a/module/project/view/taskheader.html.php b/module/project/view/taskheader.html.php index b5190ad469..9efa7b210a 100644 --- a/module/project/view/taskheader.html.php +++ b/module/project/view/taskheader.html.php @@ -57,7 +57,7 @@ echo "
  • " . html::a($link, $lang->project->importTask, '', $misc) . "
  • "; $misc = common::hasPriv('project', 'importBug') ? '' : "class=disabled"; - $link = common::hasPriv('project', 'importBug') ? $this->createLink('project', 'importTask', "project=$project->id") : '#'; + $link = common::hasPriv('project', 'importBug') ? $this->createLink('project', 'importBug', "project=$project->id") : '#'; echo "
  • " . html::a($link, $lang->project->importBug, '', $misc) . "
  • "; ?> diff --git a/module/testcase/model.php b/module/testcase/model.php index e8317d27b2..1dbc027066 100644 --- a/module/testcase/model.php +++ b/module/testcase/model.php @@ -62,6 +62,7 @@ class testcaseModel extends model foreach($this->post->steps as $stepID => $stepDesc) { if(empty($stepDesc)) continue; + $step = new stdClass(); $step->case = $caseID; $step->version = 1; $step->desc = htmlspecialchars($stepDesc); diff --git a/module/testcase/view/edit.html.php b/module/testcase/view/edit.html.php index 886b103abf..b7b0195dcb 100644 --- a/module/testcase/view/edit.html.php +++ b/module/testcase/view/edit.html.php @@ -13,6 +13,9 @@ +testcase->deleteStep);?> +testcase->insertBefore);?> +testcase->insertAfter);?>
    diff --git a/module/upgrade/model.php b/module/upgrade/model.php index bb38434846..b0b015c53b 100644 --- a/module/upgrade/model.php +++ b/module/upgrade/model.php @@ -83,7 +83,6 @@ class upgradeModel extends model $this->execSQL($this->getUpgradeFile('4.0')); case '4_0_1': $this->execSQL($this->getUpgradeFile('4.0.1')); - $this->processFlow(); $this->addPriv4_0_1(); case '4_1': $this->execSQL($this->getUpgradeFile('4.1')); @@ -627,29 +626,6 @@ class upgradeModel extends model } } - /** - * Process flow. - * - * @access public - * @return void - */ - public function processFlow() - { - /* First delete all flow records. */ - $this->setting->deleteItems('owner=system&module=common§ion=global&key=flow'); - - /* Search the extension table to check zentaotest, zentaotask, zentaostory exists or not. */ - $flow = 'full'; - $extension = $this->dao->select('code')->from(TABLE_EXTENSION) - ->where('code')->in('zentaotest,zentaotask,zentaostory') - ->andWhere('status')->eq('installed') - ->fetch('code'); - if($extension) $flow = 'only' . ucfirst(str_replace('zentao', '', $extension)); - - /* Update database again. */ - $this->setting->setItem('system.common.global.flow', $flow, 0); - } - /** * Add priv for version 4.0.1 * diff --git a/module/user/view/login.html.php b/module/user/view/login.html.php index 3671a2285c..f780f2b0fa 100644 --- a/module/user/view/login.html.php +++ b/module/user/view/login.html.php @@ -26,13 +26,18 @@ include '../../common/view/colorbox.html.php'; Language: langs, $this->app->getClientLang(), 'class=select-2 onchange=selectLang(this.value)');?> - user->keepLogin, $keepLogin);?> + + + + user->keepLogin, $keepLogin);?> + + + login); if($app->company->guest) echo html::linkButton($lang->user->asGuest, $this->createLink($config->default->module)); - commonModel::printQRCodeLink('white'); echo html::hidden('referer', $referer); ?>