issue 70 rss module admin UI/UX developement, yet not completed

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8819 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ovclas 2011-08-22 05:57:52 +00:00
parent 2d6da41a4e
commit eee0e538c3
8 changed files with 217 additions and 94 deletions

View file

@ -276,7 +276,7 @@
{ {
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if($logged_info->is_admin=='Y'){ if($logged_info->is_admin=='Y'){
$oAdminView = &getView('admin'); $oAdminView = &getAdminView('admin');
$oAdminView->makeGnbUrl($forward->module); $oAdminView->makeGnbUrl($forward->module);
$oModule->setLayoutPath("./modules/admin/tpl"); $oModule->setLayoutPath("./modules/admin/tpl");
$oModule->setLayoutFile("layout.html"); $oModule->setLayoutFile("layout.html");

View file

@ -404,4 +404,32 @@
$returnObject->add('list', $list); $returnObject->add('list', $list);
return $returnObject; return $returnObject;
} }
/**
* @brief Return site list
**/
function getSiteAllList()
{
if(Context::get('domain')) $args->domain = Context::get('domain');
$columnList = array('domain', 'site_srl');
$siteList = array();
$output = executeQueryArray('admin.getSiteAllList', $args, $columnList);
if($output->toBool()) $siteList = $output->data;
$this->add('site_list', $siteList);
}
/**
* @brief Return site count
**/
function getSiteCountByDate($date = '')
{
if($date) $args->regDate = date('Ymd', strtotime($date));
$output = executeQuery('admin.getSiteCountByDate', $args);
if(!$output->toBool()) return 0;
return $output->data->count;
}
} }

View file

@ -171,9 +171,9 @@
$today = date("Ymd"); $today = date("Ymd");
// Site Status // Site Status
$oSiteModel = &getModel('site'); $oAdminAdminModel = &getAdminModel('admin');
$status->site->todayCount = $oSiteModel->getSiteCountByDate($today); $status->site->todayCount = $oAdminAdminModel->getSiteCountByDate($today);
$status->site->totalCount = $oSiteModel->getSiteCountByDate(); $status->site->totalCount = $oAdminAdminModel->getSiteCountByDate();
// Member Status // Member Status
$oMemberAdminModel = &getAdminModel('member'); $oMemberAdminModel = &getAdminModel('member');

View file

@ -141,46 +141,50 @@
'subMenu'=>array('poll'), 'subMenu'=>array('poll'),
), ),
8=>array( 8=>array(
'module'=>'rss',
'subMenu'=>array('rss'),
),
9=>array(
'module'=>'importer', 'module'=>'importer',
'subMenu'=>array('importer'), 'subMenu'=>array('importer'),
), ),
9=>array( 10=>array(
'module'=>'admin', 'module'=>'admin',
'subMenu'=>array('theme'), 'subMenu'=>array('theme'),
), ),
10=>array( 11=>array(
'module'=>'autoinstall', 'module'=>'autoinstall',
'subMenu'=>array('easyInstall'), 'subMenu'=>array('easyInstall'),
), ),
11=>array( 12=>array(
'module'=>'layout', 'module'=>'layout',
'subMenu'=>array('installedLayout'), 'subMenu'=>array('installedLayout'),
), ),
12=>array( 13=>array(
'module'=>'module', 'module'=>'module',
'subMenu'=>array('installedModule'), 'subMenu'=>array('installedModule'),
), ),
13=>array( 14=>array(
'module'=>'widget', 'module'=>'widget',
'subMenu'=>array('installedWidget'), 'subMenu'=>array('installedWidget'),
), ),
14=>array( 15=>array(
'module'=>'addon', 'module'=>'addon',
'subMenu'=>array('installedAddon'), 'subMenu'=>array('installedAddon'),
), ),
15=>array( 16=>array(
'module'=>'editor', 'module'=>'editor',
'subMenu'=>array('editor'), 'subMenu'=>array('editor'),
), ),
16=>array( 17=>array(
'module'=>'spamfilter', 'module'=>'spamfilter',
'subMenu'=>array('spamFilter'), 'subMenu'=>array('spamFilter'),
), ),
17=>array( 18=>array(
'module'=>'admin', 'module'=>'admin',
'subMenu'=>array('adminConfiguration', 'adminMenuSetup'), 'subMenu'=>array('adminConfiguration', 'adminMenuSetup'),
), ),
18=>array( 19=>array(
'module'=>'file', 'module'=>'file',
'subMenu'=>array('fileUpload'), 'subMenu'=>array('fileUpload'),
), ),
@ -241,6 +245,7 @@
case 'trackback': case 'trackback':
case 'file': case 'file':
case 'poll': case 'poll':
case 'rss':
case 'importer': case 'importer':
return 'content'; return 'content';
break; break;

