Beispiel #1
0
 public function onInfo()
 {
     $header['title'] = '控制中心';
     page::header($header);
     page::top();
     page::navbar(array(array('id' => 'main', 'title' => '首页', 'href' => url::build('zotop/index/main')), array('id' => 'info', 'title' => '系统信息', 'href' => url::build('zotop/index/info'))));
     page::bottom();
     page::footer();
 }
Beispiel #2
0
 public function onDefault()
 {
     $tables = $this->db->table()->get(true);
     $header['title'] = '数据库管理';
     page::header($header);
     page::add('<div id="page" class="clearfix">');
     page::add('<div id="side">');
     block::header('数据库基本信息');
     table::header();
     table::row(array('w60' => '数据库名称', '2' => '' . $this->db->config['database'] . ''));
     table::row(array('w60' => '数据库版本', '2' => '' . $this->db->version(true) . ''));
     table::row(array('w60' => '数据库大小', '2' => '<b>' . $this->db->size() . '</b> '));
     table::row(array('w60' => '数据表个数', '2' => '<b>' . count($tables) . '</b> 个'));
     table::footer();
     block::footer();
     page::add('</div>');
     page::add('<div id="main">');
     page::top();
     page::navbar($this->navbar(), 'table');
     //zotop::dump($tables);
     form::header(array('class' => 'ajax'));
     $column['select'] = '<input name="id" class="selectAll" type="checkbox"/>';
     $column['name'] = '数据表名称';
     $column['size  w60'] = '大小';
     $column['Rows  w60'] = '记录数';
     $column['Engine  w60'] = '类型';
     $column['Collation  w100'] = '整理';
     $column['manage view w60'] = '浏览';
     $column['manage delete'] = '删除';
     table::header('list', $column);
     foreach ($tables as $table) {
         $size = $table['Data_length'] + $table['Index_length'];
         $column = array();
         $column['select'] = '<input name="id[]" class="select" type="checkbox"/>';
         $column['name'] = '<b>' . $table['Name'] . '</b><h5>' . $table['Comment'] . '</h5>';
         $column['size w60'] = (string) format::size($size);
         $column['Rows  w60'] = $table['Rows'];
         $column['Engine  w60'] = $table['Engine'];
         $column['collation  w100'] = $table['Collation'];
         $column['manage view w60'] = '<a href="' . url::build('system/database/table/record') . '">浏览</a>';
         $column['manage delete'] = '<a href="' . url::build('system/database/table/delete') . '" class="confirm">删除</a>';
         table::row($column);
     }
     table::footer();
     page::add('<div style="height:200px;"></div>');
     form::buttons(array('type' => 'select', 'style' => 'width:180px', 'options' => array('check' => '优化', 'delete' => '删除')), array('type' => 'submit', 'value' => '执行操作'));
     form::footer();
     page::bottom();
     page::add('</div>');
     page::add('</div>');
     page::footer();
 }
Beispiel #3
0
 public static function latest_post()
 {
     $cache = kirby()->cache()->get('facebook.latest.post');
     if (!is_null($cache)) {
         return response::json($cache);
     }
     $response = remote::get(url::build(array('scheme' => static::$graph_scheme, 'host' => static::$graph_host, 'fragments' => array(c::get('facebook.id'), 'posts'), 'query' => array('access_token' => c::get('facebook.accesstoken'), 'limit' => 1))));
     if ($response->content) {
         // parse json string
         $data = str::parse($response->content)['data'][0];
         $return = array('text' => $data['message'], 'picture' => $data['picture'], 'timestamp' => strtotime($data['updated_time']), 'time_formatted' => strftime('%d. %B %G', strtotime($data['updated_time'])), 'link' => $data['link']);
         // set cache for 10 minutes
         kirby()->cache()->set('facebook.latest.post', $return, 10);
     } else {
         return false;
     }
     return $return;
 }
