Wiki source code of 3 Video

Version 2.1 by Jim on 2022/06/27 13:43

Show last authors
1 {{velocity output="false"}}
2 #set ($docextras = [])
3
4 #set ($videoCards = [
5 {
6 'title': $services.localization.render('WECON V-NET Basic Function: 1 Software Download&Install'),
7 'topics': [
8 $services.localization.render('language:english'),
9 $services.localization.render('How to get Wecon V-NET software')
10 ],
11 'url': 'https://www.youtube.com/embed/7xzyyRURDfE',
12 'duration': '3 min'
13 },
14 {
15 'title': $services.localization.render('WECON V-NET Basic Function: 2 Account Registration&V-Box Binding'),
16 'topics': [
17 $services.localization.render('language:english'),
18 $services.localization.render('How to register a V-NET account,How to bind the V-BOX')
19 ],
20 'url': 'https://www.youtube.com/embed/wKs1ZlRtMNM',
21 'duration': '3 min'
22 },
23 {
24 'title': $services.localization.render('WECON V-NET Basic Function: 3 Real time Data&Historical Data'),
25 'topics': [
26 $services.localization.render('language:english'),
27 $services.localization.render('add real-time points,add historical points,record trigger type')
28 ],
29 'url': 'https://www.youtube.com/embed/7CPDrRb94BA',
30 'duration': '7 min'
31 },
32 {
33 'title': $services.localization.render('WECON V-NET Basic Function: 4 Alarm Function'),
34 'topics': [
35 $services.localization.render('language:english'),
36 $services.localization.render('How to use alarm function,add alarm monitoring point,alarm type')
37 ],
38 'url': 'https://www.youtube.com/embed/ueyAIdWyQdU',
39 'duration': '6 min'
40 },
41 {
42 'title': $services.localization.render('WECON V-NET Basic Function: 5 Lua Script Function'),
43 'topics': [
44 $services.localization.render('language:english'),
45 $services.localization.render('How to use Lua Script function?')
46 ],
47 'url': 'https://www.youtube.com/embed/6pwo14E0OeQ',
48 'duration': '5 min'
49 },
50 {
51 'title': $services.localization.render('WECON V-NET Basic Function: 6 Configuration'),
52 'topics': [
53 $services.localization.render('language:english'),
54 $services.localization.render('Introduction to the configuration interface')
55 ],
56 'url': 'https://www.youtube.com/embed/PTIHcpFRPH0',
57 'duration': '5 min'
58 },
59 {
60 'title': $services.localization.render('WECON V-NET Basic Function: 7 Pass-through'),
61 'topics': [
62 $services.localization.render('language:english'),
63 $services.localization.render('Introduction to the Pass-through, serial passthrough, VPN passthrough')
64 ],
65 'url': 'https://www.youtube.com/embed/vLDu41_Wg30?list=PL_Bpnb2RgakvYq_Ypk9bydIP7lUfkTDBN',
66 'duration': '8 min'
67 },
68 {
69 'title': $services.localization.render('WECON V-NET Special Function: 1 Email&Status Push'),
70 'topics': [
71 $services.localization.render('language:english'),
72 $services.localization.render('How to set email? How to use status push?')
73 ],
74 'url': 'https://www.youtube.com/embed/3SO4tu8t0CM',
75 'duration': '6 min'
76 },
77 {
78 'title': $services.localization.render('WECON V-NET Special Function: 2 Template Function'),
79 'topics': [
80 $services.localization.render('language:english'),
81 $services.localization.render('How to use template function?')
82 ],
83 'url': 'https://www.youtube.com/embed/SDRva-dPkzY?list=PL_Bpnb2RgakvYq_Ypk9bydIP7lUfkTDBN',
84 'duration': '7 min'
85 },
86 {
87 'title': $services.localization.render('WECON V-NET Special Function: 3 Role Management'),
88 'topics': [
89 $services.localization.render('language:english'),
90 $services.localization.render('How to use role management?')
91 ],
92 'url': 'https://www.youtube.com/embed/Uqpe-OYuCg4?list=PL_Bpnb2RgakvYq_Ypk9bydIP7lUfkTDBN',
93 'duration': '8 min'
94 },
95 {
96 'title': $services.localization.render('WECON V-NET Special Function: 4 HTTP Access'),
97 'topics': [
98 $services.localization.render('language:english'),
99 $services.localization.render('how to use http interface?')
100 ],
101 'url': 'https://www.youtube.com/embed/OjmshUCpA2Y',
102 'duration': '20 min'
103 }
104 ])
105
106 #macro (helpVideoCard $data)
107 <div class="videoCard">
108 <iframe src="$data.url" allowfullscreen title="$escapetool.xml($data.title)" role="presentation" ></iframe>
109 <div class="videoCard-body">
110 <div class="videoCard-title">
111 $escapetool.xml($data.title)
112 </div>
113 <ul>
114 #foreach ($topic in $data.topics)
115 <li>$topic</li>
116 #end
117 </ul>
118 </div>
119 <div class="videoCard-footer">
120 $services.icon.renderHTML('play')
121 <a href="$data.url">$services.localization.render('help.videos.watch')</a>
122 <span class="videoCard-duration">
123 $escapetool.xml($data.duration)
124 </span>
125 </div>
126 </div>
127 #end
128 {{/velocity}}
129
130 {{velocity}}
131 {{html clean="false"}}
132 #set ($discard = $xwiki.ssx.use('Help.Videos.WebHome'))
133 <div class="row">
134 #foreach ($card in $videoCards)
135 ## See http://getbootstrap.com/css/#grid-responsive-resets .
136 #if ($foreach.index > 0 && $foreach.index % 2 == 0)
137 <div class="clearfix visible-sm-block "></div>
138 #end
139 #if ($foreach.index > 0 && $foreach.index % 3 == 0)
140 <div class="clearfix visible-md-block visible-lg-block"></div>
141 #end
142 <div class="col-xs-12 col-sm-6 col-md-4">
143 #helpVideoCard($card)
144 </div>
145 #end
146 </div>
147 {{/html}}
148
149 [[$services.localization.render('help.videos.more')>>https://www.youtube.com/user/Wecon2004/playlists]]
150 {{/velocity}}