This commit is contained in:
liyuchun
2021-10-19 20:23:19 +08:00
parent d3a6af49b6
commit 8c12096a92
11 changed files with 56 additions and 64 deletions

View File

@@ -16,14 +16,14 @@ $config->api->create->requiredFields = 'lib,title,path';
$config->api->edit = new stdclass();
$config->api->edit->requiredFields = 'lib,title,path';
$config->api->publish = new stdclass();
$config->api->publish->requiredFields = 'version';
$config->api->createrelease = new stdclass();
$config->api->createrelease->requiredFields = 'version';
$config->api->editor = new stdclass();
$config->api->editor->createlib = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->editlib = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->create = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->edit = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->publish = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->createstruct = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->editstruct = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->createlib = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->editlib = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->create = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->edit = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->createRelease = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->createstruct = array('id' => 'desc', 'tools' => 'simpleTools');
$config->api->editor->editstruct = array('id' => 'desc', 'tools' => 'simpleTools');

View File

@@ -82,13 +82,13 @@ class api extends control
}
/**
* Release manage page.
* Release list.
*
* @param int $libID
* @access public
* @return void
*/
public function editPublish($libID, $orderBy = 'id', $recTotal = 0, $recPerPage = 15, $pageID = 1)
public function releases($libID, $orderBy = 'id', $recTotal = 0, $recPerPage = 15, $pageID = 1)
{
$libs = $this->doc->getApiLibs();
$this->app->loadClass('pager', $static = true);
@@ -105,6 +105,7 @@ class api extends control
$this->view->orderBy = $orderBy;
$this->view->title = $this->lang->api->managePublish;
$this->view->libID = $libID;
$this->view->users = $this->loadModel('user')->getPairs('noletter');
$this->display();
}
@@ -122,20 +123,20 @@ class api extends control
}
else
{
$this->api->deletePublish($id);
$this->api->deleteRelease($id);
if(dao::isError()) return $this->sendError(dao::getError());
die(js::locate(inlink('editPublish', "libID=$libID"), 'parent'));
die(js::locate(inlink('releases', "libID=$libID"), 'parent'));
}
}
/**
* Publish a api doc lib.
* Create a api doc lib.
*
* @param int $libID
* @access public
* @return void
*/
public function publish($libID)
public function createRelease($libID)
{
$lib = $this->doc->getLibById($libID);
@@ -148,7 +149,7 @@ class api extends control
->get();
/* Check version is exist. */
if($this->api->getReleaseByVersion($libID, $data->version))
if(!empty($data->version) and $this->api->getReleaseByVersion($libID, $data->version))
{
return $this->sendError($this->lang->api->noUniqueVersion);
}
@@ -159,7 +160,7 @@ class api extends control
}
$libName = isset($lib->name) ? $lib->name : '';
$this->view->title = $this->lang->api->publish . $libName;
$this->view->title = $this->lang->api->createRelease . $libName;
$this->display();
}
@@ -632,9 +633,9 @@ class api extends control
/* Global struct link. */
$menu = '';
if($libID and common::hasPriv('api', 'publish'))
if($libID and common::hasPriv('api', 'createRelease'))
{
$menu .= html::a(helper::createLink('api', 'publish', "libID=$libID"), $this->lang->api->publish, '', 'class="btn btn-link iframe"');
$menu .= html::a(helper::createLink('api', 'createRelease', "libID=$libID"), $this->lang->api->createRelease, '', 'class="btn btn-link iframe"');
}
/* page of index menu. */
@@ -744,19 +745,6 @@ EOT;
return $output;
}
/**
* Show doc of api doc library
*
* @param int $libID
* @access public
* @return void
*/
public function showLibs($libID = 0)
{
$lib = $this->doc->getLibById($libID);
if(!empty($lib) and $lib->deleted == '1') $appendLib = $libID;
}
/**
* Return session to the client.
*

View File

@@ -17,8 +17,9 @@ $lang->api->sql = 'SQL Query API';
$lang->api->index = 'Api Doc Home';
$lang->api->editLib = 'Edit Api Doc';
$lang->api->deleteLib = 'Delete Api Doc';
$lang->api->publish = 'Publish';
$lang->api->editPublish = 'Edit Publish';
$lang->api->createRelease = 'Publish';
$lang->api->releases = 'Releases';
$lang->api->deleteRelease = 'Delete Release';
$lang->api->createLib = 'Create Api Library';
$lang->api->createApi = 'Create Api';
$lang->api->createAB = 'Create';

View File

@@ -16,9 +16,10 @@ $lang->api->sql = 'SQL查询接口';
$lang->api->index = '接口库主页';
$lang->api->editLib = '编辑接口库';
$lang->api->editPublish = '版本管理';
$lang->api->releases = '版本管理';
$lang->api->deleteRelease = '删除版本';
$lang->api->deleteLib = '删除接口库';
$lang->api->publish = '发布接口';
$lang->api->createRelease = '发布接口';
$lang->api->createLib = '创建接口库';
$lang->api->createApi = '创建接口';
$lang->api->createAB = '创建';

View File

@@ -60,7 +60,7 @@ class apiModel extends model
$data->snap = json_encode($snap);
$this->dao->insert(TABLE_API_LIB_RELEASE)->data($data)
->autoCheck()
->batchCheck($this->config->api->publish->requiredFields, 'notempty')
->batchCheck($this->config->api->createrelease->requiredFields, 'notempty')
->exec();
return dao::isError() ? false : $this->dao->lastInsertID();
@@ -73,7 +73,7 @@ class apiModel extends model
* @access public
* @return void
*/
public function deletePublish($id)
public function deleteRelease($id)
{
$this->dao->delete()->from(TABLE_API_LIB_RELEASE)
->where('id')->eq($id)

View File

@@ -18,9 +18,9 @@
<div id='mainContent' class='main-content'>
<div class='center-block'>
<div class='main-header'>
<h2><?php echo $lang->api->publish;?></h2>
<h2><?php echo $lang->api->createRelease;?></h2>
</div>
<form class='load-indicator main-form' id="apiForm" method='post' enctype='multipart/form-data'>
<form class='load-indicator main-form form-ajax' id="apiForm" method='post' enctype='multipart/form-data'>
<table class='table table-form'>
<tr>
<th><?php echo $lang->api->version?></th>

View File

@@ -20,11 +20,11 @@
<div id='title'>
<li class='menu-title'><?php echo $this->lang->api->module;?></li>
<?php
$canTreeBrowse = common::hasPriv('tree', 'browse');
$canEditPublish = common::hasPriv('api', 'editPublish');
$canEditLib = common::hasPriv('api', 'editLib');
$canDeleteLib = common::hasPriv('api', 'deleteLib');
$haveMoreButton = ($canTreeBrowse or $canEditPublish or $canEditLib or $canDeleteLib);
$canTreeBrowse = common::hasPriv('tree', 'browse');
$canViewReleases = common::hasPriv('api', 'releases');
$canEditLib = common::hasPriv('api', 'editLib');
$canDeleteLib = common::hasPriv('api', 'deleteLib');
$haveMoreButton = ($canTreeBrowse or $canViewReleases or $canEditLib or $canDeleteLib);
if(!$isRelease and $haveMoreButton)
{
@@ -32,7 +32,7 @@
echo html::a('javascript:;', "<i class='icon icon-ellipsis-v'></i>", '', "data-toggle='dropdown' class='btn btn-link'");
echo "<ul class='dropdown-menu pull-right'>";
if($canTreeBrowse) echo '<li>' . html::a($this->createLink('tree', 'browse', "rootID=$libID&view=api", '', true), '<i class="icon-cog-outline"></i> ' . $this->lang->api->manageType, '', "class='iframe'") . '</li>';
if($canEditPublish) echo '<li>' . html::a($this->createLink('api', 'editPublish', "libID=$libID", '', true), '<i class="icon-cog-outline"></i> ' . $this->lang->api->managePublish, '', "class='iframe'") . '</li>';
if($canViewReleases) echo '<li>' . html::a($this->createLink('api', 'releases', "libID=$libID", '', true), '<i class="icon-cog-outline"></i> ' . $this->lang->api->managePublish, '', "class='iframe'") . '</li>';
echo "<li class='divider'></li>";
if($canEditLib) echo '<li>' . html::a($this->createLink('api', 'editLib', "rootID=$libID"), '<i class="icon-edit"></i> ' . $lang->api->editLib, '', "class='iframe'") . '</li>';
if($canDeleteLib) echo '<li>' . html::a($this->createLink('api', 'deleteLib', "rootID=$libID"), '<i class="icon-trash"></i> ' . $lang->api->deleteLib, 'hiddenwin') . '</li>';

View File

@@ -38,7 +38,7 @@
<td><?php printf('%03d', $release->id);?></td>
<td><?php echo $release->version;?></td>
<td><?php echo $release->desc;?></td>
<td><?php echo $release->addedBy;?></td>
<td><?php echo zget($users, $release->addedBy, '');?></td>
<td class="c-date"><?php echo $release->addedDate;?></td>
<td class='c-actions'>
<?php echo html::a($this->createLink('api', 'deleteRelease', "libID=$libID&id=$release->id"), '<i class="icon-trash"></i>', 'hiddenwin', "title='{$lang->api->delete}' class='btn'");?>

View File

@@ -429,7 +429,7 @@ $lang->changelog['15.7'][] = 'api-index';
$lang->changelog['15.7'][] = 'api-createLib';
$lang->changelog['15.7'][] = 'api-editLib';
$lang->changelog['15.7'][] = 'api-deleteLib';
$lang->changelog['15.7'][] = 'api-publish';
$lang->changelog['15.7'][] = 'api-createRelease';
$lang->changelog['15.7'][] = 'api-struct';
$lang->changelog['15.7'][] = 'api-createStruct';
$lang->changelog['15.7'][] = 'api-editStruct';
@@ -437,4 +437,5 @@ $lang->changelog['15.7'][] = 'api-deleteStruct';
$lang->changelog['15.7'][] = 'api-create';
$lang->changelog['15.7'][] = 'api-edit';
$lang->changelog['15.7'][] = 'api-delete';
$lang->changelog['15.7'][] = 'api-editPublish';
$lang->changelog['15.7'][] = 'api-releases';
$lang->changelog['15.7'][] = 'api-deleteReleases';

View File

@@ -1385,19 +1385,20 @@ $lang->webhook->methodOrder[35] = 'chooseDept';
/* Others. */
$lang->resource->api = new stdclass();
$lang->resource->api->index = 'index';
$lang->resource->api->createLib = 'createLib';
$lang->resource->api->editLib = 'editLib';
$lang->resource->api->deleteLib = 'deleteLib';
$lang->resource->api->publish = 'publish';
$lang->resource->api->editPublish = 'editPublish';
$lang->resource->api->struct = 'struct';
$lang->resource->api->createStruct = 'createStruct';
$lang->resource->api->editStruct = 'editStruct';
$lang->resource->api->deleteStruct = 'deleteStruct';
$lang->resource->api->create = 'create';
$lang->resource->api->edit = 'edit';
$lang->resource->api->delete = 'delete';
$lang->resource->api->index = 'index';
$lang->resource->api->createLib = 'createLib';
$lang->resource->api->editLib = 'editLib';
$lang->resource->api->deleteLib = 'deleteLib';
$lang->resource->api->createRelease = 'createRelease';
$lang->resource->api->releases = 'releases';
$lang->resource->api->deleteRelease = 'deleteRelease';
$lang->resource->api->struct = 'struct';
$lang->resource->api->createStruct = 'createStruct';
$lang->resource->api->editStruct = 'editStruct';
$lang->resource->api->deleteStruct = 'deleteStruct';
$lang->resource->api->create = 'create';
$lang->resource->api->edit = 'edit';
$lang->resource->api->delete = 'delete';
$lang->resource->api->getModel = 'getModel';
$lang->resource->api->debug = 'debug';
@@ -1407,8 +1408,8 @@ $lang->api->methodOrder[0] = 'index';
$lang->api->methodOrder[5] = 'createLib';
$lang->api->methodOrder[10] = 'editLib';
$lang->api->methodOrder[15] = 'deleteLib';
$lang->api->methodOrder[20] = 'publish';
$lang->api->methodOrder[21] = 'editPublish';
$lang->api->methodOrder[20] = 'createRelease';
$lang->api->methodOrder[21] = 'releases';
$lang->api->methodOrder[25] = 'struct';
$lang->api->methodOrder[30] = 'createStruct';
$lang->api->methodOrder[35] = 'editStruct';