Beispiel #4
0
 public function onDefault($status = -1)
 {
     $header['title'] = '短消息';
     page::header($header);
     page::top();
     page::navbar(array(array('id' => 'main', 'title' => '短消息列表', 'href' => url::build('zotop/msg')), array('id' => 'send', 'title' => '发送短消息', 'href' => url::build('zotop/msg/send'), 'class' => 'dialog {width:600}')), 'main');
     echo '<div style="padding:4px 15px;">';
     echo '<table class="list">';
     echo '<tr><td class="list-side">程序版本:</td><td>' . zotop::config('zotop.version') . '</td></tr>';
     echo '<tr><td class="list-side">程序设计:</td><td>' . zotop::config('zotop.author') . '</td></tr>';
     echo '<tr><td class="list-side">程序开发:</td><td>' . zotop::config('zotop.authors') . '</td></tr>';
     echo '<tr><td class="list-side">官方网站:</td><td><a href="' . zotop::config('zotop.homepage') . '" target="_blank">' . zotop::config('zotop.homepage') . '</a></td></tr>';
     echo '<tr><td class="list-side">安装时间:</td><td>' . zotop::config('zotop.install') . '</td></tr>';
     echo '</table>';
     echo '</div>';
     page::bottom();
     page::footer();
 }
Beispiel #5
0
 public function onDefault()
 {
     $header['title'] = '测试表单';
     page::header($header);
     page::top();
     page::navbar(array(array('id' => 'form', 'title' => '测试表单', 'href' => url::build('system/test')), array('id' => 'info', 'title' => '系统信息', 'href' => url::build('system/index/info'))), 'form');
     form::header(array('class' => 'ajax'));
     block::header(array('title' => '基本信息', 'action' => 'more'));
     form::add(array('type' => 'checkbox', 'label' => t('多选框'), 'name' => 'test1', 'options' => array('1' => 'a1', '2' => 'a2', '3' => 'a1', '4' => 'a2', '5' => 'a1', '6' => 'a2'), 'value' => array('1', '2'), 'description' => '最多只允许选择三项'));
     form::add(array('type' => 'checkbox', 'label' => t('多选框'), 'name' => 'test11', 'options' => array('1' => 'a1', '2' => 'a2', '3' => 'a1'), 'value' => array('1', '2'), 'class' => 'block', 'description' => '最多只允许选择三项'));
     form::add(array('type' => 'select', 'label' => '下拉列表', 'name' => 'test22', 'options' => array('1' => 'a1', '2' => 'a2', '3' => 'a1', '4' => 'a2', '5' => 'a1', '6' => 'a2'), 'value' => array('2', '4'), 'description' => '提示信息'));
     form::add(array('type' => 'select', 'label' => '下拉列表', 'name' => 'test2', 'options' => array('1' => 'a1', '2' => 'a2', '3' => 'a1', '4' => 'a2', '5' => 'a1', '6' => 'a2'), 'value' => '2', 'description' => '提示信息'));
     form::add(array('type' => 'text', 'label' => '文本框', 'name' => 'test3', 'value' => '2的飞洒的发生地', 'description' => '提示信息'));
     block::footer();
     block::header(array('title' => '高级信息', 'action' => 'more'));
     form::add(array('type' => 'image', 'label' => '上传图片', 'name' => 'test4', 'value' => '2的飞洒的发生地', 'valid' => 'required:true', 'description' => '提示信息'));
     form::add(array('type' => 'textarea', 'label' => '文本框', 'name' => 'test32', 'value' => '2的飞洒的发生地', 'valid' => 'required:true,maxlength:500', 'description' => '提示信息'));
     form::add(array('label' => '组合', 'type' => 'group', 'fields' => array(array('label' => '年', 'name' => 'year', 'type' => 'text'), array('label' => '月', 'name' => 'month', 'type' => 'text'), array('label' => '日', 'name' => 'day', 'type' => 'text')), 'description' => '生成一个复合控件'));
     block::footer();
     form::buttons(array('type' => 'submit'), array('type' => 'reset'));
     form::footer();
     page::bottom();
     page::footer();
 }
Beispiel #6
0
 public static function redirect($url, $time = 0)
 {
     $url = url::build($url);
     header("Location: " . $url);
     exit;
 }