View file

@ -0,0 +1,12 @@
<query id="getSiteAllList" action="select">
<tables>
<table name="sites" />
</tables>
<columns>
<column name="*" />
</columns>
<conditions>
<condition operation="in" column="site_srl" var="siteSrls" />
<condition operation="like" column="domain" var="domain" pipe="and" />
</conditions>
</query>

View file

@ -0,0 +1,11 @@
<query id="getSiteCountByDate" action="select">
<tables>
<table name="sites" />
</tables>
<columns>
<column name="count(*)" alias="count" />
</columns>
<conditions>
<condition operation="like_prefix" column="regdate" var="regDate" />
</conditions>
</query>

View file

@ -3,11 +3,26 @@
<grants /> <grants />
<permissions /> <permissions />
<actions> <actions>
<action name="dispRssAdminIndex" type="view" index="true" standalone="true" admin_index="true" /> <action name="dispRssAdminIndex" type="view" index="true" standalone="true" admin_index="true" menu_name="rss" menu_index="true" />
<action name="rss" type="view" standalone="true" /> <action name="rss" type="view" standalone="true" />
<action name="atom" type="view" standalone="true" /> <action name="atom" type="view" standalone="true" />
<action name="procRssAdminToggleActivate" type="controller" standalone="true" /> <action name="procRssAdminToggleActivate" type="controller" standalone="true" />
<action name="procRssAdminInsertConfig" type="controller" standalone="true" ruleset="insertRssConfig" /> <action name="procRssAdminInsertConfig" type="controller" standalone="true" ruleset="insertRssConfig" />
<action name="procRssAdminInsertModuleConfig" type="controller" standalone="true" ruleset="insertRssModuleConfig" /> <action name="procRssAdminInsertModuleConfig" type="controller" standalone="true" ruleset="insertRssModuleConfig" />
</actions> </actions>
<menus>
<menu name="rss">
<title xml:lang="en">RSS</title>
<title xml:lang="ko">RSS</title>
<title xml:lang="zh-CN">RSS</title>
<title xml:lang="jp">RSS</title>
<title xml:lang="es">RSS</title>
<title xml:lang="ru">RSS</title>
<title xml:lang="fr">RSS</title>
<title xml:lang="zh-TW">RSS</title>
<title xml:lang="vi">RSS</title>
<title xml:lang="mn">RSS</title>
<title xml:lang="tr">RSS</title>
</menu>
</menus>
</module> </module>

View file

