OSDN Git Service

#17690 - Append ability list.
authormumin <mumincacao@users.sourceforge.jp>
Sun, 6 Sep 2009 09:26:00 +0000 (18:26 +0900)
committermumin <mumincacao@users.sourceforge.jp>
Sun, 6 Sep 2009 09:26:00 +0000 (18:26 +0900)
13 files changed:
documents/changes.en.txt
documents/changes.ja.txt
trust_path/modules/sd3rd/actions/AbilityListAction.class.php [new file with mode: 0644]
trust_path/modules/sd3rd/class/handler/Update.class.php
trust_path/modules/sd3rd/forms/AbilityFilterForm.class.php [new file with mode: 0644]
trust_path/modules/sd3rd/language/english/main.php
trust_path/modules/sd3rd/language/english/modinfo.php
trust_path/modules/sd3rd/language/ja_utf8/main.php
trust_path/modules/sd3rd/language/ja_utf8/modinfo.php
trust_path/modules/sd3rd/language/japanese/main.php
trust_path/modules/sd3rd/language/japanese/modinfo.php
trust_path/modules/sd3rd/templates/sd3rd_ability_list.html [new file with mode: 0644]
trust_path/modules/sd3rd/xoops_version.php

index bbee648..e6e1c23 100644 (file)
@@ -1,3 +1,4 @@
+#17690 - Append ability list.
 #18552 - &quot; is not normalized.
 #18551 - Omit eno and full name extract process.
 #18550 - Cannot extract multi element skill data.
index 2b75f3f..6094e95 100644 (file)
@@ -1,3 +1,4 @@
+#17690 - \82 \82Ñ\82è\82·\82Æ\82 \82­\82µ\82å\82ñ\82ð\92Ç\89Á
 #18552 - \82Å\81[\82½\92\86\82É\8fo\82Ä\82­\82é\82¾\82Ô\82é\82­\82§\81[\82Æ\82Ì\88µ\82¢\82ª\82¨\82©\82µ\82©\82Á\82½\82Ì\82Å\8fC\90³
 #18551 - \8ed\97l\95Ï\8dX\82Å\82Ó\82é\82Ë\81[\82Þ\82Ì\8eæ\93¾\95û\96@\82ª\95Ï\82í\82Á\82Ä\82é\82©\82ç\88ê\8e\9e\93I\82É\92â\8e~
 #18550 - \95¡\8d\87\91®\90«\82·\82«\82é\82Ì\91®\90«\82Å\81[\82½\82ª\82¿\82á\82ñ\82Æ\95Û\91\82Å\82«\82Ä\82È\82©\82Á\82½\82Ì\82ð\8fC\90³
diff --git a/trust_path/modules/sd3rd/actions/AbilityListAction.class.php b/trust_path/modules/sd3rd/actions/AbilityListAction.class.php
new file mode 100644 (file)
index 0000000..358d045
--- /dev/null
@@ -0,0 +1,76 @@
+<?php
+/**
+ * @file
+ * @package sd3rd
+ * @version $Id$
+**/
+
+if(!defined('XOOPS_ROOT_PATH'))
+{
+    exit;
+}
+
+require_once SD3RD_TRUST_PATH . '/class/AbstractListAction.class.php';
+
+/**
+ * Sd3rd_AbilityListAction
+**/
+class Sd3rd_AbilityListAction extends Sd3rd_AbstractListAction
+{
+    /**
+     * &_getHandler
+     * 
+     * @param   void
+     * 
+     * @return  Sd3rd_AbilityHandler
+    **/
+    protected function &_getHandler()
+    {
+        $handler =& $this->mAsset->getObject('handler', 'Ability');
+        return $handler;
+    }
+
+    /**
+     * &_getFilterForm
+     * 
+     * @param   void
+     * 
+     * @return  Sd3rd_AbilityFilterForm
+    **/
+    protected function &_getFilterForm()
+    {
+        $filter =& $this->mAsset->getObject('filter', 'Ability',false);
+        $filter->prepare($this->_getPageNavi(), $this->_getHandler());
+        return $filter;
+    }
+
+    /**
+     * _getBaseUrl
+     * 
+     * @param   void
+     * 
+     * @return  string
+    **/
+    protected function _getBaseUrl()
+    {
+        return './index.php?action=AbilityList';
+    }
+
+    /**
+     * executeViewIndex
+     * 
+     * @param   XCube_RenderTarget  &$render
+     * 
+     * @return  void
+    **/
+    public function executeViewIndex(/*** XCube_RenderTarget ***/ &$render)
+    {
+        $render->setTemplateName($this->mAsset->mDirname . '_ability_list.html');
+        #cubson::lazy_load_array('ability', $this->mObjects);
+        $render->setAttribute('objects', $this->mObjects);
+        $render->setAttribute('pageNavi', $this->mFilter->mNavi);
+        $render->setAttribute('updateHandler',$this->mAsset->getObject('handler','Update'));
+    }
+}
+
+?>
index e95dfd5..9f2fe10 100644 (file)
@@ -26,6 +26,18 @@ class Sd3rd_UpdateObject extends XoopsSimpleObject
     {
         $this->initVar('update_time', XOBJ_DTYPE_INT, '', false);
     }