Beispiel #7
0
 /**
  * Returns a page url for any given page number
  * 
  * @param int $page The page number
  * @return string The url
  */
 public function pageURL($page)
 {
     if ($this->options['method'] == 'query') {
         $query = url::query();
         if ($page == 1) {
             unset($query[$this->options['variable']]);
         } else {
             $query[$this->options['variable']] = $page;
         }
         return url::build(array('query' => $query));
     } else {
         $params = url::params();
         if ($page == 1) {
             unset($params[$this->options['variable']]);
         } else {
             $params[$this->options['variable']] = $page;
         }
         return url::build(array('params' => $params));
     }
 }
Beispiel #8
0
 public function navbar()
 {
     return array(array('id' => 'default', 'title' => '系统角色列表', 'href' => url::build('zotop/role')), array('id' => 'add', 'title' => '添加角色', 'href' => url::build('zotop/role/add')), array('id' => 'edit', 'title' => '修改角色'));
 }
Beispiel #9
0
 public function navbar()
 {
     return array(array('id' => 'tables', 'title' => '数据库管理', 'href' => url::build('system/database')));
 }
Beispiel #10
0
 public static function redirect($url, $params = null, $fragment = '')
 {
     $url = url::build($url);
     header("Location: " . $url);
     exit;
 }
Beispiel #11
0
 public function navbar()
 {
     return array(array('id' => 'main', 'title' => '基本设置', 'href' => url::build('zotop/index/main')), array('id' => 'info', 'title' => '系统信息', 'href' => url::build('zotop/index/info')));
 }
Beispiel #12
0
 public function navbar()
 {
     return array(array('id' => 'default', 'title' => '图片库', 'href' => url::build('zotop/upload/default')), array('id' => 'upload', 'title' => '本地上传', 'href' => url::build('zotop/upload/image')), array('id' => 'bing', 'title' => 'Bing搜索', 'href' => url::build('zotop/upload/bing')));
 }
Beispiel #13
0
 public function navbar()
 {
     return array(array('id' => 'default', 'title' => '系统用户列表', 'href' => url::build('zotop/user')), array('id' => 'add', 'title' => '添加系统用户', 'href' => url::build('zotop/user/add')), array('id' => 'changepassword', 'title' => '修改密码'), array('id' => 'changeinfo', 'title' => '修改资料'));
 }
Beispiel #14
0
 public function navbar()
 {
     return array(array('id' => 'edit', 'title' => '文件编辑', 'href' => url::build('filemanager/file/edit')));
 }
