dever 6 years ago
commit
8b0129a740
100 changed files with 2694 additions and 0 deletions
  1. 8 0
      boot.php
  2. 145 0
      code/database/info.php
  3. 8 0
      code/index.php
  4. 71 0
      code/lib/Manage.php
  5. 65 0
      config/base.php
  6. 26 0
      config/env/localhost/default.php
  7. 5 0
      config/route.php
  8. 136 0
      data/compile/leek/manage/moltran/home.cmp.php
  9. 19 0
      data/compile/leek/manage/moltran/inc/chat.cmp.php
  10. 3 0
      data/compile/leek/manage/moltran/inc/foot.cmp.php
  11. 41 0
      data/compile/leek/manage/moltran/inc/head.cmp.php
  12. 49 0
      data/compile/leek/manage/moltran/inc/menu.cmp.php
  13. 122 0
      data/compile/leek/manage/moltran/inc/nav.cmp.php
  14. 80 0
      data/compile/leek/manage/moltran/inc/script.cmp.php
  15. 91 0
      data/compile/leek/manage/moltran/login.cmp.php
  16. 170 0
      data/compile/leek/manage/moltran/project/database/list.cmp.php
  17. 137 0
      data/compile/leek/manage/moltran/project/database/update.cmp.php
  18. 20 0
      data/compile/leek/manage/node/default/project/database/list.php
  19. 1 0
      data/readme
  20. 14 0
      front/applet/demo/app.js
  21. 49 0
      front/applet/demo/app.json
  22. 35 0
      front/applet/demo/app.wxss
  23. 12 0
      front/applet/demo/example/actionsheet/actionsheet.js
  24. 11 0
      front/applet/demo/example/actionsheet/actionsheet.wxml
  25. 3 0
      front/applet/demo/example/actionsheet/actionsheet.wxss
  26. 1 0
      front/applet/demo/example/article/article.js
  27. 36 0
      front/applet/demo/example/article/article.wxml
  28. 6 0
      front/applet/demo/example/article/article.wxss
  29. 1 0
      front/applet/demo/example/badge/badge.js
  30. 54 0
      front/applet/demo/example/badge/badge.wxml
  31. 1 0
      front/applet/demo/example/button/button.js
  32. 28 0
      front/applet/demo/example/button/button.wxml
  33. 8 0
      front/applet/demo/example/button/button.wxss
  34. 29 0
      front/applet/demo/example/dialog/dialog.js
  35. 12 0
      front/applet/demo/example/dialog/dialog.wxml
  36. 3 0
      front/applet/demo/example/dialog/dialog.wxss
  37. 1 0
      front/applet/demo/example/flex/flex.js
  38. 31 0
      front/applet/demo/example/flex/flex.wxml
  39. 9 0
      front/applet/demo/example/flex/flex.wxss
  40. 1 0
      front/applet/demo/example/footer/footer.js
  41. 36 0
      front/applet/demo/example/footer/footer.wxml
  42. 8 0
      front/applet/demo/example/footer/footer.wxss
  43. 1 0
      front/applet/demo/example/gallery/gallery.js
  44. 6 0
      front/applet/demo/example/gallery/gallery.wxml
  45. 5 0
      front/applet/demo/example/grid/grid.js
  46. 16 0
      front/applet/demo/example/grid/grid.wxml
  47. 1 0
      front/applet/demo/example/icons/icons.js
  48. 53 0
      front/applet/demo/example/icons/icons.wxml
  49. 28 0
      front/applet/demo/example/icons/icons.wxss
  50. 4 0
      front/applet/demo/example/images/base64.js
  51. BIN
      front/applet/demo/example/images/icon_footer.png
  52. BIN
      front/applet/demo/example/images/icon_footer_link.png
  53. BIN
      front/applet/demo/example/images/icon_intro.png
  54. BIN
      front/applet/demo/example/images/icon_nav_feedback.png
  55. BIN
      front/applet/demo/example/images/icon_nav_form.png
  56. BIN
      front/applet/demo/example/images/icon_nav_nav.png
  57. BIN
      front/applet/demo/example/images/icon_nav_search.png
  58. BIN
      front/applet/demo/example/images/icon_nav_special.png
  59. BIN
      front/applet/demo/example/images/icon_nav_widget.png
  60. BIN
      front/applet/demo/example/images/icon_nav_z-index.png
  61. BIN
      front/applet/demo/example/images/icon_tabbar.png
  62. BIN
      front/applet/demo/example/images/logo.png
  63. BIN
      front/applet/demo/example/images/pic_160.png
  64. BIN
      front/applet/demo/example/images/pic_article.png
  65. BIN
      front/applet/demo/example/images/vcode.jpg
  66. 49 0
      front/applet/demo/example/index.js
  67. 31 0
      front/applet/demo/example/index.wxml
  68. 6 0
      front/applet/demo/example/index.wxss
  69. 106 0
      front/applet/demo/example/input/input.js
  70. 194 0
      front/applet/demo/example/input/input.wxml
  71. 8 0
      front/applet/demo/example/list/list.js
  72. 75 0
      front/applet/demo/example/list/list.wxml
  73. 1 0
      front/applet/demo/example/loadmore/loadmore.js
  74. 18 0
      front/applet/demo/example/loadmore/loadmore.wxml
  75. 3 0
      front/applet/demo/example/loadmore/loadmore.wxss
  76. 12 0
      front/applet/demo/example/msg/msg.js
  77. 12 0
      front/applet/demo/example/msg/msg.wxml
  78. 3 0
      front/applet/demo/example/msg/msg.wxss
  79. 1 0
      front/applet/demo/example/msg/msg_fail.js
  80. 25 0
      front/applet/demo/example/msg/msg_fail.wxml
  81. 3 0
      front/applet/demo/example/msg/msg_fail.wxss
  82. 1 0
      front/applet/demo/example/msg/msg_success.js
  83. 25 0
      front/applet/demo/example/msg/msg_success.wxml
  84. 3 0
      front/applet/demo/example/msg/msg_success.wxss
  85. 27 0
      front/applet/demo/example/navbar/navbar.js
  86. 19 0
      front/applet/demo/example/navbar/navbar.wxml
  87. 12 0
      front/applet/demo/example/navbar/navbar.wxss
  88. 10 0
      front/applet/demo/example/panel/panel.js
  89. 93 0
      front/applet/demo/example/panel/panel.wxml
  90. 24 0
      front/applet/demo/example/picker/picker.js
  91. 19 0
      front/applet/demo/example/picker/picker.wxml
  92. 3 0
      front/applet/demo/example/picker/picker.wxss
  93. 1 0
      front/applet/demo/example/preview/preview.js
  94. 57 0
      front/applet/demo/example/preview/preview.wxml
  95. 3 0
      front/applet/demo/example/preview/preview.wxss
  96. 31 0
      front/applet/demo/example/progress/progress.js
  97. 43 0
      front/applet/demo/example/progress/progress.wxml
  98. 3 0
      front/applet/demo/example/progress/progress.wxss
  99. 27 0
      front/applet/demo/example/searchbar/searchbar.js
  100. 46 0
      front/applet/demo/example/searchbar/searchbar.wxml

+ 8 - 0
boot.php

@@ -0,0 +1,8 @@
+<?php 
+define('DEVER_PROJECT', 'leek');
+define('DEVER_PROJECT_PATH', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+if (defined('DEVER_PACKAGE')) {
+	include('dever_package/'.DEVER_PACKAGE.'/index.php');
+} else {
+	include('dever/boot.php');
+}

+ 145 - 0
code/database/info.php

@@ -0,0 +1,145 @@
+<?php
+
+# 定义几个常用的选项
+$type = array
+(
+	1 => '未领取',
+	2 => '已领取',
+	3 => '已使用',
+);
+
+$product = function()
+{
+	return Dever::db('product/info')->state();
+};
+
+/*
+$product_price = function()
+{
+	return Dever::db('product/info_price')->state();
+};
+*/
+
+return array
+(
+	# 表名
+	'name' => 'info',
+	# 显示给用户看的名称
+	'lang' => '兑换码列表',
+	'order' => 10,
+	# 数据结构
+	'struct' => array
+	(
+	
+		'id' 		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> 'ID',
+			'default' 	=> '',
+			'desc' 		=> '',
+			'match' 	=> 'is_numeric',
+			'search'	=> 'order',
+			//'list'		=> true,
+		),
+
+		'product_id'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '产品',
+			'default' 	=> '',
+			'desc' 		=> '产品',
+			'match' 	=> 'is_numeric',
+			'update'	=> 'select',
+			'option'	=> $product,
+			'search'	=> 'select',
+			'list'		=> true,
+		),
+
+		'product_price_id'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '产品规格',
+			'default' 	=> '',
+			'desc' 		=> '产品规格',
+			'match' 	=> 'is_numeric',
+			'update'	=> 'select',
+			//'option'	=> $product_price,
+			'search'	=> 'select',
+			//'list'		=> true,
+		),
+
+		'code'		=> array
+		(
+			'type' 		=> 'varchar-32',
+			'name' 		=> '兑换码',
+			'default' 	=> '',
+			'desc' 		=> '兑换码',
+			'match' 	=> 'is_string',
+			'update'	=> 'text',
+			//'search'	=> 'fulltext',
+			'list'		=> true,
+		),
+
+		'type'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '使用状态',
+			'default' 	=> '1',
+			'desc' 		=> '使用状态',
+			'match' 	=> 'is_numeric',
+			'option' 	=> $type,
+			'search'	=> 'select',
+			'update'	=> 'select',
+			'list'		=> true,
+		),
+
+		'uid'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '用户信息',
+			'default' 	=> '0',
+			'desc' 		=> '用户信息',
+			'match' 	=> 'is_numeric',
+			'list'		=> 'Dever::load("code/lib/manage.showUserInfo", "{uid}", "{ldate}")',
+		),
+
+		'state'		=> array
+		(
+			'type' 		=> 'tinyint-1',
+			'name' 		=> '状态',
+			'default' 	=> '1',
+			'desc' 		=> '请选择状态',
+			'match' 	=> 'is_numeric',
+		),
+
+		'ldate'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '领取时间',
+			'match' 	=> 'option',
+			'default' 	=> '',
+			'desc' 		=> '',
+			'search'	=> 'date',
+		),
+		
+		'cdate'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '生成时间',
+			'match' 	=> array('is_numeric', time()),
+			'desc' 		=> '',
+			# 只有insert时才生效
+			'insert'	=> true,
+			//'search'	=> 'date',
+			'list'		=> 'date("Y-m-d H:i:s", {cdate})',
+		),
+	),
+
+	'manage' => array
+	(
+		'excel'	=> true,
+		'delete' => false,
+		'edit' => false,
+		'insert' => false,
+	),
+);

+ 8 - 0
code/index.php

