diff --git a/module/project/css/createguide.ui.css b/module/project/css/createguide.ui.css new file mode 100644 index 0000000000..312875ab7d --- /dev/null +++ b/module/project/css/createguide.ui.css @@ -0,0 +1,2 @@ +#modelList .model-block {flex: 1 1 30%; padding: 20px;} +#modelList .model-block .border {border-radius: 4px;} diff --git a/module/project/js/createguide.ui.js b/module/project/js/createguide.ui.js new file mode 100644 index 0000000000..dc9583dbb5 --- /dev/null +++ b/module/project/js/createguide.ui.js @@ -0,0 +1,9 @@ +$(document).on('click', '.model-item', function() +{ + const link = $(this).data('url'); + if(!link) return false; + + zui.Modal.hide(); + + loadPage(link); +}); diff --git a/module/project/ui/createguide.html.php b/module/project/ui/createguide.html.php new file mode 100644 index 0000000000..f961d130b0 --- /dev/null +++ b/module/project/ui/createguide.html.php @@ -0,0 +1,69 @@ + + * @package project + * @link https://www.zentao.net + */ +namespace zin; + +div +( + setClass('modal-header justify-center font-bold'), + h3($lang->project->chooseProgramType) +); + +$hasWaterfall = helper::hasFeature('waterfall'); +$hasWaterfallPlus = helper::hasFeature('waterfallplus'); + +$createLink = createLink("project", "create", "model=%s&programID=$programID©ProjectID=0&extra=productID=$productID,branchID=$branchID"); +$itemList = array(); +foreach($lang->project->modelList as $model => $modelName) +{ + if(empty($model)) continue; + if(!$hasWaterfall && $model == 'waterfall') continue; + if(!$hasWaterfallPlus && $model == 'waterfallplus') continue; + + $titleKey = "{$model}Title"; + $itemList[] = center + ( + setClass('model-block'), + div + ( + setClass('model-item modal-content items-center cursor-pointer'), + set('data-url', sprintf($createLink, $model)), + img + ( + setClass('border'), + set::src("theme/default/images/main/{$model}.png") + ), + h3 + ( + setClass('mt-2 font-bold'), + $lang->project->{$model} + ), + p($lang->project->$titleKey) + ) + ); +} + +div +( + setID('modelList'), + setClass('flex items-center flex-wrap'), + $itemList, + center + ( + setClass('model-block'), + div + ( + setClass('border'), + p($lang->project->moreModelTitle) + ) + ), +); + +render('modalDialog');