+    
+    /**
+     * Get formated update time.
+     * 
+     * @param   void
+     * 
+     * @return  string
+    **/
+    public function format()
+    {
+        return date('Y/m/d',strtotime(20000000 + $this->get('update_time')));
+    }
 }
 
 /**
@@ -34,9 +46,7 @@ class Sd3rd_UpdateObject extends XoopsSimpleObject
 class Sd3rd_UpdateHandler extends XoopsObjectGenericHandler
 {
     public /*** string ***/ $mTable = '{dirname}_update';
-
     public /*** string ***/ $mPrimary = 'update_time';
-
     public /*** string ***/ $mClass = 'Sd3rd_UpdateObject';
 
     /**
@@ -52,6 +62,20 @@ class Sd3rd_UpdateHandler extends XoopsObjectGenericHandler
         $this->mTable = strtr($this->mTable,array('{dirname}' => $dirname));
         parent::__construct($db);
     }
+    
+    /**
+     * Get update time list.
+     * 
+     * @param   void
+     * 
+     * @return  Sd3rd_UpdateObject[]
+    **/
+    public function getList()
+    {
+        $cri = new CriteriaCompo();
+        $cri->addSort('update_time','DESC');
+        return $this->getObjects($cri);
+    }
 }
 
 ?>
diff --git a/trust_path/modules/sd3rd/forms/AbilityFilterForm.class.php b/trust_path/modules/sd3rd/forms/AbilityFilterForm.class.php
new file mode 100644 (file)
index 0000000..50185a5
--- /dev/null
@@ -0,0 +1,83 @@
+<?php
+/**
+ * @file
+ * @package sd3rd
+ * @version $Id$
+**/
+
+if(!defined('XOOPS_ROOT_PATH'))
+{
+    exit;
+}
+
+require_once SD3RD_TRUST_PATH . '/class/AbstractFilterForm.class.php';
+
+define('SD3RD_ABILITY_SORT_KEY_ABILITY_NAME', 1);
+define('SD3RD_ABILITY_SORT_KEY_DEFAULT', SD3RD_ABILITY_SORT_KEY_ABILITY_NAME);
+
+/**
+ * Sd3rd_AbilityFilterForm
+**/
+class Sd3rd_AbilityFilterForm extends Sd3rd_AbstractFilterForm
+{
+    public /*** string[] ***/ $mSortKeys = array(
+        SD3RD_ABILITY_SORT_KEY_ABILITY_NAME => 'ability_name',
+    );
+
+    /**
+     * getDefaultSortKey
+     * 
+     * @param   void
+     * 
+     * @return  void
+    **/
+    public function getDefaultSortKey()
+    {
+        return SD3RD_ABILITY_SORT_KEY_DEFAULT;
+    }
+
+    /**
+     * fetch
+     * 
+     * @param   void
+     * 
+     * @return  void
+    **/
+    public function fetch()
+    {
+        parent::fetch();
+        $request =& XCube_Root::getSingleton()->mContext->mRequest;
+    
+        if(($value = $request->getRequest('ability_cost')) !== null)
+        {
+            if(ctype_digit($value))
+            {
+                $value = intval($value);
+                $this->_mCriteria->add(new Criteria('ability_cost', $value));
+            }
+            else
+            {
+                $value = null;
+            }
+        }
+        $this->mNavi->addExtra('ability_cost', $value);
+    
+        if(($value = $request->getRequest('register_time')) !== null)
+        {
+            if(ctype_digit($value))
+            {
+                $value = intval($value);
+                $this->_mCriteria->add(new Criteria('register_time', $value));
+            }
+            else
+            {
+                $value = null;
+            }
+        }
+        $this->mNavi->addExtra('register_time', $value);
+    
+        $this->_mCriteria->addSort($this->getSort(), $this->getOrder());
+    }
+}
+
+?>
index 56e2d68..1f8c3a2 100644 (file)
@@ -16,5 +16,14 @@ define('_MD_SD3RD_ERROR_OBJECTEXIST', "Incorrect input on {0}.");
 define('_MD_SD3RD_ERROR_DBUPDATE_FAILED', "Failed updating database.");
 define('_MD_SD3RD_ERROR_EMAIL', "{0} is an incorrect email address.");
 define('_MD_SD3RD_MESSAGE_CONFIRM_DELETE', "Are you sure to delete?");