Beispiel #15
0
 public function onDefault($tablename)
 {
     $tables = zotop::db()->tables(true);
     $table = $tables[$tablename];
     $fields = array();
     if (isset($table)) {
         $fields = zotop::db()->table($tablename)->fields(true);
     }
     $indexes = zotop::db()->table($tablename)->index();
     $page['title'] = '数据库管理 <i>></i> 数据表 [ <b>' . $tablename . '</b> ]  <h6>' . $table['comment'] . '</h6>';
     page::header($page);
     page::add('<div id="page" class="clearfix">');
     page::add('<div id="main">');
     page::add('<div id="main-inner">');
     page::top();
     page::navbar($this->navbar($tablename), 'fields');
     form::header(array('class' => 'list'));
     $column = array();
     $column['select'] = html::checkbox(array('name' => 'id', 'class' => 'selectAll'));
     //$column['key w30 center'] = '索引';
     $column['name'] = '字段名称';
     $column['type w150'] = '字段类型';
     //$column['null w50'] = '空值';
     //$column['default w100'] = '默认值';
     //$column['comment'] = '注释';
     $column['manage pri'] = '主键';
     $column['manage index'] = '索引';
     $column['manage unique'] = '唯一';
     $column['manage fulltext'] = '全文';
     $column['manage edit'] = '修改';
     $column['manage delete'] = '删除';
     table::header('list', $column);
     foreach ($fields as $field) {
         $column = array();
         $column['select'] = html::checkbox(array('name' => 'id[]', 'class' => 'select'));
         //$column['key w30 center'] = '<span class="'.$field['key'].'">'.$field['key'].'</span>';
         $column['name'] = '<a href="' . zotop::url('database/field/edit', array('table' => $tablename, 'field' => $field['name'])) . '" title="注释:' . $field['comment'] . '&#13;默认:' . $field['default'] . '&#13;空值:' . $field['null'] . '&#13;整理:' . $field['collation'] . '"><b class="' . $field['key'] . '">' . $field['name'] . '</b></a><h5>' . $field['comment'] . '</h5>';
         $column['type w150'] = $field['type'] . (empty($field['length']) ? '' : '(' . $field['length'] . ')');
         //$column['null w50'] = $field['null'];
         //$column['default w100'] = $field['default'];
         //$column['comment'] = $field['comment'];
         $column['manage pri'] = '<a href="' . zotop::url('database/field/primaryKey', array('table' => $tablename, 'field' => $field['name'])) . '" class="confirm {content:\'<h2>确定要将该字段设置为主键?</h2>\'}">主键</a>';
         $column['manage index'] = '<a href="' . zotop::url('database/field/index', array('table' => $tablename, 'field' => $field['name'])) . '" class="confirm {content:\'<h2>确定要索引该字段?</h2>\'}">索引</a>';
         $column['manage unique'] = '<a href="' . zotop::url('database/field/unique', array('table' => $tablename, 'field' => $field['name'])) . '" class="confirm {content:\'<h2>确定要将该字段设置为唯一?</h2>\'}">唯一</a>';
         if (stripos((string) $field['type'], 'varchar') !== false || stripos((string) $field['type'], 'text') !== false) {
             $column['manage fulltext'] = '<a href="' . zotop::url('database/field/fulltext', array('table' => $tablename, 'field' => $field['name'])) . '" class="confirm {content:\'<h2>确定要将该字段设置为全文索引?</h2>\'}">全文</a>';
         } else {
             $column['manage fulltext'] = '<a class="disabled">全文</a>';
         }
         $column['manage edit'] = '<a href="' . zotop::url('database/field/edit', array('table' => $tablename, 'field' => $field['name'])) . '">修改</a>';
         $column['manage delete'] = '<a href="' . zotop::url('database/field/delete', array('table' => $tablename, 'field' => $field['name'])) . '" class="confirm">删除</a>';
         table::row($column, 'select');
     }
     table::footer();
     form::buttons(array('type' => 'submit', 'value' => '浏览选中项'));
     form::footer();
     page::bottom();
     page::add('</div>');
     page::add('</div>');
     page::add('<div id="side">');
     block::header('数据表信息');
     table::header();
     table::row(array('w60 bold' => '名称', '2' => '' . $table['name'] . ''));
     table::row(array('w60 bold' => '大小', '2' => '' . format::byte($table['size']) . ''));
     table::row(array('w60 bold' => '记录数', '2' => '<b>' . $table['rows'] . '</b> '));
     table::row(array('w60 bold' => '整理', '2' => '' . $table['collation'] . ''));
     table::row(array('w60 bold' => '创建时间', '2' => '' . $table['createtime'] . ''));
     table::row(array('w60 bold' => '更新时间', '2' => '' . $table['updatetime'] . ''));
     //table::row(array('w60 bold'=>'注释','2'=>''.$table['comment'].''));
     table::footer();
     block::footer();
     block::header('索引信息');
     $column = array();
     $column['i w10'] = '';
     $column['field'] = '字段';
     $column['type w30'] = '类型';
     $column['manage dropindex'] = '删除';
     table::header('list', $column);
     foreach ($indexes as $index) {
         $column = array();
         $column['i w10 center'] = '>';
         $column['field'] = '<b>' . $index['field'] . '</b>';
         $column['type w30'] = $index['type'];
         $column['manage dropindex'] = '<a href="' . url::build('database/field/dropindex', array('table' => $tablename, 'index' => $index['name'])) . '" class="confirm">删除</a>';
         table::row($column, 'select');
     }
     table::footer();
     block::footer();
     page::add('</div>');
     page::add('</div>');
     page::footer();
 }
Beispiel #16
0
 public function navbar()
 {
     $navbar = array('main' => array('title' => '首页', 'href' => url::build('system/index/main')), 'phpinfo' => array('title' => 'phpinfo', 'href' => url::build('system/index/phpinfo')));
     $navbar = zotop::filter('system.main.navbar', $navbar);
     return $navbar;
 }