@@ -0,0 +1,8 @@
+<?php
+
+define('DEVER_APP_NAME', 'code');
+define('DEVER_APP_LANG', '兑换码管理');
+define('DEVER_APP_PATH', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+define('DEVER_MANAGE_ORDER', 99);
+define('DEVER_MANAGE_ICON', 'glyphicon glyphicon-credit-card');
+include(DEVER_APP_PATH . '../boot.php');

+ 71 - 0
code/lib/Manage.php

@@ -0,0 +1,71 @@
+<?php
+
+namespace Code\Lib;
+
+use Dever;
+
+class Manage
+{
+	/**
+	 * 显示用户信息
+	 *
+	 * @return mixed
+	 */
+	public function showUserInfo($uid, $ldate = false)
+	{
+		if ($uid) {
+			$user = Dever::db('passport/user')->one($uid);
+			if ($user) {
+				$table = array();
+				$table['用户名'] = $user['username'];
+				$table['手机号'] = $user['mobile'];
+				$table['领取时间'] = date('Y-m-d H:i:s', $ldate);
+				return Dever::table($table);
+			}
+		} else {
+			return '';
+		}
+	}
+
+    /**
+	 * 创建兑换码
+	 *
+	 * @return mixed
+	 */
+	public function create($id, $name, $data)
+	{
+		$code = Dever::param('code', $data);
+		$type = Dever::param('type', $data);
+		$product_id = Dever::param('product_id', $data);
+		if (!$product_id) {
+			$product_id = $id;
+		}
+		if (!in_array(2, $type)) {
+			return;
+		}
+
+		$total = Dever::db('code/info')->total(array('product_id' => $product_id,'product_price_id' => $id, 'type' => 1));
+		if ($code > 0 && $code > $total) {
+			$num = $code - $total;
+
+			for ($i = 0; $i < $num; $i++) {
+				$this->createCode($product_id, $id);
+			}
+		}
+	}
+
+	private function createCode($product_id, $id)
+	{
+		$code = Dever::rand(8, 0);
+		$data['product_id'] = $product_id;
+		$data['product_price_id'] = $id;
+		$data['code'] = $code;
+		$total = Dever::db('code/info')->total($data);
+		if ($total > 0) {
+			return $this->createCode($product_id, $id);
+		}
+		$data['type'] = 1;
+		Dever::db('code/info')->insert($data);
+		return $code;
+	}
+}

+ 65 - 0
config/base.php

@@ -0,0 +1,65 @@
+<?php
+$config['base'] = array
+(
+	'name' => '小商品平台',
+	'version' => '1.0.0 Beta',
+
+	'applet' => array
+	(
+		'appid' => 'wx67cccbaaa232d677',
+		'secret' => '5219147f5f9152a1cb8e60ee775e718d',
+		'url' => 'https://api.weixin.qq.com/sns/jscode2session',
+	),
+
+	# 站点使用邮箱还是手机作为主账号,如果是手机,请填写手机验证码的配置接口
+	'account' => 'mobile',
+	# 性别转换 passport里1为男、2为女 3为未知,如果前端定义与这个不同,请做好转换
+	'sex' => array
+	(
+		# 前面的索引为前端传过来的值
+		2 => 2,
+		1 => 1,
+		0 => 3,
+	),
+	'mobileCode' => array
+	(
+		# debug模式
+		'debug' => true,
+		# 发送短信的接口
+		'url' => 'https://feginesms.market.alicloudapi.com/codeNotice',
+		# 发送方法 get、post
+		'method' => 'get',
+		# 是否json编码
+		'json' => false,
+		# header信息
+		'header' => 'Authorization:APPCODE ca584ae21ce54c999067e77b5995a27b',
+		# body信息
+		'body' => 'param={code}&phone={mobile}&sign={sign}&skin={skin}',
+		# 短信模板 发送短信时,请加上参数skin=1
+		'skin' => array
+		(
+			'reg' => 35247,
+			'order' => 35246,
+			'code' => 35245,
+		),
+		# 短信签名
+		'sign' => 47159,
+		# 验证码有效期 默认10分钟
+		'timeout' => 600,
+		# 一天之内的最大发送次数,默认为10次
+		'total' => 10,
+		# 不允许多久之内重复发送,默认为60秒
+		'time' => 60,
+		# 验证码长度
+		'length' => 6,
+	),
+	# 注册成功后,调取的接口
+	'regAction' => '',
+
+	# 注册成功后,是否发送短信,直接使用skin的key即可
+	//'regSendSms' => 'reg',
+
+	# 支付成功后,调用的接口
+	'pay_notify' => 'product/lib/pay.act',
+);
+return $config;

+ 26 - 0
config/env/localhost/default.php

@@ -0,0 +1,26 @@
+<?php
+
+# 数据库配置
+$config['database'] = array
+(
+	# 默认数据库配置
+	'default' => array
+	(
+		'type' => 'pdo',
+		'host' => array
+		(
+			'read' => 'web-mysql:3306',
+			'update' => 'web-mysql:3306',
+		),
+		'database' => 'leek',
+		'username' => 'root',
+		'password' => '123456',
+		'charset' => 'utf8',
+	),
+);
+
+$config['debug'] = array
+(
+	'log' => array('type' => 'file'),
+);
+return $config;

+ 5 - 0
config/route.php

@@ -0,0 +1,5 @@
+<?php
+return array
+(
+'home' => 'home',
+);

+ 136 - 0
data/compile/leek/manage/moltran/home.cmp.php

@@ -0,0 +1,136 @@
+<?php $data['manage/database.cookie']=Dever::load('manage/database.cookie') ?>
+<?php $data['manage/auth.notice']=Dever::load('manage/auth.notice') ?>
+<?php $data['manage/menu.fast']=Dever::load('manage/menu.fast') ?>
+<?php $data['manage/auth.config']=Dever::load('manage/auth.config') ?>
+<!DOCTYPE html>
+<?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?><!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/head.cmp.php' ?>
+</head>
+  
+<body class="theme-<?php  echo Dever::load("manage/auth.config#template") ?>" test="公告">
+
+<div id="wrapper" class="<?php echo $data['manage/database.cookie']['wrapper'] ?>">
+
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/nav.cmp.php' ?>
+    
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/menu.cmp.php' ?>
+
+            
+            
+                                  
+            <div class="content-page">
+                
+                <div class="content"><?php endif; ?>
+                    <div class="container">
+
+                        
+                        <div class="row">
+                            <div class="col-sm-12">
+                                <h4 class="pull-left page-title">控制台</h4>
+                                <ol class="breadcrumb pull-right">
+                                    <li><a href="#">快捷管理</a></li>
+                                    <li class="active">控制台</li>
+                                </ol>
+                            </div>
+                        </div>
+
+                        <div class="row">
+                            
+                            <div class="col-lg-12" id="panel-contact">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading">
+                                        <h3 class="panel-title"><?php echo $data['manage/auth.config']['info'] ?></h3>
+                                    </div>
+                                    <div class="panel-body">
+                                        <address><?php echo $data['manage/auth.config']['content'] ?></address>
+                                    </div>
+                                </div>
+                            </div> 
+
+                            
+                            <div class="col-lg-12" id="panel-notice">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading">
+                                        <h4 class="panel-title">公告</h4>
+                                    </div>
+                                    <div class="panel-body">
+                                        <ol style="list-style-type:circle">
+                                            <?php if(isset($data['manage/auth.notice']) && is_array($data['manage/auth.notice'])): ?><?php $t=count($data['manage/auth.notice'])-1 ?><?php $i=0 ?><?php foreach($data['manage/auth.notice'] as $k => $v): ?><li><a href="<?php  echo Dever::url("notice?where_id=".$v['id']."&where_config=".$v['config']) ?>" title="<?php  echo $v['name'] ?>"><?php  echo $v['name'] ?></a></li><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/auth.notice'] ?><?php endif; ?>
+                                            
+                                        </ol>
+                                    </div>
+                                </div>
+                            </div> 
+
+                            
+                            <div class="col-lg-12" id="panel-project">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading"> 
+                                        <h3 class="panel-title">快捷功能</h3> 
+                                    </div> 
+                                    <div class="panel-body"> 
+                                        <div class="pull-left">
+                                            <p><?php if(isset($data['manage/menu.fast']) && is_array($data['manage/menu.fast'])): ?><?php $t=count($data['manage/menu.fast'])-1 ?><?php $i=0 ?><?php foreach($data['manage/menu.fast'] as $k => $v): ?><a href="<?php  echo $v['link'] ?>" class="btn btn-default" style="margin-left:10px;" title="<?php  echo $v['name'] ?>"><?php  echo $v['name'] ?></a><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/menu.fast'] ?><?php endif; ?></p>
+                                        </div>
+                                    </div> 
+                                </div>
+                            </div> 
+
+
+                            
+                            <div class="col-lg-4" style="display:none;">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading"> 
+                                        <h3 class="panel-title">待办事项</h3> 
+                                    </div> 
+                                    <div class="panel-body todoapp"> 
+                                        <div class="row">
+                                            <div class="col-sm-6">
+                                                <h4 id="todo-message"><span id="todo-remaining"></span> of <span id="todo-total"></span> remaining</h4> 
+                                            </div>
+                                            <div class="col-sm-6">
+                                                <a href="" class="pull-right btn btn-primary btn-sm waves-effect waves-light" id="btn-archive">Archive</a>
+                                            </div>
+                                        </div>
+
+                                        <ul class="list-group no-margn nicescroll todo-list" style="max-height: 288px" id="todo-list"></ul>
+
+                                         <form name="todo-form" id="todo-form" role="form" class="m-t-20">
+                                            <div class="row">
+                                                <div class="col-sm-9 todo-inputbar">
+                                                    <input type="text" id="todo-input-text" name="todo-input-text" class="form-control" placeholder="Add new todo">
+                                                </div>
+                                                <div class="col-sm-3 todo-send">
+                                                    <button class="btn-primary btn-block btn waves-effect waves-light" type="button" id="todo-btn-submit">Add</button>
+                                                </div>
+                                            </div>
+                                        </form> 
+                                    </div> 
+                                </div>
+                            </div> 
+
+                        </div> 
+
+
+                    </div> 
+                               
+                <?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?></div> 
+
+                <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/foot.cmp.php' ?>
+
+            </div>
+            
+            
+            
+
+            <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/chat.cmp.php' ?>
+
+    </div>
+    
+
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/script.cmp.php' ?>
+
+</body>
+</html><?php endif; ?>

+ 19 - 0
data/compile/leek/manage/moltran/inc/chat.cmp.php

@@ -0,0 +1,19 @@
+
+            <div class="side-bar right-bar nicescroll">
+                <h4 class="text-center">Chat</h4>
+                <div class="contact-list nicescroll">
+                    <ul class="list-group contacts-list">
+                        <li class="list-group-item">
+                            <a href="#">
+                                <div class="avatar">
+                                    <img src="<?php echo Dever::config("host")->img ?>users/avatar-1.jpg" alt="">
+                                </div>
+                                <span class="name">Dever Admin</span>
+                                <i class="fa fa-circle online"></i>
+                            </a>
+                            <span class="clearfix"></span>
+                        </li>
+                    </ul>  
+                </div>
+            </div>
+            

+ 3 - 0
data/compile/leek/manage/moltran/inc/foot.cmp.php

@@ -0,0 +1,3 @@
+<?php $data['manage/database.res']=Dever::load('manage/database.res') ?>
+<footer class="footer text-right" style="<?php  echo Dever::load("manage/auth.loading") ? "display:none;" : "" ?>"><?php  echo Dever::config("base")->copyright ?></footer>
+<div id="load_script" style="display:none;"><?php echo $data['manage/database.res']['js'] ?></div>

+ 41 - 0
data/compile/leek/manage/moltran/inc/head.cmp.php

@@ -0,0 +1,41 @@
+<?php $data['manage/auth.config']=Dever::load('manage/auth.config') ?>
+<meta charset="utf-8">
+<title><?php echo $data['manage/auth.config']['title'] ?></title>
+<meta name="keywords" content="<?php echo $data['manage/auth.config']['title'] ?>">
+<meta name="description" content="<?php echo $data['manage/auth.config']['title'] ?>">
+<meta name="apple-mobile-web-app-title" content="<?php echo $data['manage/auth.config']['title'] ?>" />
+<meta name="author" content="rubin">
+<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/layui/css/layui.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/bootstrap/css/bootstrap.min.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/valid/validationEngine.jquery.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/pnotify/pnotify.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/fancybox/jquery.fancybox.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/highlight/highlight.min.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/datetime/jquery.datetimepicker.css">
+
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>core.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>components.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>pages.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>menu.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>responsive.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/pjax/nprogress.css" />
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/table/rwd-table.min.css?v4">
+
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/color/colpick.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/kindeditor/themes/default/default.css" />
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/ui/ui.min.css">
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/jquery/jquery.min.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>modernizr.min.js"></script>
+<script id="script"><?php  echo Dever::script() ?>config.template="<?php  echo $data["manage/auth.config"]["template"] ?>";config.lib="<?php  echo Dever::config("host")->public ?>"</script>
+<style type="text/css" id="style"><?php  echo Dever::load("manage/auth.loading") ? ".content,.content-page{margin-left: 0px;min-height:auto}" : "" ?></style>
+
+
+

+ 49 - 0
data/compile/leek/manage/moltran/inc/menu.cmp.php

@@ -0,0 +1,49 @@
+<?php $data['manage/auth.info']=Dever::load('manage/auth.info') ?>
+<?php $data['manage/menu.link']=Dever::load('manage/menu.link') ?>
+<?php $data['manage/menu.left']=Dever::load('manage/menu.left') ?>
+
+
+
+            <div class="left side-menu" id="menu">
+                <div class="sidebar-inner slimscrollleft">
+                    <div class="user-details">
+                        <div class="pull-left">
+                            <img src="<?php echo Dever::config("host")->img ?>users/avatar-1.jpg" alt="" class="thumb-md img-circle">
+                        </div>
+                        <div class="user-info">
+                            <div class="dropdown">
+                                <a href="#" id="manage-name" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false" style="<?php if(!(Dever::load('manage/auth.info#username'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/auth.info']['username'] ?></a>
+                                <ul class="dropdown-menu" style="display:none;">
+                                    <li><a href="javascript:void(0)"><i class="md md-face-unlock"></i> 个人资料<div class="ripple-wrapper"></div></a></li>
+                                    <li><a href="javascript:void(0)"><i class="md md-settings"></i> 设置</a></li>
+                                    <li><a href="javascript:void(0)"><i class="md md-lock"></i> 锁屏</a></li>
+                                    <li><a href="javascript:void(0)"><i class="md md-settings-power"></i> 退出</a></li>
+                                </ul>
+                            </div>
+                            
+                            <p class="text-muted m-0" id="manage-group" style="<?php if(!(Dever::load('manage/auth.info#rolename'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/auth.info']['rolename'] ?></p>
+                        </div>
+                    </div>
+                    
+                    <div id="sidebar-menu">
+                        <ul>
+                            <li>
+                                <a id="index-url" href="<?php echo $data['manage/menu.link']['index'] ?>" class="waves-effect waves-light active"><i class="glyphicon glyphicon-home"></i><span>控制台 </span></a>
+                            </li>
+
+                            <?php if(isset($data['manage/menu.left']) && is_array($data['manage/menu.left'])): ?><?php $t=count($data['manage/menu.left'])-1 ?><?php $i=0 ?><?php foreach($data['manage/menu.left'] as $k => $v): ?><li class="has_sub project-list">
+                                <a href="javascript:;" class="waves-effect waves-light<?php if(Dever::input("menu") != $v['key'] && $v['type'] != 1):?> collapsed<?php endif; ?> <?php if(Dever::input("menu") == $v['key']):?> active<?php endif; ?>" data-target=".<?php  echo $v['key'] ?>-menu"><i class="<?php  echo $v['icon'] ? $v['icon'] : "glyphicon glyphicon-folder-close" ?>"></i><span class="project-name"><?php  echo $v['name'] ?></span><span class="pull-right"><i class="md md-add"></i></span></a>
+                                <ul class="list-unstyled <?php  echo $v['key'] ?>-menu <?php if(Dever::input("menu") == $v['key'] || $v['type'] == 1):?> ins<?php endif; ?>" id="<?php  echo $v['key'] ?>-menu">
+                                    <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li class="<?php if(Dever::input("menu_id") == $v1['id']):?>active<?php endif; ?>"><a href="<?php  echo $v1['link'] ?>" class="<?php if(Dever::input("menu_id") == $v1['id']):?>subdrop<?php endif; ?>"><span class="glyphicon glyphicon-chevron-right"></span>&nbsp;&nbsp;<?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                                    
+                                    
+                                    
+                                </ul>
+                            </li><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/menu.left'] ?><?php endif; ?>
+                        </ul>
+                        <div class="clearfix"></div>
+                    </div>
+                    <div class="clearfix"></div>
+                </div>
+            </div>
+             

+ 122 - 0
data/compile/leek/manage/moltran/inc/nav.cmp.php

@@ -0,0 +1,122 @@
+<?php $data['manage/database.res']=Dever::load('manage/database.res') ?>
+<?php $data['manage/auth.config']=Dever::load('manage/auth.config') ?>
+<?php $data['manage/auth.info']=Dever::load('manage/auth.info') ?>
+<?php $data['manage/menu.link']=Dever::load('manage/menu.link') ?>
+<?php $data['manage/top.get']=Dever::load('manage/top.get') ?>
+<div id="load_style" style="display:none;"><?php echo $data['manage/database.res']['css'] ?></div>
+
+            <div class="topbar" id="nav" style="<?php  echo Dever::load("manage/auth.loading") ? "display:none;" : "" ?>">
+                
+                <div class="topbar-left">
+                    <div class="text-center">
+                        <a href="javascript:;" class="logo"><span id="dever-name"><?php echo $data['manage/auth.config']['title'] ?></span></a>
+                    </div>
+                </div>
+                
+                <div class="navbar navbar-default" role="navigation">
+                    <div class="container">
+                        <div class="">
+                            <div class="pull-left">
+                                <button class="button-menu-mobile open-left">
+                                    <i class="glyphicon glyphicon-align-justify"></i>
+                                </button>
+                                <span class="clearfix"></span>
+                            </div>
+
+                            <ul class="nav navbar-nav navbar-right pull-right">
+                                <li class="dropdown hidden-xs" style="display:none;">
+                                    <a href="#" data-target="#" class="dropdown-toggle waves-effect" data-toggle="dropdown" aria-expanded="true">
+                                        <i class="md md-notifications"></i> <span class="badge badge-xs badge-danger">3</span>
+                                    </a>
+                                    <ul class="dropdown-menu dropdown-menu-lg">
+                                        <li class="text-center notifi-title">Notification</li>
+                                        <li class="list-group">
+                                           
+                                           <a href="javascript:void(0);" class="list-group-item">
+                                              <div class="media">
+                                                 <div class="pull-left">
+                                                    <em class="fa fa-user-plus fa-2x text-info"></em>
+                                                 </div>
+                                                 <div class="media-body clearfix">
+                                                    <div class="media-heading">New user registered</div>
+                                                    <p class="m-0">
+                                                       <small>You have 10 unread messages</small>
+                                                    </p>
+                                                 </div>
+                                              </div>
+                                           </a>
+                                           
+                                            <a href="javascript:void(0);" class="list-group-item">
+                                              <div class="media">
+                                                 <div class="pull-left">
+                                                    <em class="fa fa-diamond fa-2x text-primary"></em>
+                                                 </div>
+                                                 <div class="media-body clearfix">
+                                                    <div class="media-heading">New settings</div>
+                                                    <p class="m-0">
+                                                       <small>There are new settings available</small>
+                                                    </p>
+                                                 </div>
+                                              </div>
+                                            </a>
+                                            
+                                            <a href="javascript:void(0);" class="list-group-item">
+                                              <div class="media">
+                                                 <div class="pull-left">
+                                                    <em class="fa fa-bell-o fa-2x text-danger"></em>
+                                                 </div>
+                                                 <div class="media-body clearfix">
+                                                    <div class="media-heading">Updates</div>
+                                                    <p class="m-0">
+                                                       <small>There are
+                                                          <span class="text-primary">2</span> new updates available</small>
+                                                    </p>
+                                                 </div>
+                                              </div>
+                                            </a>
+                                           
+                                            <a href="javascript:void(0);" class="list-group-item">
+                                              <small>See all notifications</small>
+                                            </a>
+                                        </li>
+                                    </ul>
+                                </li>
+
+                                <li class="hidden-xs">
+                                    <?php if(isset($data['manage/top.get']) && is_array($data['manage/top.get'])): ?><?php $t=count($data['manage/top.get'])-1 ?><?php $i=0 ?><?php foreach($data['manage/top.get'] as $k => $v): ?><ul class="nav navbar-nav navbar-right auth-top" style="display:none">
+                                        <li class="dropdown hidden-xs">
+                                            <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
+                                                <span><?php  echo $v['name'] ?></span>
+                                                <i class="glyphicon glyphicon-list"></i>
+                                            </a>
+
+                                          <ul class="dropdown-menu">
+                                            <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                                          </ul>
+                                        </li>
+                                    </ul><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/top.get'] ?><?php endif; ?>
+                                </li>
+
+                                
+                                <li class="hidden-xs" style="display:none;">
+                                    <a href="#" id="btn-fullscreen" class="waves-effect"><i class="md md-crop-free"></i></a>
+                                </li>
+                                <li class="hidden-xs" style="display:none;">
+                                    <a href="#" class="right-bar-toggle waves-effect"><i class="md md-chat"></i></a>
+                                </li>
+                                <li class="dropdown">
+                                    <a href="" class="dropdown-toggle profile" data-toggle="dropdown" aria-expanded="true"><img src="<?php echo Dever::config("host")->img ?>users/avatar-1.jpg" alt="user-img" class="img-circle"> </a>
+                                    <ul class="dropdown-menu">
+                                        <li><a href="javascript:void(0)"><i class="glyphicon glyphicon-user"  style="top: 3px;"></i> <span id="manage-name"><?php echo $data['manage/auth.info']['username'] ?></span></a></li>
+                                        <li><a href="#dever_modal" data-toggle="modal" data-name="ttt" id="edit_password" onclick="pass($(this));"><i class="glyphicon glyphicon-cog" style="top: 3px;"></i> 修改密码</a></li>
+                                        <li style="display:none;"><a href="javascript:void(0)"><i class="glyphicon glyphicon-lock" style="top: 3px;"></i> 锁屏</a></li>
+                                        <li><a id="logout-url" href="<?php echo $data['manage/menu.link']['logout'] ?>"><i class="glyphicon glyphicon-log-out"  style="top: 3px;"></i> 退出</a></li>
+                                    </ul>
+                                </li>
+                            </ul>
+                        </div>
+                        
+                    </div>
+                </div>
+            </div>
+            

+ 80 - 0
data/compile/leek/manage/moltran/inc/script.cmp.php

@@ -0,0 +1,80 @@
+
+
+<div class="modal fade" id="dever_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
+  <div class="modal-dialog">
+    <div class="modal-content">
+        <div class="modal-header">
+            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
+            <h3 id="dever_modal_title">消息提醒</h3>
+        </div>
+        <div class="modal-body" id="dever_modal_body" style="overflow-x: hidden;overflow-y: auto;max-height: 400px;">
+            
+        </div>
+        <div class="modal-footer">
+            <button class="btn btn-default" id="dever_modal_no" data-dismiss="modal" aria-hidden="true">取消</button>
+            <button class="btn btn-danger" id="dever_modal_yes">确定</button>
+        </div>
+      </div>
+    </div>
+</div>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pic/webp.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/jquery/store.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/bootstrap/js/bootstrap.min.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pjax/pjax.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pjax/nprogress.js"></script>
+
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/color/colpick.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/datetime/jquery.datetimepicker.min.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pnotify/pnotify.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/fancybox/jquery.fancybox.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/echarts/echarts.common.min.js?v1"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/highlight/highlight.min.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/manage/main.js?v6"></script>
+
+
+<script>
+    var resizefunc = [];
+
+    $(document).ready(function()
+    {
+        initMenu();
+    });
+</script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>detect.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>fastclick.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>jquery.slimscroll.js"></script>
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>waves.js"></script> 
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>wow.min.js"></script> 
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>jquery.app.js"></script> 
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/table/rwd-table.min.js?v3"></script>
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/ui/ui.min.js"></script>
+
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/valid/jquery.validationEngine.min.js?v3"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/kindeditor/kindeditor-all-min.js?v4"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/kindeditor/lang/zh-CN.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/layui/upload.js?v1"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/layui/layui.js"></script>

+ 91 - 0
data/compile/leek/manage/moltran/login.cmp.php

@@ -0,0 +1,91 @@
+<?php $data['manage/auth.set']=Dever::load('manage/auth.set') ?>
+<!DOCTYPE html>
+<!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/head.cmp.php' ?>
+</head>
+    <body>
+
+
+        <div class="wrapper-page">
+            <div class="panel panel-color panel-primary panel-pages">
+                <div class="panel-heading bg-img"> 
+                    <div class="bg-overlay"></div>
+                    <h3 class="text-center m-t-10 text-white"> 登录到 <strong id="name"><?php  echo Dever::load("manage/auth.config#title") ?></strong> </h3>
+                </div> 
+
+
+                <div class="panel-body">
+                <form action="<?php  echo Dever::url("auth.login") ?>" method="post" target="f1" class="form-horizontal m-t-20" id="login">
+                <input type="hidden" name="function" id="function" value="msg">
+                <input type="hidden" name="refer" id="refer" value="<?php echo $data['manage/auth.set']['refer'] ?>">
+                <iframe id="f1" name="f1" style="display:none;"></iframe>
+                    
+                    <div class="form-group">
+                        <div class="col-xs-12">
+                            <input class="form-control input-lg" name="username" type="text" required="" placeholder="账号">
+                        </div>
+                    </div>
+
+                    <div class="form-group">
+                        <div class="col-xs-12">
+                            <input class="form-control input-lg" name="password" type="password" required="" placeholder="密码">
+                        </div>
+                    </div>
+
+                    <div class="form-group">
+                        <div class="col-xs-12">
+                            <div class="checkbox checkbox-primary">
+                                <input id="checkbox-signup" type="checkbox" checked>
+                                <label for="checkbox-signup">
+                                    记住密码
+                                </label>
+                            </div>
+                            
+                        </div>
+                    </div>
+                    
+                    <div class="form-group text-center m-t-40">
+                        <div class="col-xs-12">
+                            <button class="btn btn-primary btn-lg w-lg waves-effect waves-light" type="submit">登录</button>
+                        </div>
+                    </div>
+
+                    <div class="form-group m-t-30" style="display:none;">
+                        <div class="col-sm-7">
+                            <a href="recoverpw.html"><i class="fa fa-lock m-r-5"></i> 忘记密码?</a>
+                        </div>
+                        <div class="col-sm-5 text-right">
+                            <a href="register.html">注册</a>
+                        </div>
+                    </div>
+                </form> 
+                </div>                                 
+                
+            </div>
+
+            <div>
+                <p class="pull-right" style="<?php if(!(Dever::config("base")->copyright)): ?>display:none;<?php endif; ?>" id="footer"><?php  echo Dever::config("base")->copyright ?></p>
+            </div>
+        </div>
+
+        
+
+        
+        <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/script.cmp.php' ?>
+        <script>
+        $(function()
+        {
+          $("#login").bind("keydown",function(e){
+            var theEvent = e || window.event;    
+            var code = theEvent.keyCode || theEvent.which || theEvent.charCode;    
+            if (code == 13) {    
+                    $("#login").submit();
+                }
+           });
+        });
+
+        </script>
+    </body>
+</html>

+ 170 - 0
data/compile/leek/manage/moltran/project/database/list.cmp.php

@@ -0,0 +1,170 @@
+<?php $data['manage/database.page_list']=Dever::load('manage/database.page_list') ?>
+<?php $data['manage/database.cookie']=Dever::load('manage/database.cookie') ?>
+<?php $data['manage/top.get']=Dever::load('manage/top.get') ?>
+<?php $data['manage/database.info']=Dever::load('manage/database.info') ?>
+<?php $data['manage/database.listStyle']=Dever::load('manage/database.listStyle') ?>
+<?php $data['manage/database.list_search']=Dever::load('manage/database.list_search') ?>
+<?php $data['manage/database.list_thead']=Dever::load('manage/database.list_thead') ?>
+<?php $data['manage/database.list_tbody']=Dever::load('manage/database.list_tbody') ?>
+<?php $data['manage/database.page_list_table']=Dever::load('manage/database.page_list_table') ?>
+<?php $data['manage/database.list_button']=Dever::load('manage/database.list_button') ?>
+<?php $data['manage/database.list_mul']=Dever::load('manage/database.list_mul') ?>
+<?php $data['manage/database.banner']=Dever::load('manage/database.banner') ?>
+<!DOCTYPE html>
+<?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?><!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/head.cmp.php' ?>
+
+</head>
+  
+<body class="theme-<?php  echo Dever::load("/auth.config#template") ?>">
+
+<div id="wrapper" class="<?php echo $data['manage/database.cookie']['wrapper'] ?>">
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/nav.cmp.php' ?>
+    
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/menu.cmp.php' ?>
+
+    
+    
+    
+    <div class="content-page">
+        
+        <div class="content"><?php endif; ?>
+<style>
+.container_list .form-control
+{
+    width:80%;
+    display: inline;
+}
+.container_list .panel-heading .form-control,#mul .form-control,#page .form-control
+{
+    display:inline;
+    width:15%;
+    margin-top: 10px;
+}
+
+.container_list .table
+{
+    margin-bottom: 0px;
+}
+
+.container_list td
+{
+    vertical-align: middle;
+}
+
+.container_list th,.container_list td
+{
+    white-space: nowrap;
+    /*white-space: none;*/
+}
+.container_list .table-responsive[data-pattern="priority-columns"]
+{
+    position:inherit;
+    margin-top:20px;
+    overflow-x: auto;
+    overflow-y: hidden;
+}
+</style>
+<style id="addstyle"><?php echo $data['manage/database.listStyle'] ?></style>
+<div class="topbar" style="<?php if($data['manage/database.banner']): ?><?php else: ?>none<?php endif; ?>">
+    <div class="banner dever-layout" style="<?php if(!(Dever::load('manage/database.banner'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.banner'] ?></div>
+</div>
+            <div class="container container_list" id="content_1" style="<?php echo $data['manage/database.page_list']['s1'] ?>"><?php echo $data['manage/database.page_list']['content'] ?></div>
+            <div class="container container_list" id="content_2" style="<?php echo $data['manage/database.page_list']['s2'] ?>">
+                
+                <div class="row">
+                    <div class="col-sm-12">
+                        <?php if(isset($data['manage/top.get']) && is_array($data['manage/top.get'])): ?><?php $t=count($data['manage/top.get'])-1 ?><?php $i=0 ?><?php foreach($data['manage/top.get'] as $k => $v): ?><ul class="nav navbar-nav navbar-left data-auth-top">
+                            <li class="dropdown">
+                                <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
+                                    <span><?php  echo $v['name'] ?></span>
+                                </a>
+
+                              <ul class="dropdown-menu" style="overflow: auto;max-height: 350px;">
+                                <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                              </ul>
+                            </li>
+                        </ul><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/top.get'] ?><?php endif; ?>
+                        <h4 class="pull-left page-title" id="list-name"><?php echo $data['manage/database.info']['list_header'] ?></h4>
+                        <ol class="breadcrumb pull-right">
+                            <li><a href="#dever_modal" data-toggle="modal" onclick="showMsg('数据结构', $(this), '#struct')" id="list-project"><?php echo $data['manage/database.info']['project_name'] ?></a></li>
+                            <li class="active" id="list-desc"><?php  echo Dever::load("manage/database.info#list_desc") ?>(共<?php  echo Dever::total("current") ?>条)</li>
+                        </ol>
+                    </div>
+                </div>
+
+                <form id="form1" name="form1" method="post" target="f1" action="<?php echo $data['manage/database.info']['list'] ?>">
+                <input type="hidden" name="function" id="function" value="msg"/>
+                <input type="hidden" name="url" id="url" value="<?php echo $data['manage/database.info']['mul'] ?>"/>
+                <input type="hidden" name="method" id="method" value="search"/>
+                <iframe id="f1" name="f1" style="display:none;"></iframe>
+
+                    <div class="row">
+                        <div class="col-lg-12">
+                            <div class="panel panel-border panel-primary">
+                                <div class="panel-heading"> 
+                                    <div class="btn-toolbar list-toolbar">
+
+ 
+                                        <a class="btn btn-primary" type="button" id="list-parent" style="<?php echo $data['manage/database.info']['parent_state'] ?>" href="<?php echo $data['manage/database.info']['parent'] ?>"><i class="fa fa-chevron-left"></i> 返回上一页</a>
+                                        
+                                        <a class="btn btn-primary" type="button" id="list-add" href="<?php echo $data['manage/database.info']['add'] ?>" style="<?php echo $data['manage/database.info']['add_state'] ?>"><i class="fa fa-plus"></i> 新增</a>
+                                       
+                                        
+                                        <span id="list-button"><?php echo $data['manage/database.list_button'] ?></span>
+                                        <div id="search"><?php echo $data['manage/database.list_search'] ?></div>
+                                    </div>
+                                </div> 
+                                <div id="table_1" style="<?php echo $data['manage/database.page_list_table']['s1'] ?>" class="panel-body table-rep-plugin"><?php echo $data['manage/database.page_list_table']['content'] ?></div>
+                                <div id="table_2" class="panel-body table-rep-plugin" style="<?php echo $data['manage/database.page_list_table']['s2'] ?>"> 
+
+                                    <div class="table-responsive" data-pattern="priority-columns">
+                                        <div>
+                                            <table id="tech-companies-1" class="table table-small-font table-bordered table-striped table-tool">
+                                                <thead id="list-thead">
+                                                    <tr><?php if(isset($data['manage/database.list_thead']) && is_array($data['manage/database.list_thead'])): ?><?php $t=count($data['manage/database.list_thead'])-1 ?><?php $i=0 ?><?php foreach($data['manage/database.list_thead'] as $k => $v): ?><?php echo $v ?><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/database.list_thead'] ?><?php endif; ?></tr>
+                                                </thead>
+                                                <tbody id="list-tbody"><?php if(isset($data['manage/database.list_tbody']) && is_array($data['manage/database.list_tbody'])): ?><?php $t=count($data['manage/database.list_tbody'])-1 ?><?php $i=0 ?><?php foreach($data['manage/database.list_tbody'] as $k => $v): ?><?php echo $v ?><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/database.list_tbody'] ?><?php endif; ?></tbody>
+                                            </table>
+                                        </div>
+                                    </div>  
+                                    <div id="mul"><?php echo $data['manage/database.list_mul'] ?></div>
+                                    <div id="page"><?php  echo Dever::page("current") ?></div>
+                                    <div class="dever_desc" id="desc" style="<?php if(!(Dever::load('manage/database.info#listDesc'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.info']['listDesc'] ?></div>
+                                </div> 
+                            </div>
+
+                        </div>
+                    </div> 
+                    
+                </form>
+                <form id="form2" name="form2" method="get" style="display: none;">
+                </form>
+                <div id="struct" style="display:none;"><?php echo $data['manage/database.info']['struct'] ?></div>
+                <script>
+                    $(document).ready(function()
+                    {
+                      init();
+                    });
+                </script>
+            </div>
+        <?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?></div>
+        
+
+        <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/foot.cmp.php' ?>
+        
+        </div>
+        
+        
+        
+
+        <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/chat.cmp.php' ?>
+        
+    </div>
+
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/script.cmp.php' ?>
+
+</body>
+</html><?php endif; ?>

+ 137 - 0
data/compile/leek/manage/moltran/project/database/update.cmp.php

@@ -0,0 +1,137 @@
+<?php $data['manage/database.page_update']=Dever::load('manage/database.page_update') ?>
+<?php $data['manage/database.cookie']=Dever::load('manage/database.cookie') ?>
+<?php $data['manage/top.get']=Dever::load('manage/top.get') ?>
+<?php $data['manage/database.info']=Dever::load('manage/database.info') ?>
+<?php $data['manage/database.update']=Dever::load('manage/database.update') ?>
+<?php $data['/database.info']=Dever::load('/database.info') ?>
+<?php $data['manage/database.valid']=Dever::load('manage/database.valid') ?>
+<?php $data['manage/database.save']=Dever::load('manage/database.save') ?>
+<?php $data['manage/database.update_button']=Dever::load('manage/database.update_button') ?>
+<?php $data['manage/database.banner']=Dever::load('manage/database.banner') ?>
+<!DOCTYPE html>
+<?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?><!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/head.cmp.php' ?>
+
+</head>
+  
+<body class="theme-<?php  echo Dever::load("/auth.config#template") ?>">
+
+  
+  <div id="wrapper" class="<?php echo $data['manage/database.cookie']['wrapper'] ?>">    
+
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/nav.cmp.php' ?>
+    
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/menu.cmp.php' ?>
+
+    
+    
+                          
+    <div class="content-page">
+        
+        <div class="content"><?php endif; ?>
+            <style>
+            .container_update #update_button button
+            {
+              margin-right: 5px;
+            }
+            .container_update #update_button
+            {
+              margin-top:20px;
+            }
+            .container_update .form-control
+            {
+              width: 50%;
+            }
+            .simditor img
+            {
+              width:100%;
+            }
+            </style>
+            <div class="topbar" style="<?php if($data['manage/database.banner']): ?><?php else: ?>none<?php endif; ?>">
+                <div class="banner dever-layout" style="<?php if(!(Dever::load('manage/database.banner'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.banner'] ?></div>
+            </div>
+            <div class="container container_update" id="content_1" style="<?php echo $data['manage/database.page_update']['s1'] ?>"><?php echo $data['manage/database.page_update']['content'] ?></div>
+            <div class="container container_update" id="content_2" style="<?php echo $data['manage/database.page_update']['s2'] ?>">
+                
+                <div class="row">
+                    <div class="col-sm-12">
+                        <?php if(isset($data['manage/top.get']) && is_array($data['manage/top.get'])): ?><?php $t=count($data['manage/top.get'])-1 ?><?php $i=0 ?><?php foreach($data['manage/top.get'] as $k => $v): ?><ul class="nav navbar-nav navbar-left data-auth-top">
+                            <li class="dropdown">
+                                <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
+                                    <span><?php  echo $v['name'] ?></span>
+                                </a>
+
+                              <ul class="dropdown-menu">
+                                <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                              </ul>
+                            </li>
+                        </ul><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/top.get'] ?><?php endif; ?>
+                        <h4 class="pull-left page-title" id="list-name"><?php echo $data['manage/database.info']['update_header'] ?></h4>
+                        <ol class="breadcrumb pull-right">
+                            <li><a href="#dever_modal" data-toggle="modal" onclick="showMsg('数据结构', $(this), '#struct')" id="list-project"><?php echo $data['manage/database.info']['project_name'] ?></a></li>
+                            <li class="active" id="list-desc"><?php echo $data['manage/database.info']['update_desc'] ?></li>
+                        </ol>
+                    </div>
+                </div>
+
+                <form method="post" target="f1" class="form1" role="form" autocomplete="off" action="<?php echo $data['manage/database.info']['action'] ?>">
+                <input type="hidden" name="function" id="function" value="msg"/>
+                <input type="hidden" name="url" id="url" value="<?php echo $data['manage/database.info']['list'] ?>" />
+                <input type="hidden" name="project" id="project" value="<?php echo $data['manage/database.info']['project'] ?>" />
+                <input type="hidden" name="table" id="table" value="<?php echo $data['manage/database.info']['table'] ?>" />
+                <iframe id="f1" name="f1" style="display:none;"></iframe>
+                  <div class="row">
+                    <div class="col-sm-12">
+                        <div class="panel panel-border panel-primary">
+                            <div class="panel-heading">
+                              <h3 class="panel-title dever_desc" id="desc" style="<?php if(!(Dever::load('manage/database.info#updateDesc'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.info']['updateDesc'] ?></h3>
+                              <ul class="nav nav-tabs">
+                                <li class="active" style="display:none;"><a href="#data-1" data-toggle="tab">更新数据</a></li>
+                                <li><a href="javascript:;" class="dever_update_add" style="<?php if(!(Dever::load('manage/database.info#updateMul'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.info']['updateMul'] ?></a></li>
+                                <li><a href="javascript:;" class="dever_save" style="display:none;">您有保存到草稿箱的数据</a></li>
+                              </ul>
+                            </div>
+                            <div class="panel-body" id="myTabContent">    
+                              <div class="tab-pane active in" id="data-1">     
+                                <input type="hidden" name="update_where_id" id="update_where_id" value="<?php echo $data['manage/database.info']['id'] ?>"/>
+                                <input type="hidden" name="copy_num" id="copy_num" value="0"/>                      
+                                <div id="content"><?php if(isset($data['manage/database.update']) && is_array($data['manage/database.update'])): ?><?php $t=count($data['manage/database.update'])-1 ?><?php $i=0 ?><?php foreach($data['manage/database.update'] as $k => $v): ?><?php echo $v ?><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/database.update'] ?><?php endif; ?></div>
+                              </div>
+                              <div class="list-toolbar" id="update_button" submit="<?php  echo Dever::submit() ?>"><?php echo $data['manage/database.update_button'] ?></div>
+                            </div> 
+
+                            
+                        </div> 
+                    </div> 
+                  </div> 
+                </form>
+                
+                
+                <div id="valid"><?php echo $data['manage/database.valid'] ?></div>
+                <div id="struct" style="display:none;" save="<?php echo $data['manage/database.save'] ?>"><?php echo $data['/database.info']['struct'] ?></div>
+
+                <script>
+                    $(document).ready(function()
+                    {
+                      init();
+                    });
+                </script>
+
+            </div>      
+          <?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?></div> 
+
+        
+
+        <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/foot.cmp.php' ?>
+
+    </div>
+    
+    
+    
+
+    <?php require Dever::config("base")->data . 'compile/leek/manage/moltran/inc/script.cmp.php' ?>
+
+</body>
+</html><?php endif; ?>

+ 20 - 0
data/compile/leek/manage/node/default/project/database/list.php

@@ -0,0 +1,20 @@
+<?php return array (
+  'banner' => 
+  array (
+    'name' => 'banner设定',
+    'type' => 'render',
+    'param' => 
+    array (
+      0 => 'manage/database.banner',
+      1 => 
+      array (
+        '.topbar@style' => 
+        array (
+          0 => '',
+          1 => 'none',
+        ),
+        '.banner' => 'none',
+      ),
+    ),
+  ),
+);

+ 1 - 0
data/readme

@@ -0,0 +1 @@
+test

+ 14 - 0
front/applet/demo/app.js

@@ -0,0 +1,14 @@
+App({
+    onLaunch: function () {
+        console.log('App Launch')
+    },
+    onShow: function () {
+        console.log('App Show')
+    },
+    onHide: function () {
+        console.log('App Hide')
+    },
+    globalData: {
+        hasLogin: false
+    }
+});

+ 49 - 0
front/applet/demo/app.json

@@ -0,0 +1,49 @@
+{
+  "pages": [
+    "example/index",
+
+    "example/button/button",
+    "example/list/list",
+    "example/input/input",
+    "example/slider/slider",
+    "example/uploader/uploader",
+
+    "example/article/article",
+    "example/badge/badge",
+    "example/flex/flex",
+    "example/footer/footer",
+    "example/gallery/gallery",
+    "example/grid/grid",
+    "example/icons/icons",
+    "example/loadmore/loadmore",
+    "example/panel/panel",
+    "example/preview/preview",
+    "example/progress/progress",
+
+    "example/actionsheet/actionsheet",
+    "example/dialog/dialog",
+    "example/msg/msg",
+    "example/msg/msg_success",
+    "example/msg/msg_fail",
+    "example/picker/picker",
+    "example/toast/toast",
+
+    "example/navbar/navbar",
+    "example/tabbar/tabbar",
+
+    "example/searchbar/searchbar"
+  ],
+  "window": {
+    "navigationBarTextStyle": "black",
+    "navigationBarTitleText": "WeUI for 小程序",
+    "navigationBarBackgroundColor": "#f8f8f8",
+    "backgroundColor": "#f8f8f8"
+  },
+  "networkTimeout": {
+    "request": 10000,
+    "connectSocket": 10000,
+    "uploadFile": 10000,
+    "downloadFile": 10000
+  },
+  "debug": true
+}

+ 35 - 0
front/applet/demo/app.wxss

@@ -0,0 +1,35 @@
+@import 'style/weui.wxss';
+
+page{
+    background-color: #F8F8F8;
+    font-size: 16px;
+    font-family: -apple-system-font,Helvetica Neue,Helvetica,sans-serif;
+}
+.page__hd {
+    padding: 40px;
+}
+.page__bd {
+    padding-bottom: 40px;
+}
+.page__bd_spacing {
+    padding-left: 15px;
+    padding-right: 15px;
+}
+
+.page__ft{
+    padding-bottom: 10px;
+    text-align: center;
+}
+
+.page__title {
+    text-align: left;
+    font-size: 20px;
+    font-weight: 400;
+}
+
+.page__desc {
+    margin-top: 5px;
+    color: #888888;
+    text-align: left;
+    font-size: 14px;
+}

+ 12 - 0
front/applet/demo/example/actionsheet/actionsheet.js

@@ -0,0 +1,12 @@
+Page({
+    open: function(){
+        wx.showActionSheet({
+            itemList: ['A', 'B', 'C'],
+            success: function(res) {
+                if (!res.cancel) {
+                    console.log(res.tapIndex)
+                }
+            }
+        });
+    }
+});

+ 11 - 0
front/applet/demo/example/actionsheet/actionsheet.wxml

@@ -0,0 +1,11 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">ActionSheet</view>
+        <view class="page__desc">弹出式菜单,采用小程序原生的actionsheet</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-btn-area">
+            <button type="default" bindtap="open">ActionSheet</button>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/actionsheet/actionsheet.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 1 - 0
front/applet/demo/example/article/article.js

@@ -0,0 +1 @@
+Page({});

+ 36 - 0
front/applet/demo/example/article/article.wxml

@@ -0,0 +1,36 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Article</view>
+        <view class="page__desc">文章</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-article">
+            <view class="weui-article__h1">大标题</view>
+            <view class="weui-article__section">
+                <view class="weui-article__title">章标题</view>
+                <view class="weui-article__section">
+                    <view class="weui-article__h3">1.1 节标题</view>
+                    <view class="weui-article__p">
+                        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
+                        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
+                        quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
+                        consequat.
+                    </view>
+                    <view class="weui-article__p">
+                        <image class="weui-article__img" src="../images/pic_article.png" mode="aspectFit" style="height: 180px" />
+                        <image class="weui-article__img" src="../images/pic_article.png" mode="aspectFit" style="height: 180px" />
+                    </view>
+                </view>
+                <view class="weui-article__section">
+                    <view class="weui-article__h3">1.2 节标题</view>
+                    <view class="weui-article__p">
+                        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
+                        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
+                        cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
+                        proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+                    </view>
+                </view>
+            </view>
+        </view>
+    </view>
+</view>

+ 6 - 0
front/applet/demo/example/article/article.wxss

@@ -0,0 +1,6 @@
+page{
+    background-color: #FFFFFF;
+}
+image{
+    margin: 4px 0;
+}

+ 1 - 0
front/applet/demo/example/badge/badge.js

@@ -0,0 +1 @@
+Page({});

+ 54 - 0
front/applet/demo/example/badge/badge.wxml

@@ -0,0 +1,54 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Badge</view>
+        <view class="page__desc">徽章</view>
+    </view>
+
+    <view class="page__bd">
+        <view class="weui-cells__title">新消息提示跟摘要信息后,统一在列表右侧</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_access">
+                <view class="weui-cell__bd">单行列表</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access" style="font-size: 0">
+                    <view style="display: inline-block;vertical-align:middle; font-size: 17px;">详细信息</view>
+                    <view class="weui-badge weui-badge_dot" style="margin-left: 5px;margin-right: 5px;"></view>
+                </view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">未读数红点跟在主题信息后,统一在列表左侧</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell">
+                <view class="weui-cell__hd" style="position: relative;margin-right: 10px;">
+                    <image src="../images/pic_160.png" style="width: 50px; height: 50px; display: block"/>
+                    <view class="weui-badge" style="position: absolute;top: -.4em;right: -.4em;">8</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <view>联系人名称</view>
+                    <view style="font-size: 13px;color: #888888;">摘要信息</view>
+                </view>
+            </view>
+            <view class="weui-cell weui-cell_access">
+                <view class="weui-cell__bd">
+                    <view style="display: inline-block; vertical-align: middle">单行列表</view>
+                    <view class="weui-badge" style="margin-left: 5px;">8</view>
+                </view>
+                <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+            </view>
+            <view class="weui-cell weui-cell_access">
+                <view class="weui-cell__bd">
+                    <view style="display: inline-block; vertical-align: middle">单行列表</view>
+                    <view class="weui-badge" style="margin-left: 5px;">8</view>
+                </view>
+                <view class="weui-cell__ft weui-cell__ft_in-access">详细信息</view>
+            </view>
+            <view class="weui-cell weui-cell_access">
+                <view class="weui-cell__bd">
+                    <view style="display: inline-block; vertical-align: middle">单行列表</view>
+                    <view class="weui-badge" style="margin-left: 5px;">New</view>
+                </view>
+                <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+            </view>
+        </view>
+    </view>
+</view>

+ 1 - 0
front/applet/demo/example/button/button.js

@@ -0,0 +1 @@
+Page({});

+ 28 - 0
front/applet/demo/example/button/button.wxml

@@ -0,0 +1,28 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Button</view>
+        <view class="page__desc">按钮,WeUI采用小程序原生的按钮为主体,加入一些间距的样式。</view>
+    </view>
+    <view class="page__bd page__bd_spacing">
+        <button class="weui-btn" type="primary">页面主操作 Normal</button>
+        <button class="weui-btn" type="primary" disabled="true">页面主操作 Disabled</button>
+
+        <button class="weui-btn" type="default">页面次要操作 Normal</button>
+        <button class="weui-btn" type="default" disabled="true">页面次要操作 Disabled</button>
+
+        <button class="weui-btn" type="warn">警告类操作 Normal</button>
+        <button class="weui-btn" type="warn" disabled="true">警告类操作 Disabled</button>
+
+        <view class="button-sp-area">
+            <button class="weui-btn" type="primary" plain="true">按钮</button>
+            <button class="weui-btn" type="primary" disabled="true" plain="true">按钮</button>
+
+            <button class="weui-btn" type="default" plain="true">按钮</button>
+            <button class="weui-btn" type="default" disabled="true" plain="true">按钮</button>
+
+            <button class="weui-btn mini-btn" type="primary" size="mini">按钮</button>
+            <button class="weui-btn mini-btn" type="default" size="mini">按钮</button>
+            <button class="weui-btn mini-btn" type="warn" size="mini">按钮</button>
+        </view>
+    </view>
+</view>

+ 8 - 0
front/applet/demo/example/button/button.wxss

@@ -0,0 +1,8 @@
+.button-sp-area{
+    margin: 0 auto;
+    padding-top: 15px;
+    width: 60%;
+}
+.mini-btn{
+    margin-right: 5px;
+}

+ 29 - 0
front/applet/demo/example/dialog/dialog.js

@@ -0,0 +1,29 @@
+Page({
+    openConfirm: function () {
+        wx.showModal({
+            title: '弹窗标题',
+            content: '弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内',
+            confirmText: "主操作",
+            cancelText: "辅助操作",
+            success: function (res) {
+                console.log(res);
+                if (res.confirm) {
+                    console.log('用户点击主操作')
+                }else{
+                    console.log('用户点击辅助操作')
+                }
+            }
+        });
+    },
+    openAlert: function () {
+        wx.showModal({
+            content: '弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内',
+            showCancel: false,
+            success: function (res) {
+                if (res.confirm) {
+                    console.log('用户点击确定')
+                }
+            }
+        });
+    }
+});

+ 12 - 0
front/applet/demo/example/dialog/dialog.wxml

@@ -0,0 +1,12 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Dialog</view>
+        <view class="page__desc">对话框,采用小程序原生的modal</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-btn-area">
+            <button class="weui-btn" type="default" bindtap="openConfirm">Confirm Dialog</button>
+            <button class="weui-btn" type="default" bindtap="openAlert">Alert Dialog</button>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/dialog/dialog.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 1 - 0
front/applet/demo/example/flex/flex.js

@@ -0,0 +1 @@
+Page({});

+ 31 - 0
front/applet/demo/example/flex/flex.wxml

@@ -0,0 +1,31 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Flex</view>
+        <view class="page__desc">Flex布局</view>
+    </view>
+    <view class="page__bd page__bd_spacing">
+        <view class="weui-flex">
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+        </view>
+        <view class="weui-flex">
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+        </view>
+        <view class="weui-flex">
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+        </view>
+        <view class="weui-flex">
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+        </view>
+        <view class="weui-flex">
+            <view><view class="placeholder">weui</view></view>
+            <view class="weui-flex__item"><view class="placeholder">weui</view></view>
+            <view><view class="placeholder">weui</view></view>
+        </view>
+    </view>
+</view>

+ 9 - 0
front/applet/demo/example/flex/flex.wxss

@@ -0,0 +1,9 @@
+.placeholder{
+    margin: 5px;
+    padding: 0 10px;
+    text-align: center;
+    background-color: #EBEBEB;
+    height: 2.3em;
+    line-height: 2.3em;
+    color: #cfcfcf;
+}

+ 1 - 0
front/applet/demo/example/footer/footer.js

@@ -0,0 +1 @@
+Page({});

+ 36 - 0
front/applet/demo/example/footer/footer.wxml

@@ -0,0 +1,36 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Footer</view>
+        <view class="page__desc">页脚</view>
+    </view>
+    <view class="page__bd page__bd_spacing">
+        <view class="weui-footer">
+            <view class="weui-footer__text">Copyright © 2008-2016 weui.io</view>
+        </view>
+
+
+        <view class="weui-footer">
+            <view class="weui-footer__links">
+                <navigator url="" class="weui-footer__link">底部链接</navigator>
+            </view>
+            <view class="weui-footer__text">Copyright © 2008-2016 weui.io</view>
+        </view>
+
+
+        <view class="weui-footer">
+            <view class="weui-footer__links">
+                <navigator url="" class="weui-footer__link">底部链接</navigator>
+                <navigator url="" class="weui-footer__link">底部链接</navigator>
+            </view>
+            <view class="weui-footer__text">Copyright © 2008-2016 weui.io</view>
+        </view>
+
+
+        <view class="weui-footer weui-footer_fixed-bottom">
+            <view class="weui-footer__links">
+                <navigator url="" class="weui-footer__link">WeUI首页</navigator>
+            </view>
+            <view class="weui-footer__text">Copyright © 2008-2016 weui.io</view>
+        </view>
+    </view>
+</view>

+ 8 - 0
front/applet/demo/example/footer/footer.wxss

@@ -0,0 +1,8 @@
+/* 作为展示用的样式 */
+
+.weui-footer{
+    margin-bottom: 50px;
+}
+.weui-footer_fixed-bottom{
+    margin-bottom: 0;
+}

+ 1 - 0
front/applet/demo/example/gallery/gallery.js

@@ -0,0 +1 @@
+Page({});

+ 6 - 0
front/applet/demo/example/gallery/gallery.wxml

@@ -0,0 +1,6 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Gallery</view>
+        <view class="page__desc">画廊,建议采用小程序原生的wx.previewImage来实现。详情请看小程序文档。</view>
+    </view>
+</view>

+ 5 - 0
front/applet/demo/example/grid/grid.js

@@ -0,0 +1,5 @@
+Page({
+    data: {
+        grids: [0, 1, 2, 3, 4, 5, 6, 7, 8]
+    }
+});

+ 16 - 0
front/applet/demo/example/grid/grid.wxml

@@ -0,0 +1,16 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Grid</view>
+        <view class="page__desc">九宫格</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-grids">
+            <block wx:for="{{grids}}" wx:key="*this">
+                <navigator url="" class="weui-grid" hover-class="weui-grid_active">
+                    <image class="weui-grid__icon" src="../images/icon_tabbar.png" />
+                    <view class="weui-grid__label">Grid</view>
+                </navigator>
+            </block>
+        </view>
+    </view>
+</view>

+ 1 - 0
front/applet/demo/example/icons/icons.js

@@ -0,0 +1 @@
+Page({});

+ 53 - 0
front/applet/demo/example/icons/icons.wxml

@@ -0,0 +1,53 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Icons</view>
+        <view class="page__desc">图标</view>
+    </view>
+    <view class="page__bd">
+        <view class="icon-box">
+            <icon type="success" size="93"></icon>
+            <view class="icon-box__ctn">
+                <view class="icon-box__title">成功</view>
+                <view class="icon-box__desc">用于表示操作顺利达成</view>
+            </view>
+        </view>
+        <view class="icon-box">
+            <icon type="info" size="93"></icon>
+            <view class="icon-box__ctn">
+                <view class="icon-box__title">提示</view>
+                <view class="icon-box__desc">用于表示信息提示;也常用于缺乏条件的操作拦截,提示用户所需信息</view>
+            </view>
+        </view>
+        <view class="icon-box">
+            <icon type="warn" size="93" color="#FFBE00"></icon>
+            <view class="icon-box__ctn">
+                <view class="icon-box__title">普通警告</view>
+                <view class="icon-box__desc">用于表示操作后将引起一定后果的情况</view>
+            </view>
+        </view>
+        <view class="icon-box">
+            <icon type="warn" size="93"></icon>
+            <view class="icon-box__ctn">
+                <view class="icon-box__title">强烈警告</view>
+                <view class="icon-box__desc">用于表示操作后将引起严重的不可挽回的后果的情况</view>
+            </view>
+        </view>
+        <view class="icon-box">
+            <icon type="waiting" size="93"></icon>
+            <view class="icon-box__ctn">
+                <view class="icon-box__title">等待</view>
+                <view class="icon-box__desc">用于表示等待</view>
+            </view>
+        </view>
+        <view class="icon_sp_area">
+            <icon type="success" size="23"></icon>
+            <icon type="success_no_circle" size="23"></icon>
+            <icon type="circle" size="23"></icon>
+            <icon type="warn" size="23" color="#F43530"></icon>
+            <icon type="download" size="23"></icon>
+            <icon type="info_circle" size="23"></icon>
+            <icon type="cancel" size="23"></icon>
+            <icon type="search" size="20"></icon>
+        </view>
+    </view>
+</view>

+ 28 - 0
front/applet/demo/example/icons/icons.wxss

@@ -0,0 +1,28 @@
+icon{
+    margin-right: 13px;
+}
+.page__bd {
+    padding-left: 40px;
+    padding-right: 40px;
+    text-align: left;
+}
+.icon-box{
+    margin-bottom: 25px;
+    display: flex;
+    align-items: center;
+}
+.icon-box__ctn{
+    flex-shrink: 100;
+}
+.icon-box__title{
+    font-size: 20px;
+}
+.icon-box__desc{
+    margin-top: 6px;
+    font-size: 12px;
+    color: #888888;
+}
+.icon_sp_area {
+    margin-top: 10px;
+    text-align: left;
+}

+ 4 - 0
front/applet/demo/example/images/base64.js

@@ -0,0 +1,4 @@
+module.exports = {
+    icon20: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAuCAMAAABgZ9sFAAAAVFBMVEXx8fHMzMzr6+vn5+fv7+/t7e3d3d2+vr7W1tbHx8eysrKdnZ3p6enk5OTR0dG7u7u3t7ejo6PY2Njh4eHf39/T09PExMSvr6+goKCqqqqnp6e4uLgcLY/OAAAAnklEQVRIx+3RSRLDIAxE0QYhAbGZPNu5/z0zrXHiqiz5W72FqhqtVuuXAl3iOV7iPV/iSsAqZa9BS7YOmMXnNNX4TWGxRMn3R6SxRNgy0bzXOW8EBO8SAClsPdB3psqlvG+Lw7ONXg/pTld52BjgSSkA3PV2OOemjIDcZQWgVvONw60q7sIpR38EnHPSMDQ4MjDjLPozhAkGrVbr/z0ANjAF4AcbXmYAAAAASUVORK5CYII=",
+    icon60: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAMAAAAOusbgAAAAeFBMVEUAwAD///+U5ZTc9twOww7G8MYwzDCH4YcfyR9x23Hw+/DY9dhm2WZG0kbT9NP0/PTL8sux7LFe115T1VM+zz7i+OIXxhes6qxr2mvA8MCe6J6M4oz6/frr+us5zjn2/fa67rqB4IF13XWn6ad83nxa1loqyirn+eccHxx4AAAC/klEQVRo3u2W2ZKiQBBF8wpCNSCyLwri7v//4bRIFVXoTBBB+DAReV5sG6lTXDITiGEYhmEYhmEYhmEYhmEY5v9i5fsZGRx9PyGDne8f6K9cfd+mKXe1yNG/0CcqYE86AkBMBh66f20deBc7wA/1WFiTwvSEpBMA2JJOBsSLxe/4QEEaJRrASP8EVF8Q74GbmevKg0saa0B8QbwBdjRyADYxIhqxAZ++IKYtciPXLQVG+imw+oo4Bu56rjEJ4GYsvPmKOAB+xlz7L5aevqUXuePWVhvWJ4eWiwUQ67mK51qPj4dFDMlRLBZTqF3SDvmr4BwtkECu5gHWPkmDfQh02WLxXuvbvC8ku8F57GsI5e0CmUwLz1kq3kD17R1In5816rGvQ5VMk5FEtIiWislTffuDpl/k/PzscdQsv8r9qWq4LRWX6tQYtTxvI3XyrwdyQxChXioOngH3dLgOFjk0all56XRi/wDFQrGQU3Os5t0wJu1GNtNKHdPqYaGYQuRDfbfDf26AGLYSyGS3ZAK4S8XuoAlxGSdYMKwqZKM9XJMtyqXi7HX/CiAZS6d8bSVUz5J36mEMFDTlAFQzxOT1dzLRljjB6+++ejFqka+mXIe6F59mw22OuOw1F4T6lg/9VjL1rLDoI9Xzl1MSYDNHnPQnt3D1EE7PrXjye/3pVpr1Z45hMUdcACc5NVQI0bOdS1WA0wuz73e7/5TNqBPhQXPEFGJNV2zNqWI7QKBd2Gn6AiBko02zuAOXeWIXjV0jNqdKegaE/kJQ6Bfs4aju04lMLkA2T5wBSYPKDGF3RKhFYEa6A1L1LG2yacmsaZ6YPOSAMKNsO+N5dNTfkc5Aqe26uxHpx7ZirvgCwJpWq/lmX1hA7LyabQ34tt5RiJKXSwQ+0KU0V5xg+hZrd4Bn1n4EID+WkQdgLfRNtvil9SPfwy+WQ7PFBWQz6dGWZBLkeJFXZGCfLUjCgGgqXo5TuSu3cugdcTv/HjqnBTEMwzAMwzAMwzAMwzAMw/zf/AFbXiOA6frlMAAAAABJRU5ErkJggg=="
+};

BIN
front/applet/demo/example/images/icon_footer.png


BIN
front/applet/demo/example/images/icon_footer_link.png


BIN
front/applet/demo/example/images/icon_intro.png


BIN
front/applet/demo/example/images/icon_nav_feedback.png


BIN
front/applet/demo/example/images/icon_nav_form.png


BIN
front/applet/demo/example/images/icon_nav_nav.png


BIN
front/applet/demo/example/images/icon_nav_search.png


BIN
front/applet/demo/example/images/icon_nav_special.png


BIN
front/applet/demo/example/images/icon_nav_widget.png


BIN
front/applet/demo/example/images/icon_nav_z-index.png


BIN
front/applet/demo/example/images/icon_tabbar.png


BIN
front/applet/demo/example/images/logo.png


BIN
front/applet/demo/example/images/pic_160.png


BIN
front/applet/demo/example/images/pic_article.png


BIN
front/applet/demo/example/images/vcode.jpg


+ 49 - 0
front/applet/demo/example/index.js

@@ -0,0 +1,49 @@
+Page({
+    data: {
+        list: [
+            {
+                id: 'form',
+                name: '表单',
+                open: false,
+                pages: ['button', 'list', 'input', 'slider', 'uploader']
+            },
+            {
+                id: 'widget',
+                name: '基础组件',
+                open: false,
+                pages: ['article', 'badge', 'flex', 'footer', 'gallery', 'grid', 'icons', 'loadmore', 'panel', 'preview', 'progress']
+            },
+            {
+                id: 'feedback',
+                name: '操作反馈',
+                open: false,
+                pages: ['actionsheet', 'dialog', 'msg', 'picker', 'toast']
+            },
+            {
+                id: 'nav',
+                name: '导航相关',
+                open: false,
+                pages: ['navbar', 'tabbar']
+            },
+            {
+                id: 'search',
+                name: '搜索相关',
+                open: false,
+                pages: ['searchbar']
+            }
+        ]
+    },
+    kindToggle: function (e) {
+        var id = e.currentTarget.id, list = this.data.list;
+        for (var i = 0, len = list.length; i < len; ++i) {
+            if (list[i].id == id) {
+                list[i].open = !list[i].open
+            } else {
+                list[i].open = false
+            }
+        }
+        this.setData({
+            list: list
+        });
+    }
+});

+ 31 - 0
front/applet/demo/example/index.wxml

@@ -0,0 +1,31 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">WeUI</view>
+        <view class="page__desc">WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,令用户的使用感知更加统一。</view>
+    </view>
+    <view class="page__bd page__bd_spacing">
+        <view class="kind-list">
+            <block wx:for="{{list}}" wx:key="id">
+                <view class="kind-list__item">
+                    <view id="{{item.id}}" class="weui-flex kind-list__item-hd {{item.open ? 'kind-list__item-hd_show' : ''}}" bindtap="kindToggle">
+                        <view class="weui-flex__item">{{item.name}}</view>
+                        <image class="kind-list__img" src="images/icon_nav_{{item.id}}.png"></image>
+                    </view>
+                    <view class="kind-list__item-bd {{item.open ? 'kind-list__item-bd_show' : ''}}">
+                        <view class="weui-cells {{item.open ? 'weui-cells_show' : ''}}">
+                            <block wx:for="{{item.pages}}" wx:for-item="page" wx:key="*this">
+                                <navigator url="{{page}}/{{page}}" class="weui-cell weui-cell_access">
+                                    <view class="weui-cell__bd">{{page}}</view>
+                                    <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+                                </navigator>
+                            </block>
+                        </view>
+                    </view>
+                </view>
+            </block>
+        </view>
+    </view>
+    <view class="page__ft">
+        <image src="images/icon_footer.png" style="width: 84px; height: 19px;"></image>
+    </view>
+</view>

+ 6 - 0
front/applet/demo/example/index.wxss

@@ -0,0 +1,6 @@
+/*!
+ * WeUI v1.1.1 (https://github.com/weui/weui-wxss)
+ * Copyright 2017 Tencent, Inc.
+ * Licensed under the MIT license
+ */
+.weui-flex{-webkit-box-align:center;-webkit-align-items:center;align-items:center}.weui-cells{margin-top:0;opacity:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:.3s;transition:.3s}.weui-cells:after,.weui-cells:before{display:none}.weui-cells_show{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.weui-cell:before{right:15px}.kind-list__item{margin:10px 0;background-color:#fff;border-radius:2px;overflow:hidden}.kind-list__item:first-child{margin-top:0}.kind-list__img{width:30px;height:30px}.kind-list__item-hd{padding:20px;-webkit-transition:opacity .3s;transition:opacity .3s}.kind-list__item-hd_show{opacity:.4}.kind-list__item-bd{height:0;overflow:hidden}.kind-list__item-bd_show{height:auto}

+ 106 - 0
front/applet/demo/example/input/input.js

@@ -0,0 +1,106 @@
+Page({
+    data: {
+        showTopTips: false,
+
+        radioItems: [
+            {name: 'cell standard', value: '0'},
+            {name: 'cell standard', value: '1', checked: true}
+        ],
+        checkboxItems: [
+            {name: 'standard is dealt for u.', value: '0', checked: true},
+            {name: 'standard is dealicient for u.', value: '1'}
+        ],
+
+        date: "2016-09-01",
+        time: "12:01",
+
+        countryCodes: ["+86", "+80", "+84", "+87"],
+        countryCodeIndex: 0,
+
+        countries: ["中国", "美国", "英国"],
+        countryIndex: 0,
+
+        accounts: ["微信号", "QQ", "Email"],
+        accountIndex: 0,
+
+        isAgree: false
+    },
+    showTopTips: function(){
+        var that = this;
+        this.setData({
+            showTopTips: true
+        });
+        setTimeout(function(){
+            that.setData({
+                showTopTips: false
+            });
+        }, 3000);
+    },
+    radioChange: function (e) {
+        console.log('radio发生change事件,携带value值为:', e.detail.value);
+
+        var radioItems = this.data.radioItems;
+        for (var i = 0, len = radioItems.length; i < len; ++i) {
+            radioItems[i].checked = radioItems[i].value == e.detail.value;
+        }
+
+        this.setData({
+            radioItems: radioItems
+        });
+    },
+    checkboxChange: function (e) {
+        console.log('checkbox发生change事件,携带value值为:', e.detail.value);
+
+        var checkboxItems = this.data.checkboxItems, values = e.detail.value;
+        for (var i = 0, lenI = checkboxItems.length; i < lenI; ++i) {
+            checkboxItems[i].checked = false;
+
+            for (var j = 0, lenJ = values.length; j < lenJ; ++j) {
+                if(checkboxItems[i].value == values[j]){
+                    checkboxItems[i].checked = true;
+                    break;
+                }
+            }
+        }
+
+        this.setData({
+            checkboxItems: checkboxItems
+        });
+    },
+    bindDateChange: function (e) {
+        this.setData({
+            date: e.detail.value
+        })
+    },
+    bindTimeChange: function (e) {
+        this.setData({
+            time: e.detail.value
+        })
+    },
+    bindCountryCodeChange: function(e){
+        console.log('picker country code 发生选择改变,携带值为', e.detail.value);
+
+        this.setData({
+            countryCodeIndex: e.detail.value
+        })
+    },
+    bindCountryChange: function(e) {
+        console.log('picker country 发生选择改变,携带值为', e.detail.value);
+
+        this.setData({
+            countryIndex: e.detail.value
+        })
+    },
+    bindAccountChange: function(e) {
+        console.log('picker account 发生选择改变,携带值为', e.detail.value);
+
+        this.setData({
+            accountIndex: e.detail.value
+        })
+    },
+    bindAgreeChange: function (e) {
+        this.setData({
+            isAgree: !!e.detail.value.length
+        });
+    }
+});

+ 194 - 0
front/applet/demo/example/input/input.wxml

@@ -0,0 +1,194 @@
+<view class="page" xmlns:wx="http://www.w3.org/1999/xhtml">
+    <view class="page__hd">
+        <view class="page__title">Input</view>
+        <view class="page__desc">表单输入</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-toptips weui-toptips_warn" wx:if="{{showTopTips}}">错误提示</view>
+
+        <view class="weui-cells__title">单选列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <radio-group bindchange="radioChange">
+                <label class="weui-cell weui-check__label" wx:for="{{radioItems}}" wx:key="value">
+                    <radio class="weui-check" value="{{item.value}}" checked="{{item.checked}}"/>
+
+                    <view class="weui-cell__bd">{{item.name}}</view>
+                    <view class="weui-cell__ft weui-cell__ft_in-radio" wx:if="{{item.checked}}">
+                        <icon class="weui-icon-radio" type="success_no_circle" size="16"></icon>
+                    </view>
+                </label>
+            </radio-group>
+            <view class="weui-cell weui-cell_link">
+                <view class="weui-cell__bd">添加更多</view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">复选列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <checkbox-group bindchange="checkboxChange">
+                <label class="weui-cell weui-check__label" wx:for="{{checkboxItems}}" wx:key="value">
+                    <checkbox class="weui-check" value="{{item.value}}" checked="{{item.checked}}"/>
+
+                    <view class="weui-cell__hd weui-check__hd_in-checkbox">
+                        <icon class="weui-icon-checkbox_circle" type="circle" size="23" wx:if="{{!item.checked}}"></icon>
+                        <icon class="weui-icon-checkbox_success" type="success" size="23" wx:if="{{item.checked}}"></icon>
+                    </view>
+                    <view class="weui-cell__bd">{{item.name}}</view>
+                </label>
+            </checkbox-group>
+            <view class="weui-cell weui-cell_link">
+                <view class="weui-cell__bd">添加更多</view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">表单</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_input">
+                <view class="weui-cell__hd">
+                    <view class="weui-label">qq</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <input class="weui-input" placeholder="请输入qq"/>
+                </view>
+            </view>
+            <view class="weui-cell weui-cell_input weui-cell_vcode">
+                <view class="weui-cell__hd">
+                    <view class="weui-label">手机号</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <input class="weui-input" placeholder="请输入手机号" />
+                </view>
+                <view class="weui-cell__ft">
+                    <view class="weui-vcode-btn">获取验证码</view>
+                </view>
+            </view>
+            <view class="weui-cell weui-cell_input">
+                <view class="weui-cell__hd">
+                    <view class="weui-label">日期</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <picker mode="date" value="{{date}}" start="2015-09-01" end="2017-09-01" bindchange="bindDateChange">
+                        <view class="weui-input">{{date}}</view>
+                    </picker>
+                </view>
+            </view>
+            <view class="weui-cell weui-cell_input">
+                <view class="weui-cell__hd">
+                    <view class="weui-label">时间</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <picker mode="time" value="{{time}}" start="09:01" end="21:01" bindchange="bindTimeChange">
+                        <view class="weui-input">{{time}}</view>
+                    </picker>
+                </view>
+            </view>
+            <view class="weui-cell weui-cell_input weui-cell_vcode">
+                <view class="weui-cell__hd">
+                    <view class="weui-label">验证码</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <input class="weui-input" placeholder="请输入验证码" />
+                </view>
+                <view class="weui-cell__ft">
+                    <image class="weui-vcode-img" src="../images/vcode.jpg" style="width: 108px"></image>
+                </view>
+            </view>
+        </view>
+        <view class="weui-cells__tips">底部说明文字底部说明文字</view>
+
+        <view class="weui-cells__title">表单报错</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_input weui-cell_warn">
+                <view class="weui-cell__hd">
+                    <view class="weui-label">卡号</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <input class="weui-input" placeholder="请输入卡号"/>
+                </view>
+                <view class="weui-cell__ft">
+                    <icon type="warn" size="23" color="#E64340"></icon>
+                </view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">开关</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_switch">
+                <view class="weui-cell__bd">标题文字</view>
+                <view class="weui-cell__ft">
+                    <switch checked />
+                </view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">文本框</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_input">
+                <view class="weui-cell__bd">
+                    <input class="weui-input" placeholder="请输入文本" />
+                </view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">文本域</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell">
+                <view class="weui-cell__bd">
+                    <textarea class="weui-textarea" placeholder="请输入文本" style="height: 3.3em" />
+                    <view class="weui-textarea-counter">0/200</view>
+                </view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">选择</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_select">
+                <view class="weui-cell__hd" style="width: 105px">
+                    <picker bindchange="bindCountryCodeChange" value="{{countryCodeIndex}}" range="{{countryCodes}}">
+                        <view class="weui-select">{{countryCodes[countryCodeIndex]}}</view>
+                    </picker>
+                </view>
+                <view class="weui-cell__bd weui-cell__bd_in-select-before">
+                    <input class="weui-input" placeholder="请输入号码" />
+                </view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">选择</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell weui-cell_select">
+                <view class="weui-cell__bd">
+                    <picker bindchange="bindAccountChange" value="{{accountIndex}}" range="{{accounts}}">
+                        <view class="weui-select">{{accounts[accountIndex]}}</view>
+                    </picker>
+                </view>
+            </view>
+            <view class="weui-cell weui-cell_select">
+                <view class="weui-cell__hd weui-cell__hd_in-select-after">
+                    <view class="weui-label">国家/地区</view>
+                </view>
+                <view class="weui-cell__bd">
+                    <picker bindchange="bindCountryChange" value="{{countryIndex}}" range="{{countries}}">
+                        <view class="weui-select weui-select_in-select-after">{{countries[countryIndex]}}</view>
+                    </picker>
+                </view>
+            </view>
+        </view>
+
+        <checkbox-group bindchange="bindAgreeChange">
+            <label class="weui-agree" for="weuiAgree">
+                <view class="weui-agree__text">
+                    <checkbox class="weui-agree__checkbox" id="weuiAgree" value="agree" checked="{{isAgree}}" />
+                    <view class="weui-agree__checkbox-icon">
+                        <icon class="weui-agree__checkbox-icon-check" type="success_no_circle" size="9" wx:if="{{isAgree}}"></icon>
+                    </view>
+                    阅读并同意<navigator url="" class="weui-agree__link">《相关条款》</navigator>
+                </view>
+            </label>
+        </checkbox-group>
+
+        <view class="weui-btn-area">
+            <button class="weui-btn" type="primary" bindtap="showTopTips">确定</button>
+        </view>
+    </view>
+</view>

+ 8 - 0
front/applet/demo/example/list/list.js

@@ -0,0 +1,8 @@
+var base64 = require("../images/base64");
+Page({
+    onLoad: function(){
+        this.setData({
+            icon: base64.icon20
+        });
+    }
+});

+ 75 - 0
front/applet/demo/example/list/list.wxml

@@ -0,0 +1,75 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">List</view>
+        <view class="page__desc">列表</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-cells__title">带说明的列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell">
+                <view class="weui-cell__bd">标题文字</view>
+                <view class="weui-cell__ft">说明文字</view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">带图标、说明的列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <view class="weui-cell">
+                <view class="weui-cell__hd">
+                    <image src="{{icon}}" style="margin-right: 5px;vertical-align: middle;width:20px; height: 20px;"></image>
+                </view>
+                <view class="weui-cell__bd">标题文字</view>
+                <view class="weui-cell__ft">说明文字</view>
+            </view>
+            <view class="weui-cell">
+                <view class="weui-cell__hd">
+                    <image src="{{icon}}" style="margin-right: 5px;vertical-align: middle;width:20px; height: 20px;"></image>
+                </view>
+                <view class="weui-cell__bd">标题文字</view>
+                <view class="weui-cell__ft">说明文字</view>
+            </view>
+        </view>
+
+        <view class="weui-cells__title">带跳转的列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">cell standard</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+            </navigator>
+            <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">cell standard</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+            </navigator>
+        </view>
+
+        <view class="weui-cells__title">带说明、跳转的列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">cell standard</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access">说明文字</view>
+            </navigator>
+            <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">cell standard</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access">说明文字</view>
+            </navigator>
+        </view>
+
+        <view class="weui-cells__title">带图标、说明、跳转的列表项</view>
+        <view class="weui-cells weui-cells_after-title">
+            <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                <view class="weui-cell__hd">
+                    <image src="{{icon}}" style="margin-right: 5px;vertical-align: middle;width:20px; height: 20px;"></image>
+                </view>
+                <view class="weui-cell__bd">cell standard</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access">说明文字</view>
+            </navigator>
+            <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                <view class="weui-cell__hd">
+                    <image src="{{icon}}" style="margin-right: 5px;vertical-align: middle;width:20px; height: 20px;"></image>
+                </view>
+                <view class="weui-cell__bd">cell standard</view>
+                <view class="weui-cell__ft weui-cell__ft_in-access">说明文字</view>
+            </navigator>
+        </view>
+    </view>
+</view>

+ 1 - 0
front/applet/demo/example/loadmore/loadmore.js

@@ -0,0 +1 @@
+Page({});

+ 18 - 0
front/applet/demo/example/loadmore/loadmore.wxml

@@ -0,0 +1,18 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Loadmore</view>
+        <view class="page__desc">加载更多</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-loadmore">
+            <view class="weui-loading"></view>
+            <view class="weui-loadmore__tips">正在加载</view>
+        </view>
+        <view class="weui-loadmore weui-loadmore_line">
+            <view class="weui-loadmore__tips weui-loadmore__tips_in-line">暂无数据</view>
+        </view>
+        <view class="weui-loadmore weui-loadmore_line weui-loadmore_dot">
+            <view class="weui-loadmore__tips weui-loadmore__tips_in-line weui-loadmore__tips_in-dot"></view>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/loadmore/loadmore.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 12 - 0
front/applet/demo/example/msg/msg.js

@@ -0,0 +1,12 @@
+Page({
+    openSuccess: function () {
+        wx.navigateTo({
+            url: 'msg_success'
+        })
+    },
+    openFail: function () {
+        wx.navigateTo({
+            url: 'msg_fail'
+        })
+    }
+});

+ 12 - 0
front/applet/demo/example/msg/msg.wxml

@@ -0,0 +1,12 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Msg</view>
+        <view class="page__desc">提示页</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-btn-area">
+            <button class="weui-btn" type="default" bindtap="openSuccess">成功提示页</button>
+            <button class="weui-btn" type="default" bindtap="openFail">失败提示页</button>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/msg/msg.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 1 - 0
front/applet/demo/example/msg/msg_fail.js

@@ -0,0 +1 @@
+Page({});

+ 25 - 0
front/applet/demo/example/msg/msg_fail.wxml

@@ -0,0 +1,25 @@
+<view class="page">
+    <view class="weui-msg">
+        <view class="weui-msg__icon-area">
+            <icon type="warn" size="93"></icon>
+        </view>
+        <view class="weui-msg__text-area">
+            <view class="weui-msg__title">操作失败</view>
+            <view class="weui-msg__desc">内容详情,可根据实际需要安排,如果换行则不超过规定长度,居中展现<navigator url="" class="weui-msg__link">文字链接</navigator></view>
+        </view>
+        <view class="weui-msg__opr-area">
+            <view class="weui-btn-area">
+                <button class="weui-btn" type="primary">推荐操作</button>
+                <button class="weui-btn" type="default">辅助操作</button>
+            </view>
+        </view>
+        <view class="weui-msg__extra-area">
+            <view class="weui-footer">
+                <view class="weui-footer__links">
+                    <navigator url="" class="weui-footer__link">底部链接文本</navigator>
+                </view>
+                <view class="weui-footer__text">Copyright © 2008-2016 weui.io</view>
+            </view>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/msg/msg_fail.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 1 - 0
front/applet/demo/example/msg/msg_success.js

@@ -0,0 +1 @@
+Page({});

+ 25 - 0
front/applet/demo/example/msg/msg_success.wxml

@@ -0,0 +1,25 @@
+<view class="page">
+    <view class="weui-msg">
+        <view class="weui-msg__icon-area">
+            <icon type="success" size="93"></icon>
+        </view>
+        <view class="weui-msg__text-area">
+            <view class="weui-msg__title">操作成功</view>
+            <view class="weui-msg__desc">内容详情,可根据实际需要安排,如果换行则不超过规定长度,居中展现<navigator url="" class="weui-msg__link">文字链接</navigator></view>
+        </view>
+        <view class="weui-msg__opr-area">
+            <view class="weui-btn-area">
+                <button class="weui-btn" type="primary">推荐操作</button>
+                <button class="weui-btn" type="default">辅助操作</button>
+            </view>
+        </view>
+        <view class="weui-msg__extra-area">
+            <view class="weui-footer">
+                <view class="weui-footer__links">
+                    <navigator url="" class="weui-footer__link">底部链接文本</navigator>
+                </view>
+                <view class="weui-footer__text">Copyright © 2008-2016 weui.io</view>
+            </view>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/msg/msg_success.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 27 - 0
front/applet/demo/example/navbar/navbar.js

@@ -0,0 +1,27 @@
+var sliderWidth = 96; // 需要设置slider的宽度,用于计算中间位置
+
+Page({
+    data: {
+        tabs: ["选项一", "选项二", "选项三"],
+        activeIndex: 1,
+        sliderOffset: 0,
+        sliderLeft: 0
+    },
+    onLoad: function () {
+        var that = this;
+        wx.getSystemInfo({
+            success: function(res) {
+                that.setData({
+                    sliderLeft: (res.windowWidth / that.data.tabs.length - sliderWidth) / 2,
+                    sliderOffset: res.windowWidth / that.data.tabs.length * that.data.activeIndex
+                });
+            }
+        });
+    },
+    tabClick: function (e) {
+        this.setData({
+            sliderOffset: e.currentTarget.offsetLeft,
+            activeIndex: e.currentTarget.id
+        });
+    }
+});

+ 19 - 0
front/applet/demo/example/navbar/navbar.wxml

@@ -0,0 +1,19 @@
+<view class="page">
+    <view class="page__bd">
+        <view class="weui-tab">
+            <view class="weui-navbar">
+                <block wx:for="{{tabs}}" wx:key="*this">
+                    <view id="{{index}}" class="weui-navbar__item {{activeIndex == index ? 'weui-bar__item_on' : ''}}" bindtap="tabClick">
+                        <view class="weui-navbar__title">{{item}}</view>
+                    </view>
+                </block>
+                <view class="weui-navbar__slider" style="left: {{sliderLeft}}px; transform: translateX({{sliderOffset}}px); -webkit-transform: translateX({{sliderOffset}}px);"></view>
+            </view>
+            <view class="weui-tab__panel">
+                <view class="weui-tab__content" hidden="{{activeIndex != 0}}">选项一的内容</view>
+                <view class="weui-tab__content" hidden="{{activeIndex != 1}}">选项二的内容</view>
+                <view class="weui-tab__content" hidden="{{activeIndex != 2}}">选项三的内容</view>
+            </view>
+        </view>
+    </view>
+</view>

+ 12 - 0
front/applet/demo/example/navbar/navbar.wxss

@@ -0,0 +1,12 @@
+page,
+.page,
+.page__bd{
+    height: 100%;
+}
+.page__bd{
+    padding-bottom: 0;
+}
+.weui-tab__content{
+    padding-top: 60px;
+    text-align: center;
+}

+ 10 - 0
front/applet/demo/example/panel/panel.js

@@ -0,0 +1,10 @@
+var base64 = require("../images/base64");
+
+Page({
+    onLoad: function(){
+        this.setData({
+            icon20: base64.icon20,
+            icon60: base64.icon60
+        });
+    }
+});

+ 93 - 0
front/applet/demo/example/panel/panel.wxml

@@ -0,0 +1,93 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Panel</view>
+        <view class="page__desc">面板</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-panel weui-panel_access">
+            <view class="weui-panel__hd">图文组合列表</view>
+            <view class="weui-panel__bd">
+                <navigator url="" class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active">
+                    <view class="weui-media-box__hd weui-media-box__hd_in-appmsg">
+                        <image class="weui-media-box__thumb" src="{{icon60}}" />
+                    </view>
+                    <view class="weui-media-box__bd weui-media-box__bd_in-appmsg">
+                        <view class="weui-media-box__title">标题一</view>
+                        <view class="weui-media-box__desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</view>
+                    </view>
+                </navigator>
+                <navigator url="" class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active">
+                    <view class="weui-media-box__hd weui-media-box__hd_in-appmsg">
+                        <image class="weui-media-box__thumb" src="{{icon60}}" />
+                    </view>
+                    <view class="weui-media-box__bd weui-media-box__bd_in-appmsg">
+                        <view class="weui-media-box__title">标题二</view>
+                        <view class="weui-media-box__desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</view>
+                    </view>
+                </navigator>
+            </view>
+            <view class="weui-panel__ft">
+                <view class="weui-cell weui-cell_access weui-cell_link">
+                    <view class="weui-cell__bd">查看更多</view>
+                    <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+                </view>
+            </view>
+        </view>
+        <view class="weui-panel weui-panel_access">
+            <view class="weui-panel__hd">文字组合列表</view>
+            <view class="weui-panel__bd">
+                <view class="weui-media-box weui-media-box_text">
+                    <view class="weui-media-box__title weui-media-box__title_in-text">标题一</view>
+                    <view class="weui-media-box__desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</view>
+                </view>
+                <view class="weui-media-box weui-media-box_text">
+                    <view class="weui-media-box__title weui-media-box__title_in-text">标题二</view>
+                    <view class="weui-media-box__desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</view>
+                </view>
+            </view>
+            <view class="weui-panel__ft">
+                <view class="weui-cell weui-cell_access weui-cell_link">
+                    <view class="weui-cell__bd">查看更多</view>
+                    <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+                </view>
+            </view>
+        </view>
+        <view class="weui-panel">
+            <view class="weui-panel__hd">小图文组合列表</view>
+            <view class="weui-panel__bd">
+                <view class="weui-media-box weui-media-box_small-appmsg">
+                    <view class="weui-cells weui-cells_in-small-appmsg">
+                        <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                            <view class="weui-cell__hd"><image src="{{icon20}}" style="width: 20px;height: 20px;margin-right: 5px" /></view>
+                            <view class="weui-cell__bd weui-cell_primary">
+                                <view>文字标题</view>
+                            </view>
+                            <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+                        </navigator>
+                        <navigator url="" class="weui-cell weui-cell_access" hover-class="weui-cell_active">
+                            <view class="weui-cell__hd"><image src="{{icon20}}" style="width: 20px;height: 20px;margin-right: 5px" /></view>
+                            <view class="weui-cell__bd weui-cell_primary">
+                                <view>文字标题</view>
+                            </view>
+                            <view class="weui-cell__ft weui-cell__ft_in-access"></view>
+                        </navigator>
+                    </view>
+                </view>
+            </view>
+        </view>
+        <view class="weui-panel">
+            <view class="weui-panel__hd">文字列表附来源</view>
+            <view class="weui-panel__bd">
+                <view class="weui-media-box weui-media-box_text">
+                    <view class="weui-media-box__title weui-media-box__title_in-text">标题一</view>
+                    <view class="weui-media-box__desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</view>
+                    <view class="weui-media-box__info">
+                        <view class="weui-media-box__info__meta">文字来源</view>
+                        <view class="weui-media-box__info__meta">时间</view>
+                        <view class="weui-media-box__info__meta weui-media-box__info__meta_extra">其它信息</view>
+                    </view>
+                </view>
+            </view>
+        </view>
+    </view>
+</view>

+ 24 - 0
front/applet/demo/example/picker/picker.js

@@ -0,0 +1,24 @@
+Page({
+    data: {
+        array: ['美国', '中国', '巴西', '日本'],
+        index: 0,
+        date: '2016-09-01',
+        time: '12:01'
+    },
+    bindPickerChange: function(e) {
+        console.log('picker发送选择改变,携带值为', e.detail.value)
+        this.setData({
+            index: e.detail.value
+        })
+    },
+    bindDateChange: function(e) {
+        this.setData({
+            date: e.detail.value
+        })
+    },
+    bindTimeChange: function(e) {
+        this.setData({
+            time: e.detail.value
+        })
+    }
+});

+ 19 - 0
front/applet/demo/example/picker/picker.wxml

@@ -0,0 +1,19 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Picker</view>
+        <view class="page__desc">选择器,这里使用小程序原生的picker。</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-btn-area">
+            <picker bindchange="bindPickerChange" value="{{index}}" range="{{array}}">
+                <button type="default">单列选择器</button>
+            </picker>
+            <picker class="weui-btn" mode="time" value="{{time}}" start="09:01" end="21:01" bindchange="bindTimeChange">
+                <button type="default">时间选择器</button>
+            </picker>
+            <picker class="weui-btn" mode="date" value="{{date}}" start="2015-09-01" end="2017-09-01" bindchange="bindDateChange">
+                <button type="default">日期选择器</button>
+            </picker>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/picker/picker.wxss

@@ -0,0 +1,3 @@
+page{
+    background-color: #FFFFFF;
+}

+ 1 - 0
front/applet/demo/example/preview/preview.js

@@ -0,0 +1 @@
+Page({});

+ 57 - 0
front/applet/demo/example/preview/preview.wxml

@@ -0,0 +1,57 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Preview</view>
+        <view class="page__desc">表单预览</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-form-preview">
+            <view class="weui-form-preview__hd">
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">付款金额</view>
+                    <view class="weui-form-preview__value_in-hd">¥2400.00</view>
+                </view>
+            </view>
+            <view class="weui-form-preview__bd">
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">商品</view>
+                    <view class="weui-form-preview__value">电动打蛋机</view>
+                </view>
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">标题标题</view>
+                    <view class="weui-form-preview__value">名字名字名字</view>
+                </view>
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">标题标题</view>
+                    <view class="weui-form-preview__value">很长很长的名字很长很长的名字很长很长的名字很长很长的名字很长很长的名字</view>
+                </view>
+            </view>
+            <view class="weui-form-preview__ft">
+                <navigator url="" class="weui-form-preview__btn weui-form-preview__btn_primary" hover-class="weui-form-preview__btn_active">操作</navigator>
+            </view>
+        </view>
+        <view class="weui-form-preview">
+            <view class="weui-form-preview__hd">
+                <view class="weui-form-preview__label">付款金额</view>
+                <view class="weui-form-preview__value_in-hd">¥2400.00</view>
+            </view>
+            <view class="weui-form-preview__bd">
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">商品</view>
+                    <view class="weui-form-preview__value">电动打蛋机</view>
+                </view>
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">标题标题</view>
+                    <view class="weui-form-preview__value">名字名字名字</view>
+                </view>
+                <view class="weui-form-preview__item">
+                    <view class="weui-form-preview__label">标题标题</view>
+                    <view class="weui-form-preview__value">很长很长的名字很长很长的名字很长很长的名字很长很长的名字很长很长的名字</view>
+                </view>
+            </view>
+            <view class="weui-form-preview__ft">
+                <navigator class="weui-form-preview__btn weui-form-preview__btn_default" hover-class="weui-form-preview__btn_active">辅助操作</navigator>
+                <navigator class="weui-form-preview__btn weui-form-preview__btn_primary" hover-class="weui-form-preview__btn_active">操作</navigator>
+            </view>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/preview/preview.wxss

@@ -0,0 +1,3 @@
+.weui-form-preview{
+    margin-bottom: 25px;
+}

+ 31 - 0
front/applet/demo/example/progress/progress.js

@@ -0,0 +1,31 @@
+function _next(){
+    var that = this;
+    if(this.data.progress >= 100){
+        this.setData({
+            disabled: false
+        });
+        return true;
+    }
+    this.setData({
+        progress: ++this.data.progress
+    });
+    setTimeout(function(){
+        _next.call(that);
+    }, 20);
+}
+
+Page({
+    data: {
+        progress: 0,
+        disabled: false
+    },
+    upload: function(){
+        if(this.data.disabled) return;
+
+        this.setData({
+            progress: 0,
+            disabled: true
+        });
+        _next.call(this);
+    }
+});

+ 43 - 0
front/applet/demo/example/progress/progress.wxml

@@ -0,0 +1,43 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">Progress</view>
+        <view class="page__desc">进度条,这里采用小程序原生的progress</view>
+    </view>
+    <view class="page__bd page__bd_spacing">
+        <view class="weui-progress">
+            <view class="weui-progress__bar">
+                <progress percent="0" stroke-width="3" />
+            </view>
+            <view class="weui-progress__opr">
+                <icon type="cancel" size="22"></icon>
+            </view>
+        </view>
+        <view class="weui-progress">
+            <view class="weui-progress__bar">
+                <progress percent="50" stroke-width="3" />
+            </view>
+            <view class="weui-progress__opr">
+                <icon type="cancel" size="22"></icon>
+            </view>
+        </view>
+        <view class="weui-progress">
+            <view class="weui-progress__bar">
+                <progress percent="80" stroke-width="3" />
+            </view>
+            <view class="weui-progress__opr">
+                <icon type="cancel" size="22"></icon>
+            </view>
+        </view>
+        <view class="weui-progress">
+            <view class="weui-progress__bar">
+                <progress percent="{{progress}}" stroke-width="3" />
+            </view>
+            <view class="weui-progress__opr">
+                <icon type="cancel" size="22"></icon>
+            </view>
+        </view>
+        <view class="weui-btn-area">
+            <button type="primary" bindtap="upload" disabled="{{disabled}}">上传</button>
+        </view>
+    </view>
+</view>

+ 3 - 0
front/applet/demo/example/progress/progress.wxss

@@ -0,0 +1,3 @@
+.weui-progress{
+    margin-bottom: 24px;
+}

+ 27 - 0
front/applet/demo/example/searchbar/searchbar.js

@@ -0,0 +1,27 @@
+Page({
+    data: {
+        inputShowed: false,
+        inputVal: ""
+    },
+    showInput: function () {
+        this.setData({
+            inputShowed: true
+        });
+    },
+    hideInput: function () {
+        this.setData({
+            inputVal: "",
+            inputShowed: false
+        });
+    },
+    clearInput: function () {
+        this.setData({
+            inputVal: ""
+        });
+    },
+    inputTyping: function (e) {
+        this.setData({
+            inputVal: e.detail.value
+        });
+    }
+});

+ 46 - 0
front/applet/demo/example/searchbar/searchbar.wxml

@@ -0,0 +1,46 @@
+<view class="page">
+    <view class="page__hd">
+        <view class="page__title">SearchBar</view>
+        <view class="page__desc">搜索栏</view>
+    </view>
+    <view class="page__bd">
+        <view class="weui-search-bar">
+            <view class="weui-search-bar__form">
+                <view class="weui-search-bar__box">
+                    <icon class="weui-icon-search_in-box" type="search" size="14"></icon>
+                    <input type="text" class="weui-search-bar__input" placeholder="搜索" value="{{inputVal}}" focus="{{inputShowed}}" bindinput="inputTyping" />
+                    <view class="weui-icon-clear" wx:if="{{inputVal.length > 0}}" bindtap="clearInput">
+                        <icon type="clear" size="14"></icon>
+                    </view>
+                </view>
+                <label class="weui-search-bar__label" hidden="{{inputShowed}}" bindtap="showInput">
+                    <icon class="weui-icon-search" type="search" size="14"></icon>
+                    <view class="weui-search-bar__text">搜索</view>
+                </label>
+            </view>
+            <view class="weui-search-bar__cancel-btn" hidden="{{!inputShowed}}" bindtap="hideInput">取消</view>
+        </view>
+        <view class="weui-cells searchbar-result" wx:if="{{inputVal.length > 0}}">
+            <navigator url="" class="weui-cell" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">
+                    <view>实时搜索文本</view>
+                </view>
+            </navigator>
+            <navigator url="" class="weui-cell" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">
+                    <view>实时搜索文本</view>
+                </view>
+            </navigator>
+            <navigator url="" class="weui-cell" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">
+                    <view>实时搜索文本</view>
+                </view>
+            </navigator>
+            <navigator url="" class="weui-cell" hover-class="weui-cell_active">
+                <view class="weui-cell__bd">
+                    <view>实时搜索文本</view>
+                </view>
+            </navigator>
+        </view>
+    </view>
+</view>

Some files were not shown because too many files changed in this diff