+define('_MD_SD3RD_LANG_ADD_A_NEW_ABILITY', "ADD_A_NEW_ABILITY");
+define('_MD_SD3RD_LANG_ABILITY_ID', "ABILITY_ID");
+define('_MD_SD3RD_LANG_ABILITY_NAME', "ABILITY_NAME");
+define('_MD_SD3RD_LANG_DESCRIPTION', "DESCRIPTION");
+define('_MD_SD3RD_LANG_ABILITY_COST', "ABILITY_COST");
+define('_MD_SD3RD_LANG_CAN_UPGRADE', "CAN_UPGRADE");
+define('_MD_SD3RD_LANG_UPGRADE', "UPGRADE");
+define('_MD_SD3RD_LANG_REGISTER_TIME', "REGISTER_TIME");
+define('_MD_SD3RD_LANG_CONTROL', "CONTROL");
 
 ?>
index d4949f5..3a8c210 100644 (file)
@@ -52,5 +52,6 @@ define('_MI_SD3RD_LANG_SD3RD', "SD3RD");
 define('_MI_SD3RD_DESC_SD3RD', "SD3RD");
 define('_MI_SD3RD_LANG_AUTHOR', "AUTHOR");
 define('_MI_SD3RD_LANG_CREDITS', "CREDITS");
+define('_MI_SD3RD_TPL_ABILITY_LIST', "ABILITY_LIST");
 
 ?>
index ccede1b..451d04b 100644 (file)
@@ -16,5 +16,14 @@ define('_MD_SD3RD_ERROR_OBJECTEXIST', "{0}の入力値が不正です");
 define('_MD_SD3RD_ERROR_DBUPDATE_FAILED', "データベースの更新に失敗しました");
 define('_MD_SD3RD_ERROR_EMAIL', "{0}は不正なメールアドレスです");
 define('_MD_SD3RD_MESSAGE_CONFIRM_DELETE', "以下のデータを本当に削除しますか?");
+define('_MD_SD3RD_LANG_ADD_A_NEW_ABILITY', "ADD_A_NEW_ABILITY");
+define('_MD_SD3RD_LANG_ABILITY_ID', "ABILITY_ID");
+define('_MD_SD3RD_LANG_ABILITY_NAME', "あび名");
+define('_MD_SD3RD_LANG_DESCRIPTION', "詳細");
+define('_MD_SD3RD_LANG_ABILITY_COST', "AC");
+define('_MD_SD3RD_LANG_CAN_UPGRADE', "CAN_UPGRADE");
+define('_MD_SD3RD_LANG_UPGRADE', "UPGRADE");
+define('_MD_SD3RD_LANG_REGISTER_TIME', "REGISTER_TIME");
+define('_MD_SD3RD_LANG_CONTROL', "CONTROL");
 
 ?>
index a8f1739..be302ef 100644 (file)
@@ -52,5 +52,6 @@ define('_MI_SD3RD_LANG_SD3RD', "SD3RD");
 define('_MI_SD3RD_DESC_SD3RD', "SD3RD");
 define('_MI_SD3RD_LANG_AUTHOR', "AUTHOR");
 define('_MI_SD3RD_LANG_CREDITS', "CREDITS");
+define('_MI_SD3RD_TPL_ABILITY_LIST', "ABILITY_LIST");
 
 ?>