Beispiel #17
0
 public function navbar()
 {
     $navbar = array(array('id' => 'main', 'title' => '首页', 'href' => url::build('zotop/main')), array('id' => 'phpinfo', 'title' => 'phpinfo', 'href' => url::build('zotop/main/phpinfo')));
     $navbar = zotop::filter('zotop.main.navbar', $navbar);
     return $navbar;
 }
Beispiel #18
0
 public function onDefault()
 {
     $db = zotop::db();
     $host = $db->config('hostname');
     $dbName = $db->config('database');
     $dbVersion = $db->version(true);
     $dbSize = $db->size();
     $tables = zotop::db()->tables(true);
     $header['title'] = '数据库管理:' . $dbName;
     page::header($header);
     page::add('<div id="page" class="clearfix">');
     page::add('<div id="side">');
     block::header('数据库基本信息');
     table::header();
     table::row(array('w60' => '数据库主机', '2' => '' . $host . ''));
     table::row(array('w60' => '数据库名称', '2' => '' . $dbName . ''));
     table::row(array('w60' => '数据库版本', '2' => '' . $dbVersion . ''));
     table::row(array('w60' => '数据库大小', '2' => '<b>' . $dbSize . '</b> '));
     table::row(array('w60' => '数据表个数', '2' => '<b>' . count($tables) . '</b> 个'));
     table::footer();
     block::footer();
     block::header('创建数据表');
     form::header(array('action' => zotop::url('database/table/create'), 'template' => 'div'));
     form::field(array('type' => 'text', 'name' => 'tablename', 'label' => zotop::t('表名称'), 'style' => 'width:180px', 'valid' => '{required:true}', 'description' => '不含前缀,系统会自动加上前缀'));
     form::buttons(array('type' => 'submit', 'value' => '创建'));
     form::footer();
     block::footer();
     page::add('</div>');
     page::add('<div id="main">');
     page::top();
     page::navbar($this->navbar(), 'tables');
     //zotop::dump($tables);
     form::header(array('class' => 'list', 'action' => zotop::url('database/table/action')));
     $column['select'] = html::checkbox(array('name' => 'table', 'class' => 'selectAll'));
     $column['name'] = '数据表名称';
     $column['size  w60'] = '大小';
     $column['Rows  w60'] = '记录数';
     $column['Engine  w60'] = '类型';
     $column['Collation  w100'] = '整理';
     $column['manage view w60'] = '浏览';
     $column['manage delete'] = '删除';
     page::add('<div style="height:400px;">');
     table::header('list', $column);
     foreach ($tables as $table) {
         $column = array();
         $column['select'] = html::checkbox(array('name' => 'table[]', 'value' => $table['name'], 'class' => 'select'));
         $column['name'] = '<a href="' . url::build('database/field/default', array('tablename' => $table['name'])) . '"><b>' . $table['name'] . '</b></a><h5>' . $table['comment'] . '</h5>';
         $column['size w60'] = (string) format::byte($table['size']);
         $column['Rows  w60'] = $table['rows'];
         $column['Engine  w60'] = $table['engine'];
         $column['collation  w100'] = $table['collation'];
         $column['manage view w60'] = '<a href="' . url::build('database/table/edit', array('tablename' => $table['name'])) . '">设置</a>';
         $column['manage delete'] = '<a href="' . url::build('database/table/delete', array('tablename' => $table['name'])) . '" class="confirm">删除</a>';
         table::row($column, 'select');
     }
     table::footer();
     page::add('</div>');
     form::buttons(array('type' => 'select', 'name' => 'operation', 'style' => 'width:180px', 'options' => array('optimize' => '优化', 'delete' => '删除'), 'value' => 'check'), array('type' => 'submit', 'value' => '执行操作'));
     form::footer();
     page::bottom();
     page::add('</div>');
     page::add('</div>');
     page::footer();
 }
