ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 6553


Ignore:
Timestamp:
Apr 14, 2008, 11:51:33 PM (12 years ago)
Author:
ebihara
Message:

#2249:モジュールからエントリーポイントを追加・削除できるようにした

Location:
OpenPNE/branches/work/prj_c_module_template
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/work/prj_c_module_template/webapp/lib/smarty_plugins/resource.db.php

    r4933 r6553  
    99    $sql = 'SELECT source FROM c_template WHERE name = ?';
    1010    $params = array(strval($tpl_name));
    11     if ($res = db_get_one($sql, $params)) {
     11    $res = db_get_one($sql, $params);
     12
     13    $sql = 'SELECT source FROM c_module_template INNER JOIN c_module USING (c_module_id)'
     14         . ' WHERE template_name = ? AND c_module.is_enabled = 1';
     15    $params = array(strval($tpl_name));
     16    $module_templates = db_get_col($sql, $params);
     17    foreach ($module_templates as $module_template) {
     18        $res .= $module_template;
     19    }
     20
     21    if ($res) {
    1222        $tpl_source = $res;
    1323        return true;
  • OpenPNE/branches/work/prj_c_module_template/webapp_ext/modules/example/do/install.php

    r6552 r6553  
    99    function execute($requests)
    1010    {
     11        $target = 'inc_entry_point_h_home_1';
     12
    1113        $sql = 'SELECT c_module_id FROM c_module WHERE name = ?';
    1214        $c_module_id = db_get_one($sql, array('example'));
    1315
    1416        $data = array(
    15             'template_name' => 'inc_entry_point_h_home_1',
     17            'template_name' => $target,
    1618            'c_module_id' => $c_module_id,
    1719            'source' => 'example',
     
    1921        $id = db_insert('c_module_template', $data);
    2022
     23        $sql = 'SELECT c_template_id FROM c_template WHERE name = ?';
     24        if ((bool)db_get_one($sql, array($target))) {
     25            db_update('c_template', array('r_datetime' => db_now()), array('name' => $target));
     26        } else {
     27            db_insert('c_template', array('r_datetime' => db_now(), 'name' => $target, 'source' => ''));
     28        }
     29
    2130        exit($id);
    2231    }
  • OpenPNE/branches/work/prj_c_module_template/webapp_ext/modules/example/do/uninstall.php

    r6552 r6553  
    99    function execute($requests)
    1010    {
     11        $target = 'inc_entry_point_h_home_1';
     12
    1113        $sql = 'SELECT c_module_id FROM c_module WHERE name = ?';
    1214        $c_module_id = db_get_one($sql, array('example'));
     
    1517        db_query($sql, array($c_module_id));
    1618
     19        $sql = 'SELECT c_template_id FROM c_template WHERE name = ?';
     20        if ((bool)db_get_one($sql, array($target))) {
     21            $sql = 'SELECT source FROM c_template WHERE name = ?';
     22            if ((bool)db_get_one($sql, array($target))) {
     23                db_update('c_template', array('r_datetime' => db_now()), array('name' => $target));
     24            } else {
     25                $sql = 'DELETE FROM c_template WHERE name = ?';
     26                db_query($sql, array($target));
     27            }
     28        }
    1729        exit;
    1830    }
Note: See TracChangeset for help on using the changeset viewer.