index de4852c..4edac9e 100644 (file)
@@ -16,5 +16,14 @@ define('_MD_SD3RD_ERROR_OBJECTEXIST', "{0}
 define('_MD_SD3RD_ERROR_DBUPDATE_FAILED', "¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¹¹¿·¤Ë¼ºÇÔ¤·¤Þ¤·¤¿");
 define('_MD_SD3RD_ERROR_EMAIL', "{0}¤ÏÉÔÀµ¤Ê¥á¡¼¥ë¥¢¥É¥ì¥¹¤Ç¤¹");
 define('_MD_SD3RD_MESSAGE_CONFIRM_DELETE', "°Ê²¼¤Î¥Ç¡¼¥¿¤òËÜÅö¤Ëºï½ü¤·¤Þ¤¹¤«¡©");
+define('_MD_SD3RD_LANG_ADD_A_NEW_ABILITY', "ADD_A_NEW_ABILITY");
+define('_MD_SD3RD_LANG_ABILITY_ID', "ABILITY_ID");
+define('_MD_SD3RD_LANG_ABILITY_NAME', "¤¢¤Ó̾");
+define('_MD_SD3RD_LANG_DESCRIPTION', "¾ÜºÙ");
+define('_MD_SD3RD_LANG_ABILITY_COST', "AC");
+define('_MD_SD3RD_LANG_CAN_UPGRADE', "CAN_UPGRADE");
+define('_MD_SD3RD_LANG_UPGRADE', "UPGRADE");
+define('_MD_SD3RD_LANG_REGISTER_TIME', "REGISTER_TIME");
+define('_MD_SD3RD_LANG_CONTROL', "CONTROL");
 
 ?>
index baa136f..aa6afad 100644 (file)
@@ -52,5 +52,6 @@ define('_MI_SD3RD_LANG_SD3RD', "SD3RD");
 define('_MI_SD3RD_DESC_SD3RD', "SD3RD");
 define('_MI_SD3RD_LANG_AUTHOR', "AUTHOR");
 define('_MI_SD3RD_LANG_CREDITS', "CREDITS");
+define('_MI_SD3RD_TPL_ABILITY_LIST', "ABILITY_LIST");
 
 ?>
diff --git a/trust_path/modules/sd3rd/templates/sd3rd_ability_list.html b/trust_path/modules/sd3rd/templates/sd3rd_ability_list.html
new file mode 100644 (file)
index 0000000..a86d831
--- /dev/null
@@ -0,0 +1,43 @@
+<form action="./index.php" method="get">
+  <fieldset>
+    <input type="hidden" name="action" value="AbilityList" />
+    <label for="sd3rd_ability_register_time">Date</label> :
+    <select id="sd3rd_ability_register_time" name="register_time">
+      <option value=""<{if $pageNavi->mExtra.register_time === null}> selected="selected"<{/if}>>--</option>
+      <{foreach from=$updateHandler->getList() item=u}>
+        <option value="<{$u->getShow('update_time')}>"<{if $pageNavi->mExtra.register_time === $u->get('update_time')}> selected="selected"<{/if}>><{$u->format()}></option>
+      <{/foreach}>
+    </select>
+    <label for="sd3rd_ability_cost">AC</label> :
+    <select id="sd3rd_ability_cost" name="ability_cost">
+      <option value=""<{if $pageNavi->mExtra.ability_cost === null}> selected="selected"<{/if}>>--</option>
+      <{foreach from=0|range:8 item=ac}>
+        <option value="<{$ac}>"<{if $pageNavi->mExtra.ability_cost === $ac}> selected="selected"<{/if}>><{$ac}></option>
+      <{/foreach}>
+    </select>
+    <input type="submit" />
+  </fieldset>
+</form>
+
+<{if count($objects) > 0}>
+  <div class="pagenavi"><{xoops_pagenavi pagenavi=$pageNavi}></div>
+  <table class="outer" summary="">
+    <thead>
+      <tr>
+        <th><{$smarty.const._MD_SD3RD_LANG_ABILITY_NAME}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_DESCRIPTION}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_ABILITY_COST}></th>
+      </tr>
+    </thead>
+    <tbody>
+      <{foreach item=obj from=$objects}>
+        <tr class="<{cycle values='odd,even'}>">
+          <td><{$obj->getShow('ability_name')}></td>
+          <td><{$obj->getShow('description')}></td>
+          <td><{$obj->getShow('ability_cost')}></td>
+        </tr>
+      <{/foreach}>
+    </tbody>
+  </table>
+  <div class="pagenavi"><{xoops_pagenavi pagenavi=$pageNavi}></div>
+<{/if}>
index b1beef3..f9ed212 100644 (file)
@@ -69,6 +69,7 @@ $modversion['templates'] = array(
     ),
 */
 ##[cubson:templates]
+    array('file' => '{dirname}_ability_list.html','description' => _MI_SD3RD_TPL_ABILITY_LIST),
 ##[/cubson:templates]
 );