@ -1,83 +1,135 @@
<!--%import("js/rss.js")--> <!--%import("js/rss.js")-->
<h3 class="xeAdmin">{$lang->total_feed} <span class="gray">{$lang->cmd_management}</span></h3> <div class="content" id="content">
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}"> <div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
<p>{$XE_VALIDATOR_MESSAGE}</p> <p>{$XE_VALIDATOR_MESSAGE}</p>
</div> </div>
<form ruleset="insertRssConfig" id="fo_layout" action="./" method="post" enctype="multipart/form-data"> <h1 class="h1">RSS</h1>
<input type="hidden" name="module" value="rss" /> <form ruleset="insertRssConfig" id="fo_layout" action="./" method="post" enctype="multipart/form-data" class="form">
<input type="hidden" name="act" value="procRssAdminInsertConfig" /> <input type="hidden" name="module" value="rss" />
<table cellspacing="0" class="rowTable"> <input type="hidden" name="act" value="procRssAdminInsertConfig" />
<tr> <h2 class="h2">{$lang->total_feed} {$lang->cmd_management}</h2>
<th scope="row"><div>{$lang->total_feed}</div></th> <ul>
<td class="wide"> <li>
<select name="use_total_feed" class="w200"> <p class="q">{$lang->total_feed}</p>
<option value="Y" <!--@if(!$total_config->use_total_feed || $total_config->use_total_feed == 'Y')-->selected="selected"<!--@end-->>{$lang->use}</option> <p class="a">
<option value="N" <!--@if($total_config->use_total_feed == 'N')-->selected="selected"<!--@end-->>{$lang->notuse}</option> <input type="radio" name="use_total_feed" value="Y" id="use_total_feed_yes" <!--@if(!$total_config->use_total_feed || $total_config->use_total_feed == 'Y')-->checked="checked"<!--@end--> /> <label for="use_total_feed_yes">{$lang->use}</label>
</select> <input type="radio" name="use_total_feed" value="N" id="use_total_feed_no" <!--@if($total_config->use_total_feed == 'N')-->checked="checked"<!--@end--> /> <label for="use_total_feed_no">{$lang->notuse}</label>
</td> </p>
</tr> </li>
<tr> <li>
<th scope="row"><div>{$lang->title}</div></th> <p class="q"><label for="feed_title">{$lang->title}</label></p>
<td class="wide"> <p class="a"><input type="text" name="feed_title" value="{htmlspecialchars($total_config->feed_title)}" id="feed_title" /></p>
<input type="text" class="inputTypeText" name="feed_title" value="{htmlspecialchars($total_config->feed_title)}" /> </li>
</td> <li>
</tr> <p class="q"><label for="feed_description">{$lang->description}</label></p>
<tr> <p class="a"><textarea name="feed_description" id="feed_description" cols="42" rows="5">{$total_config->feed_description}</textarea></p>
<th scope="row"><div>{$lang->description}</div></th> </li>
<td class="wide"> <li>
<textarea name="feed_description" class="inputTypeTextArea">{$total_config->feed_description}</textarea> <p class="q"><label for="image">{$lang->feed_image}</label></p>
</td>
</tr>
<tr>
<th scope="row"><div>{$lang->feed_image}</div></th>
<td class="wide">
<!--@if($total_config->image)--> <!--@if($total_config->image)-->
<div> <p class="a">
<img src="../../../{$total_config->image}" alt="image" /><br /> <img src="../../../{$total_config->image}" alt="image" />
<input type="checkbox" name="del_image" value="Y" id="del_image" class="checkbox" /> <input type="checkbox" name="del_image" value="Y" id="del_image" class="checkbox" />
<label for="del_image">{$lang->cmd_delete}</label> <label for="del_image">{$lang->cmd_delete}</label>
</div> </p>
<!--@end--> <!--@end-->
<input type="file" name="image" value="" /> <p class="a"><input type="file" name="image" value="" id="image" /></p>
</td> </li>
</tr> <li>
<tr> <p class="q"><label for="feed_copyright">{$lang->feed_copyright}</label></p>
<th scope="row"><div>{$lang->feed_copyright}</div></th> <p class="a"><input type="text" name="feed_copyright" value="{htmlspecialchars($total_config->feed_copyright)}" id="feed_copyright" /></p>
<td class="wide"> </li>
<input type="text" class="inputTypeText" name="feed_copyright" value="{htmlspecialchars($total_config->feed_copyright)}" /> <li>
<p>{$lang->about_feed_copyright}</p> <p class="q"><label for="feed_document_count">{$lang->feed_document_count}</label></p>
</td> <p class="a"><input type="text" name="feed_document_count" value="{$total_config->feed_document_count}" id="feed_document_count" /></p>
</tr> </li>
<tr> </ul>
<th scope="row"><div>{$lang->feed_document_count}</div></th> <div class="btnArea">
<td class="wide"> <span class="btn small"><input type="submit" value="{$lang->cmd_save}" /></span>
<input type="text" class="inputTypeText" name="feed_document_count" value="{$total_config->feed_document_count}" /> </div>
<p>{$lang->about_feed_document_count}</p> </form>
</td> <form action="" class="form">
</tr> <h2 class="h2">Each Feed</h2>
<tr class="row2"> <div class="table">
<th class="button" colspan="2"><span class="button strong black"><input type="submit" value="{$lang->cmd_save}"/></span></th> <table width="100%" border="1" cellspacing="0">
</tr>
</table>
</form>
<h3 class="xeAdmin">{$lang->feed} <span class="gray">{$lang->cmd_management}</span></h3>
<table cellspacing="0" class="crossTable">
<thead> <thead>
<tr> <tr>
<th scope="col">{$lang->mid}</td> <th scope="col">Module ID</th>
<th scope="col">{$lang->open_rss}</td> <th scope="col" class="title">Title/Description</th>
<th scope="col">{$lang->open_feed_to_total}</td> <th scope="col">
<input type="radio" name="feed_open" id="feed_open_all" /> <label for="feed_open_all">전문</label>
<input type="radio" name="feed_open" id="feed_open_summary" /> <label for="feed_open_summary">요약</label>
<input type="radio" name="feed_open" id="feed_open_not" /> <label for="feed_open_not">공개 안함</label>
</th>
<th scope="col">
<input type="checkbox" name="feed_integration" id="feed_integration" checked="checked" />
<label for="feed_integration">통합 피드에 포함</label>
</th>
<th scope="col">저장</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<!--@foreach($feed_config as $module_srl => $config)-->
<tr> <tr>
<th><!--@if($config['url'])--><a href="{$config['url']}"><!--@endif-->{$config['mid']}<!--@if($config['url'])--></a><!--@endif--></th> <th scope="row"><a href="#" target="_blank">freeBoard</a></th>
<td>{$lang->open_rss_types[$config['open_feed']]}</td> <td class="title">&nbsp;</td>
<td><a id="dotogglerss_{$module_srl}" onclick="doToggleRss('{$module_srl}')" <!--@if($config['open_total_feed'] == 'T_N')-->class="buttonSet buttonDisable"><span>{$lang->notuse}<!--@else-->class="buttonSet buttonActive"><span>{$lang->use}<!--@end--></span></a></td> <td>
<input type="radio" name="feed_open_freeBoard" id="feed_open_freeBoard_all" checked="checked" /> <label for="feed_open_freeBoard_all">전문</label>
<input type="radio" name="feed_open_freeBoard" id="feed_open_freeBoard_summary" /> <label for="feed_open_freeBoard_summary">요약</label>
<input type="radio" name="feed_open_freeBoard" id="feed_open_freeBoard_not" /> <label for="feed_open_freeBoard_not">공개 안함</label>
</td>
<td>
<input type="checkbox" name="feed_integration" id="feed_integration_freeBoard" checked="checked" />
<label for="feed_integration_freeBoard">통합 피드에 포함</label>
</td>
<td><input type="submit" value="Save" class="text" /></td>
</tr>
<tr>
<th scope="row"><a href="#" target="_blank">userForum</a></th>
<td class="title">&nbsp;</td>
<td>
<input type="radio" name="feed_open_userForum" id="feed_open_userForum_all" checked="checked" /> <label for="feed_open_userForum_all">전문</label>
<input type="radio" name="feed_open_userForum" id="feed_open_userForum_summary" /> <label for="feed_open_userForum_summary">요약</label>
<input type="radio" name="feed_open_userForum" id="feed_open_userForum_not" /> <label for="feed_open_userForum_not">공개 안함</label>
</td>
<td>
<input type="checkbox" name="feed_integration" id="feed_integration_userForum" checked="checked" />
<label for="feed_integration_userForum">통합 피드에 포함</label>
</td>
<td><input type="submit" value="Save" class="text" /></td>
</tr> </tr>
<!--@end-->
</tbody> </tbody>
</table> </table>
</div>
</form>
<div class="search">
<form action="" class="pagination">
<a href="#" class="direction">« FIRST</a>
<a href="#">9</a>
<a href="#">10</a>
<strong>11</strong>
<a href="#">12</a>
<a href="#goTo" class="tgAnchor">...</a>
<span id="goTo" class="tgContent" style="display: none; "><button type="button" class="tgBlur"></button>
<input title="Go to Page">
<button type="submit">GO</button>
<button type="button" class="tgBlur"></button></span>
<a href="#">99</a>
<a href="#" class="direction">LAST »</a>
</form>
<form action="">
<select>
<option>제목</option>
<option>내용</option>
<option>닉네임</option>
<option>아이디</option>
<option>사용자 이름</option>
<option>공지사항</option>
<option>IP 주소</option>
<option>모듈 아이디</option>
</select>
<input title="Search">
<input type="submit" value="Search">
<a href="#">Cancel</a>
</form>
</div>
</div>