Beispiel #19
0
table::header();
table::row(array('w60 bold' => '名称', '2' => '' . $table['name'] . ''));
table::row(array('w60 bold' => '大小', '2' => '' . format::byte($table['size']) . ''));
table::row(array('w60 bold' => '记录数', '2' => '<b>' . $table['rows'] . '</b> '));
table::row(array('w60 bold' => '整理', '2' => '' . $table['collation'] . ''));
table::row(array('w60 bold' => '创建时间', '2' => '' . $table['createtime'] . ''));
table::row(array('w60 bold' => '更新时间', '2' => '' . $table['updatetime'] . ''));
//table::row(array('w60 bold'=>'注释','2'=>''.$table['comment'].''));
table::footer();
block::footer();
block::header('索引信息');
$column = array();
//$column['i w10'] = '';
$column['field'] = '字段';
$column['type w50'] = '类型';
$column['manage dropindex'] = '删除';
table::header('list', $column);
foreach ($indexes as $index) {
    $column = array();
    //$column['i w10 center'] = '>';
    $column['field'] = '<b>' . $index['field'] . '</b>';
    $column['type w50'] = $index['type'];
    $column['manage dropindex'] = '<a href="' . url::build('database/field/dropindex', array('table' => $tablename, 'index' => $index['name'])) . '" class="confirm">删除</a>';
    table::row($column, 'select');
}
table::footer();
block::footer();
?>
</div>
<?php 
$this->footer();
Beispiel #20
0
 public function navbar()
 {
     return array(array('id' => 'changeinfo', 'title' => '修改我的资料', 'href' => url::build('zotop/mine/changeinfo')), array('id' => 'changepassword', 'title' => '修改我的密码', 'href' => url::build('zotop/mine/changepassword')));
 }
Beispiel #21
0
 public function navbar($tablename)
 {
     return array(array('id' => 'tables', 'title' => '数据表管理', 'href' => url::build('database/table')), array('id' => 'index', 'title' => '数据表结构', 'href' => url::build('database/field/index', array('tablename' => $tablename))), array('id' => 'add', 'title' => '新建字段', 'href' => url::build('database/field/add', array('tablename' => $tablename)), 'class' => 'dialog'), array('id' => 'edit', 'title' => '字段修改', 'href' => ''));
 }
Beispiel #22
0
 public function navbar()
 {
     $navbar = array(array('id' => 'default', 'title' => '文件管理', 'href' => url::build('filemanager/index')));
     $navbar = zotop::filter('filemanager.index.navbar', $navbar);
     return $navbar;
 }
Beispiel #23
0
 /**
  * url函数
  *
  * @param string $uri uri的顺序为模块、控制器、动作以及参数,一般格式为:module/controller/action/arg1/arg2
  * @param int $params url传递的参数
  * @param int $extra url传递的额外数据,如: #fragment 等
  * 
  * @return string
  */
 public static function url($uri = '', $params = array(), $extra = '')
 {
     return url::build($uri, $params, $extra);
 }
Beispiel #24
0
 public function __construct($kirby, $root)
 {
     // check requirements
     $this->requirements();
     // store the instance as a singleton
     static::$instance = $this;
     $this->kirby = $kirby;
     $this->roots = new \Kirby\Panel\Roots($this, $root);
     $this->urls = new \Kirby\Panel\Urls($this, $root);
     // add the panel default options
     $this->kirby->options = array_merge($this->defaults(), $this->kirby->options);
     // setup the blueprints roots
     UserBlueprint::$root = $this->kirby->roots()->blueprints() . DS . 'users';
     PageBlueprint::$root = $this->kirby->roots()->blueprints();
     // load the site object
     $this->site = $this->site();
     // setup the session
     $this->session();
     // load the current translation
     $this->translation()->load();
     // load all Kirby extensions (methods, tags, smartypants)
     $this->kirby->extensions();
     $this->kirby->plugins();
     // setup the multilang site stuff
     $this->multilang();
     // setup the form plugin
     form::$root = array('default' => $this->roots->fields, 'custom' => $this->kirby->roots()->fields());
     // force ssl if set in config
     if ($this->kirby->option('ssl') and !r::secure()) {
         // rebuild the current url with https
         go(url::build(array('scheme' => 'https')));
     }
     // load all available routes
     $this->routes = array_merge($this->routes, require $this->roots->config . DS . 'routes.php');
     // start the router
     $this->router = new Router($this->routes);
     // register router filters
     $this->router->filter('auth', function () use($kirby) {
         try {
             $user = panel()->user();
         } catch (Exception $e) {
             panel()->redirect('login');
         }
     });
     // check for a completed installation
     $this->router->filter('isInstalled', function () use($kirby) {
         $installer = new Installer();
         if (!$installer->isCompleted()) {
             panel()->redirect('install');
         }
     });
     // check for valid csrf tokens. Can be used for get requests
     // since all post requests are blocked anyway
     $this->router->filter('csrf', function () {
         panel()->csrfCheck();
     });
     // csrf protection for every post request
     if (r::is('post')) {
         $this->csrfCheck();
     }
 }
