issue 46 apply validator to trackback module

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8559 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ovclas 2011-07-01 07:15:37 +00:00
parent 402bfe6ab5
commit ab0e63b954
8 changed files with 60 additions and 16 deletions

View file

@ -8,8 +8,8 @@
<action name="trackback" type="controller" standalone="true" />
<action name="procTrackbackSend" type="controller" standalone="true" />
<action name="procTrackbackAdminDeleteChecked" type="controller" standalone="true" />
<action name="procTrackbackSend" type="controller" standalone="true" ruleset="sendTrackback" />
<action name="procTrackbackAdminDeleteChecked" type="controller" standalone="true" ruleset="deleteChecked" />
<action name="procTrackbackAdminInsertConfig" type="controller" standalone="true" />
<action name="procTrackbackAdminInsertModuleConfig" type="controller" standalone="true" />
</actions>

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<ruleset version="1.5.0">
<customrules>
</customrules>
<fields>
<field name="cart" required="true" />
</fields>
</ruleset>

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<ruleset version="1.5.0">
<customrules>
<rule name="charset" type="enum" test="UTF-8, EUC-KR, EUC-JP, SHIFT_JIS, EUC-CN, HZ, BIG5" />
</customrules>
<fields>
<field name="target_srl" required="true" rule="number" />
<field name="trackback_url" required="true" rule="url" />
<field name="charset" required="true" rule="charset" default="UTF-8" />
</fields>
</ruleset>

View file

@ -1,10 +1,10 @@
<!--%import("filter/send_trackback.xml")-->
<div id="popHeader" class="wide">
<h3 class="xeAdmin">{$lang->cmd_send_trackback}</h3>
</div>
<form action="./" method="get" onsubmit="return procFilter(this, send_trackback)">
<p class="xe_validator_error">{$XE_VALIDATOR_ERROR}</p>
<form ruleset="sendTrackback" action="./" method="post">
<input type="hidden" name="act" value="procTrackbackSend" />
<input type="hidden" name="target_srl" value="{$oDocument->document_srl}" />
<div id="popBody">

View file

@ -1,10 +1,10 @@
<!--%import("filter/delete_checked.xml")-->
<!--%import("filter/insert_config.xml")-->
<!--%import("js/trackback_admin.js")-->
<h3 class="xeAdmin">{$lang->trackback} <span class="gray">{$lang->cmd_management}</span></h3>
<form action="./" method="get" onsubmit="return procFilter(this, insert_config)">
<p class="xe_validator_error">{$XE_VALIDATOR_ERROR}</p>
<form action="./" method="post">
<input type="hidden" name="act" value="procTrackbackAdminInsertConfig" />
<table cellspacing="0" class="rowTable topGap">
<tr class="row2">
<th scope="col"><div>{$lang->enable_trackback}</div></th>
@ -42,7 +42,8 @@
</form>
</div>
<form id="fo_list" action="./" method="get" onsubmit="return procFilter(this, delete_checked)">
<form ruleset="deleteChecked" id="fo_list" action="./" method="post">
<input type="hidden" name="act" value="procTrackbackAdminDeleteChecked" />
<input type="hidden" name="page" value="{$page}" />
<!-- 모듈 선택 -->
@ -69,7 +70,7 @@
<!--@foreach($trackback_list as $no => $val)-->
<tr class="row{$cycle_idx}">
<td rowspan="2" class="center number" scope="col">{$no}</td>
<td rowspan="2" class="center"><input type="checkbox" name="cart" value="{$val->trackback_srl}" /></td>
<td rowspan="2" class="center"><input type="checkbox" name="cart[]" value="{$val->trackback_srl}" /></td>
<td rowspan="2"><div class="w200"><a href="{$val->url}" onclick="window.open(this.href); return false;">{htmlspecialchars($val->blog_name)}</a></div></td>
<td ><a href="{getUrl('','document_srl',$val->document_srl)}#trackback_{$val->trackback_srl}" onclick="window.open(this.href);return false;">{htmlspecialchars($val->title)}</a></td>
<td class="date center nowrap">{zdate($val->regdate,"Y-m-d")}</td>

View file

@ -1,6 +1,6 @@
<!--%import("filter/insert_trackback_module_config.xml")-->
<form action="./" method="post" onsubmit="return procFilter(this, insert_trackback_module_config)">
<form action="./" method="post">
<input type="hidden" name="act" value="procTrackbackAdminInsertModuleConfig" />
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', $module, 'act', $act, 'module_srl', $module_srl)}" />
<input type="hidden" name="target_module_srl" value="{$trackback_config->module_srl?$trackback_config->module_srl:$module_srls}" />
<h4 class="xeAdmin">{$lang->trackback}</h4>

View file

@ -19,8 +19,9 @@
function procTrackbackAdminDeleteChecked() {
// An error appears if no document is selected
$cart = Context::get('cart');
if(!$cart) return $this->stop('msg_cart_is_null');
$trackback_srl_list= explode('|@|', $cart);
if(!is_array($cart)) $trackback_srl_list= explode('|@|', $cart);
else $trackback_srl_list = $cart;
$trackback_count = count($trackback_srl_list);
if(!$trackback_count) return $this->stop('msg_cart_is_null');
@ -34,6 +35,11 @@
}
$this->setMessage( sprintf(Context::getLang('msg_checked_trackback_is_deleted'), $trackback_count) );
if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispTrackbackAdminList');
header('location:'.$returnUrl);
return;
}
}
/**
@ -45,6 +51,11 @@
$oModuleController = &getController('module');
$output = $oModuleController->insertModuleConfig('trackback',$config);
if($output->toBool() && !in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispTrackbackAdminList');
header('location:'.$returnUrl);
return;
}
return $output;
}
@ -70,6 +81,11 @@
$this->setError(-1);
$this->setMessage('success_updated');
if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispBoardAdminContent');
header('location:'.$returnUrl);
return;
}
}
/**

View file

@ -35,7 +35,15 @@
$module_info = $oModuleModel->getModuleInfoByModuleSrl($oDocument->get('module_srl'));
Context::setBrowserTitle($module_info->browser_title);
// Shipping yeokingeul
return $this->sendTrackback($oDocument, $trackback_url, $charset);
$output = $this->sendTrackback($oDocument, $trackback_url, $charset);
if($output->toBool() && !in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
global $lang;
alertScript($lang->success_registed);
reload(true);
closePopupScript();
exit;
}
return $output;
}
/**