1 | <!DOCTYPE html>
|
2 | <html lang="en">
|
3 | <head>
|
4 | <meta charset="utf-8">
|
5 | <title>Plumes - Example Layout</title>
|
6 |
|
7 | <meta name="viewport" content="width=device-width, initial-scale=1">
|
8 | <link rel="stylesheet" href="/public/base/base-plumes.css" type="text/css" />
|
9 | <style type="text/css">
|
10 | .example-mask {
|
11 | z-index: 99998;
|
12 | position: fixed;
|
13 | top: 0;
|
14 | left: 0;
|
15 | right: 0;
|
16 | bottom: 0;
|
17 | background: #fff;
|
18 | }
|
19 | </style>
|
20 | </head>
|
21 | <body>
|
22 |
|
23 | <rv-require
|
24 | name="pl-layout-platform"
|
25 | src="../public/layouts/pl-layout-platform"
|
26 |
|
27 | data-bind-onloaded="onloaded"
|
28 | data-bind-beforerequire="beforerequire"
|
29 | data-bind-brand="brand"
|
30 | data-bind-apps="apps"
|
31 | data-bind-user="user"
|
32 | data-bind-user-toggle="user-toggle"
|
33 | data-bind-help-toggle="help-toggle"
|
34 |
|
35 | data-bind-onpagselected="onPageSelected"
|
36 | >
|
37 | <rv-partial target="mask-title">
|
38 | Plumes <span class="theme">example</span>
|
39 | </rv-partial>
|
40 | <rv-partial target="message-title">
|
41 | Plumes <span class="theme">example</span>
|
42 | </rv-partial>
|
43 | <rv-partial target="content">
|
44 |
|
45 | <rv-require
|
46 | name="pl-layout-sidebars"
|
47 | src="../public/layouts/pl-layout-sidebars"
|
48 |
|
49 | data-left-content-title="Left menu"
|
50 | data-left-content-width="300"
|
51 | data-right-content-title="Right menu"
|
52 | data-right-content-width="300"
|
53 | data-right-content-expended="false"
|
54 |
|
55 | data-bind-onpagselected="onpagselected"
|
56 | >
|
57 | <rv-partial target="left-content">
|
58 | My left content
|
59 | </rv-partial>
|
60 | <rv-partial target="right-content">
|
61 | My Right content
|
62 | </rv-partial>
|
63 | <rv-partial target="content">
|
64 | My content
|
65 | <rv-require
|
66 | name="pl-pagination"
|
67 | src="../public/pagination/pl-pagination"
|
68 |
|
69 | data-bind-onpagselected="onpagselected"
|
70 |
|
71 | data-total-pages="50"
|
72 | data-page-selected="13"
|
73 | data-display-pages-count="7"
|
74 | data-display-first-button="true"
|
75 | data-display-last-button="true"
|
76 | data-display-previous-button="true"
|
77 | data-display-next-button="true"
|
78 | >
|
79 | </rv-require>
|
80 | </rv-partial>
|
81 | </rv-require>
|
82 |
|
83 | </rv-partial>
|
84 | </rv-require>
|
85 |
|
86 | <div class="example-mask"></div>
|
87 |
|
88 | <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.3.js"></script>
|
89 | <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
|
90 | <script type="text/javascript" src="http://cdn.ractivejs.org/latest/ractive.js"></script>
|
91 | <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/ractive-require/0.5.1/ractive-require.js"></script>
|
92 | <script type="text/javascript" src="/public/base/base-bootstrap.js"></script>
|
93 |
|
94 | <script type="text/javascript">
|
95 | (function() {
|
96 | 'use strict';
|
97 |
|
98 | window.Ractive.bootstrap(function(page) {
|
99 |
|
100 | page.set('brand', 'Plumes');
|
101 | page.set('apps', [{
|
102 | name: 'Layout',
|
103 | selected: true,
|
104 | select: function() {
|
105 | window.location.href = 'layout.html';
|
106 | }
|
107 | }, {
|
108 | name: 'Login',
|
109 | select: function() {
|
110 | window.location.href = 'login.html';
|
111 | }
|
112 | }, {
|
113 | name: 'Lists',
|
114 | select: function() {
|
115 | window.location.href = 'lists.html';
|
116 | }
|
117 | }]);
|
118 | page.set('user', {
|
119 | avatar: 'https://www.gravatar.com/avatar/9e38451efa23937301594f273033c5f1.png'
|
120 | });
|
121 | page.set('user-toggle', function(event) {
|
122 | console.log('user toggle!', event);
|
123 | });
|
124 | page.set('help-toggle', function(event) {
|
125 | console.log('help toggle!', event);
|
126 | });
|
127 |
|
128 | page.set('beforerequire', function(layout, callback) {
|
129 |
|
130 | if ($.cookie('intro') == 'done') {
|
131 | return callback();
|
132 | }
|
133 |
|
134 | layout.require('pl-screen-message').then(function() {
|
135 |
|
136 | var screenMessage = layout.findChild('name', 'pl-screen-message');
|
137 |
|
138 | screenMessage.fire('play', {
|
139 | message: [
|
140 | 'Hello',
|
141 | 'It\'s your first time on the <strong class="accent">Plumes</strong> layout example.',
|
142 | 'We thank you for using <strong class="accent">Plumes</strong>.',
|
143 | 'Have a good day.'
|
144 | ],
|
145 | done: function() {
|
146 | $.cookie('intro', 'done');
|
147 |
|
148 | screenMessage.teardown();
|
149 |
|
150 | callback();
|
151 | }
|
152 | });
|
153 | });
|
154 |
|
155 | });
|
156 |
|
157 | page.set('onloaded', function() {
|
158 | $('.example-mask').remove();
|
159 | });
|
160 |
|
161 | page.set('onPageSelected', function(page) {
|
162 | console.log('Page selected', page);
|
163 | });
|
164 |
|
165 | page.require();
|
166 | });
|
167 |
|
168 | })();
|
169 | </script>
|
170 | </body>
|
171 | </html>
|