Beispiel #25
0
 public static function url($uri, $params = array(), $fragment = '')
 {
     return url::build($uri, $params, $fragment);
 }
Beispiel #26
0
table::header();
table::row(array('w60 bold' => '名称', '2' => '' . $table['name'] . ''));
table::row(array('w60 bold' => '大小', '2' => '' . format::byte($table['size']) . ''));
table::row(array('w60 bold' => '记录数', '2' => '<b>' . $table['rows'] . '</b> '));
table::row(array('w60 bold' => '整理', '2' => '' . $table['collation'] . ''));
table::row(array('w60 bold' => '创建时间', '2' => '' . $table['createtime'] . ''));
table::row(array('w60 bold' => '更新时间', '2' => '' . $table['updatetime'] . ''));
//table::row(array('w60 bold'=>'注释','2'=>''.$table['comment'].''));
table::footer();
box::footer();
box::header('索引信息');
$column = array();
//$column['i w10'] = '';
$column['field'] = '字段';
$column['type w50'] = '类型';
$column['manage dropindex'] = '删除';
table::header('list', $column);
foreach ($indexes as $index) {
    $column = array();
    //$column['i w10 center'] = '>';
    $column['field'] = '<b>' . $index['field'] . '</b>';
    $column['type w50'] = $index['type'];
    $column['manage dropindex'] = '<a href="' . url::build('database/field/dropindex/' . $tablename . '/' . $index['name']) . '" class="confirm">删除</a>';
    table::row($column, 'select');
}
table::footer();
box::footer();
?>
</div>
<?php 
$this->footer();
Beispiel #27
0
 /**
  * Starts the router, renders the page and returns the response
  *
  * @return mixed
  */
 public function launch()
 {
     // this will trigger the configuration
     $site = $this->site();
     // force secure connections if enabled
     if ($this->option('ssl') and !r::secure()) {
         // rebuild the current url with https
         go(url::build(array('scheme' => 'https')));
     }
     // set the timezone for all date functions
     date_default_timezone_set($this->options['timezone']);
     // load all extensions
     $this->extensions();
     // load all plugins
     $this->plugins();
     // load all models
     $this->models();
     // start the router
     $this->router = new Router($this->routes());
     $this->route = $this->router->run($this->path());
     // check for a valid route
     if (is_null($this->route)) {
         header::status('500');
         header::type('json');
         die(json_encode(array('status' => 'error', 'message' => 'Invalid route or request method')));
     }
     // call the router action with all arguments from the pattern
     $response = call($this->route->action(), $this->route->arguments());
     // load all language variables
     // this can only be loaded once the router action has been called
     // otherwise the current language is not yet available
     $this->localize();
     // build the response
     $this->response = $this->component('response')->make($response);
     // store the current language in the session
     if ($this->site()->multilang() && ($language = $this->site()->language())) {
         s::set('language', $language->code());
     }
     return $this->response;
 }
Beispiel #28
0
 public function navbar()
 {
     return array(array('id' => 'default', 'title' => '模块列表', 'href' => url::build('zotop/module')), array('id' => 'install', 'title' => '安装模块', 'href' => url::build('zotop/module/install')), array('id' => 'add', 'title' => '新建模块', 'href' => url::build('zotop/module/add')), array('id' => 'edit', 'title' => '编辑模块'));
 }