annotate default/assets/vendors/theme-widgets/widgets.js @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 /* Todo Widget
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2 * --------------------
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 * Fetches latest tweets for the user provided
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4 * in the plugin options.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5 */
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8 var Todo = function Todo(node) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9 var tasks = [];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 // Initialise list from the node
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 var lists = node.getElementsByTagName('li');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 for( var i = 0; i < lists.length; i++ ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14 var item = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 text: lists[i].innerHTML,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 checked: JSON.parse( JSON.stringify( lists[i].dataset ) ).checked ? true : false
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18 tasks.push(item);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 // Todo App
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22 var Todo = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 data: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 tasks: [],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 oninit: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27 vnode.state.data.tasks = tasks;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30 var self = this;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31 var ctrl = this.ctrl(vnode);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33 m('div.list-group', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34 vnode.state.data.tasks.map(function(item, index) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36 m('div', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
37 class: 'list-group-item todo-item checkbox checkbox-info ' + ( item.checked ? ' checked' : ''),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
38 }, [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
39 m('label', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
40 m('input[type="checkbox"]', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
41 onchange: m.withAttr("value", ctrl.checkTask),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
42 value: index,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
43 checked: item.checked,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
44 }),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
45 m('span.label-text', item.text),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
46 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
47
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
48 m('span.delete-item.material-icons', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
49 onclick: m.withAttr("value", ctrl.deleteTask),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
50 value: index,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
51 }, 'delete'),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
52
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
53 m('span.edit-item.material-icons', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
54 onclick: m.withAttr("value", ctrl.editTask),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
55 value: index,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
56 }, 'edit'),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
57 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
58 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
59 }),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
60 m(this.noTaskMessage, { tasks: vnode.state.data.tasks } ),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
61 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
62 m('input[type="text"].form-control', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
63 onkeypress: ctrl.addTask,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
64 placeholder: 'add new task',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
65 }, 'Add task'),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
66 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
67 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
68
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
69 ctrl: function( vnode ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
70 return {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
71
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
72 // Adding task on Enter Press of Input field
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
73 addTask: function(e) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
74 if( e.keyCode == 13 ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
75 var val = e.target.value;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
76 vnode.state.data.tasks.push( { text: val, checked: false } );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
77 e.target.value = '';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
78 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
79 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
80
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
81 // Check to task on click
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
82 checkTask: function(index) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
83 if( vnode.state.data.tasks[index] !== undefined)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
84 vnode.state.data.tasks[index].checked = !vnode.state.data.tasks[index].checked;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
85 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
86
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
87 // Delete task
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
88 deleteTask: function(index) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
89 vnode.state.data.tasks.splice(index, 1);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
90 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
91
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
92 // Edit Task by adding a text field in the list
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
93 editTask: function(index) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
94 var parentNode = this.parentNode;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
95 var labelText = parentNode.getElementsByClassName('label-text')[0];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
96 var text = labelText.innerHTML;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
97 labelText.style.display = "none";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
98 parentNode.getElementsByClassName('delete-item')[0].style.display = "none";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
99 parentNode.getElementsByClassName('edit-item')[0].style.display = "none";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
100
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
101 // View of the Text Field
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
102 var EditField = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
103 view: function() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
104 var self = this;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
105 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
106 m('div.edit-field', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
107 m('form.mr-t-0', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
108 onsubmit: function( e ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
109 var container = parentNode.getElementsByClassName('edit-container-field')[0];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
110 var value = container.getElementsByTagName('input')[0].value;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
111 vnode.state.data.tasks[index].text = value;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
112 labelText.style.display = "block";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
113 parentNode.getElementsByClassName('delete-item')[0].style.display = "block";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
114 parentNode.getElementsByClassName('edit-item')[0].style.display = "block";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
115 container.parentNode.removeChild( container );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
116 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
117 }, m('input[type="text"].form-control', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
118 value: text,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
119 }),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
120 m('button[type="submit"].submit-btn.btn.btn-info', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
121 m('i.material-icons', 'send'),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
122 ])
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
123 ),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
124 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
125 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
126 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
127 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
128
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
129 var prevEditField = parentNode.parentNode.getElementsByClassName('edit-container-field');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
130 if ( prevEditField.length ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
131 var event = document.createEvent('HTMLEvents');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
132 event.initEvent('submit', true, false);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
133 prevEditField[0].getElementsByTagName('form')[0].dispatchEvent( event );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
134 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
135 var editContainer = document.createElement('div');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
136 editContainer.classList.add('edit-container-field');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
137 parentNode.getElementsByTagName('label')[0].appendChild( editContainer );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
138 m.mount( editContainer, EditField );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
139 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
140 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
141 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
142 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
143
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
144 // View of Message when there is no task in the list
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
145 Todo.noTaskMessage = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
146 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
147 if( vnode.attrs.tasks.length === 0 ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
148 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
149 m('div.list-group-item', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
150 m('label', 'no tasks to display'),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
151 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
152 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
153 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
154 return null;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
155 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
156 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
157
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
158 return m.mount(node, Todo);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
159 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
160
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
161
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
162
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
163
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
164 /* Twitter Feed Widgets
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
165 * --------------------
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
166 * Fetches latest tweets for the user provided
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
167 * in the plugin options.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
168 */
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
169
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
170 var TwitterWidget = function TwitterWidget(node, options) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
171 var WidgetOptions = options;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
172
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
173 var TweetsList = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
174 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
175 if ( vnode.attrs.tweets !== undefined ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
176 return vnode.attrs.tweets.map( function(tweet, index) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
177 var hidden = index !== 0 ? 'hidden' : '';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
178 return m('div.status', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
179 class: 'animated fadeInLeft',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
180 hidden: hidden,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
181 },[
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
182 m('p', tweet.text),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
183 ]);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
184 });
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
185 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
186 return m('p', 'no items to show');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
187 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
188 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
189
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
190 var TwitterWidget = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
191 data: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
192 tweets: [],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
193 user: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
194 name: 'John Doe',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
195 screen_name: 'johndoe',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
196 profile_image_url: 'assets/demo/users/user-image.png',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
197 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
198 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
199 oninit: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
200 var ctrl = this.ctrl(vnode);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
201 ctrl.getQuery();
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
202 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
203 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
204 var ctrl = this.ctrl(vnode);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
205 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
206 m('div.status-container', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
207 m('div.user-info', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
208 m('img.user-profile-picture', { src: vnode.state.data.user.profile_image_url, alt: vnode.state.data.user.screen_name + ' profile picture' }),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
209 m('div.user-name-group', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
210 m('h5.user-name', vnode.state.data.user.name),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
211 m('h6.user-screen-name.ltr', '@' + vnode.state.data.user.screen_name),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
212 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
213 m('i.widget-icon.feather.feather-twitter', null),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
214 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
215 m('div.flex-1', null),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
216 m( TweetsList, { oncreate: ctrl.slideTweets, tweets: vnode.state.data.tweets } ),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
217 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
218 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
219 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
220 ctrl: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
221 return {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
222 getQuery: function() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
223 var queryString = "";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
224 queryString = m.buildQueryString(JSON.parse(WidgetOptions));
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
225 queryString = '?' + queryString;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
226 var url = 'assets/vendors/theme-widgets/getTwitterFeed.php' + queryString;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
227 m.request({
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
228 method: "GET",
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
229 url: url,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
230 callbackKey: 'none'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
231 }).then( function(results) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
232 if ( results.error === undefined ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
233 vnode.state.data.tweets = JSON.parse( JSON.stringify(results) );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
234 vnode.state.data.user = vnode.state.data.tweets[0].user;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
235 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
236 else
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
237 console.error( results );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
238 }).catch( console.error );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
239 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
240
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
241 slideTweets: function() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
242 var current = 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
243 var statusDoms = vnode.dom.getElementsByClassName('status');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
244 function showSlide() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
245 if ( vnode.state.data.tweets.length === 0 ) return;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
246
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
247 var prev = current - 1;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
248 if ( prev == -1 ) prev = vnode.state.data.tweets.length - 1;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
249
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
250 var currentStatusNode = statusDoms[current];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
251 if ( currentStatusNode !== undefined )
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
252 currentStatusNode.hidden = '';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
253
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
254 var prevStatusNode = statusDoms[prev];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
255 if ( prevStatusNode !== undefined )
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
256 prevStatusNode.hidden = 'hidden';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
257
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
258 if ( current == vnode.state.data.tweets.length - 1 ) current = 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
259 else current++;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
260 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
261 showSlide();
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
262 setInterval(showSlide, 5000);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
263 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
264 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
265 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
266 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
267
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
268 var App = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
269 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
270 return m('h4','jfdkas');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
271 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
272 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
273
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
274 m.mount( node, TwitterWidget );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
275 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
276
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
277
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
278
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
279
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
280 /* Facebook Feed Widget
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
281 * --------------------
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
282 * Fetches latest tweets for the user provided
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
283 * in the plugin options.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
284 */
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
285
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
286 var FacebookWidget = function FacebookWidget(node, options) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
287 var WidgetOptions = options;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
288 var FacebookList = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
289 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
290 if ( vnode.attrs.statuses !== undefined ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
291 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
292 vnode.attrs.statuses.map(function(status, index) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
293 var hidden = ( index !== 0 ) ? 'hidden' : '';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
294 var story = '';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
295 if ( status.message !== undefined )
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
296 story = status.message;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
297 else if ( status.story !== undefined )
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
298 story = status.story;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
299
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
300 story = story.length > 160 ? story.substring(0,160) : story;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
301 return m('div.status', {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
302 class: "animated fadeInLeft",
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
303 hidden: hidden,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
304 },[
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
305 m('p', story),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
306 ]);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
307 }),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
308 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
309 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
310
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
311 return m('p','no posts to show');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
312 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
313 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
314
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
315 var FacebookWidget = {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
316 data: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
317 statuses: [],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
318 user: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
319 name: 'John Doe',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
320 username: 'johndoe',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
321 picture: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
322 data: {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
323 url: 'assets/demo/users/user-image.png',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
324 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
325 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
326 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
327 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
328 oninit: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
329 var ctrl = this.ctrl(vnode);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
330 ctrl.fetchStatus();
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
331 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
332 view: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
333 var ctrl = this.ctrl(vnode);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
334 return [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
335 m('div.status-container',[
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
336 m('div.user-info',[
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
337 m('img.user-profile-picture', { src: vnode.state.data.user.picture.data.url }),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
338 m('div.user-name-group', [
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
339 m('h5.user-name', vnode.state.data.user.username),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
340 m('h6.user-screen-name.ltr', '@' + vnode.state.data.user.username),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
341 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
342 m('i.widget-icon.feather.feather-facebook', null),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
343 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
344 m('div.flex-1', null),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
345 m(FacebookList, { oncreate: ctrl.slideStatus, statuses: vnode.state.data.statuses } ),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
346 ]),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
347 ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
348 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
349
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
350 ctrl: function(vnode) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
351 return {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
352 fetchStatus: function() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
353 var queryString = "";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
354 queryString = m.buildQueryString(JSON.parse(WidgetOptions));
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
355 queryString = '?' + queryString;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
356 var url = 'assets/vendors/theme-widgets/getFacebookFeed.php' + queryString;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
357 m.request({
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
358 method: 'GET',
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
359 url: url,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
360 callbackKey: 'none'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
361 }).then(function(results) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
362 if ( results.error === undefined ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
363 vnode.state.data.statuses = results[0].data;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
364 vnode.state.data.user = results[1];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
365 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
366 else {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
367 results.dom = node;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
368 console.error( results );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
369 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
370 }).catch(function(err) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
371 err.dom = node;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
372 console.error( err );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
373 });
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
374 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
375
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
376 slideStatus: function() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
377 var current = 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
378 var statusDoms = vnode.dom.getElementsByClassName('status');
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
379 function showSlide() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
380 var prev = current - 1;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
381 if ( prev == -1 ) prev = vnode.state.data.statuses.length - 1;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
382
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
383 var currentStatusNode = statusDoms[current];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
384 if ( currentStatusNode !== undefined )
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
385 currentStatusNode.hidden = '';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
386
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
387 var prevStatusNode = statusDoms[prev];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
388 if ( prevStatusNode !== undefined )
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
389 prevStatusNode.hidden = 'hidden';
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
390
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
391 if ( current == vnode.state.data.statuses.length - 1 ) current = 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
392 else current++;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
393 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
394 showSlide();
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
395 setInterval(showSlide, 5000);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
396 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
397 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
398 },
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
399 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
400
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
401 m.mount( node, FacebookWidget);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
402 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
403
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
404 window.Todo = Todo;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
405 window.FacebookWidget = FacebookWidget;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
406 window.TwitterWidget = TwitterWidget;