showoff 0.17.2 → 0.18.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +37 -0
- data/bin/showoff +3 -0
- data/lib/showoff.rb +164 -43
- data/lib/showoff/version.rb +1 -1
- data/lib/showoff_utils.rb +26 -14
- data/locales/README.md +25 -0
- data/locales/de.yml +160 -0
- data/locales/en.yml +160 -0
- data/locales/es.yml +160 -0
- data/locales/fr.yml +160 -0
- data/locales/ja.yml +167 -0
- data/locales/nl.yml +160 -0
- data/locales/pt.yml +160 -0
- data/public/css/presenter.css +14 -1
- data/public/css/showoff.css +54 -4
- data/public/js/presenter.js +122 -49
- data/public/js/showoff.js +157 -25
- data/public/js/simpleStrings-0.0.1.js +96 -0
- data/views/404.erb +1 -1
- data/views/download.erb +2 -2
- data/views/header.erb +7 -2
- data/views/help.erb +16 -16
- data/views/index.erb +40 -26
- data/views/presenter.erb +86 -68
- data/views/stats.erb +7 -7
- metadata +39 -2
data/views/help.erb
CHANGED
@@ -1,27 +1,27 @@
|
|
1
|
-
<div id="help-modal" title="
|
1
|
+
<div id="help-modal" title="<%= I18n.t('help.title') %>">
|
2
2
|
<div id="help">
|
3
3
|
<div>
|
4
|
-
<span class="description"
|
4
|
+
<span class="description"><%= I18n.t('help.next') %></span>
|
5
5
|
<span class="action">NEXT</span>
|
6
6
|
<span class="hotkeys"><%= mapped_keys('NEXT') %></span>
|
7
7
|
</div>
|
8
8
|
<div>
|
9
|
-
<span class="description"
|
9
|
+
<span class="description"><%= I18n.t('help.prev') %></span>
|
10
10
|
<span class="action">PREV</span>
|
11
11
|
<span class="hotkeys"><%= mapped_keys('PREV') %></span>
|
12
12
|
</div>
|
13
13
|
<div>
|
14
|
-
<span class="description"
|
14
|
+
<span class="description"><%= I18n.t('help.contents') %></span>
|
15
15
|
<span class="action">CONTENTS</span>
|
16
16
|
<span class="hotkeys"><%= mapped_keys('CONTENTS') %></span>
|
17
17
|
</div>
|
18
18
|
<div>
|
19
|
-
<span class="description"
|
19
|
+
<span class="description"><%= I18n.t('help.follow') %></span>
|
20
20
|
<span class="action">FOLLOW</span>
|
21
21
|
<span class="hotkeys"><%= mapped_keys('FOLLOW') %></span>
|
22
22
|
</div>
|
23
23
|
<div>
|
24
|
-
<span class="description"
|
24
|
+
<span class="description"><%= I18n.t('help.help') %></span>
|
25
25
|
<span class="action">HELP</span>
|
26
26
|
<span class="hotkeys"><%= mapped_keys('HELP') %></span>
|
27
27
|
</div>
|
@@ -29,47 +29,47 @@
|
|
29
29
|
<hr />
|
30
30
|
|
31
31
|
<div>
|
32
|
-
<span class="description"
|
32
|
+
<span class="description"><%= I18n.t('help.refresh') %></span>
|
33
33
|
<span class="action">REFRESH</span>
|
34
34
|
<span class="hotkeys"><%= mapped_keys('REFRESH') %></span>
|
35
35
|
</div>
|
36
36
|
<div>
|
37
|
-
<span class="description"
|
37
|
+
<span class="description"><%= I18n.t('help.reload') %></span>
|
38
38
|
<span class="action">RELOAD</span>
|
39
39
|
<span class="hotkeys"><%= mapped_keys('RELOAD') %></span>
|
40
40
|
</div>
|
41
41
|
<div>
|
42
|
-
<span class="description"
|
42
|
+
<span class="description"><%= I18n.t('help.blank') %></span>
|
43
43
|
<span class="action">BLANK</span>
|
44
44
|
<span class="hotkeys"><%= mapped_keys('BLANK') %></span>
|
45
45
|
</div>
|
46
46
|
<div>
|
47
|
-
<span class="description"
|
47
|
+
<span class="description"><%= I18n.t('help.footer') %></span>
|
48
48
|
<span class="action">FOOTER</span>
|
49
49
|
<span class="hotkeys"><%= mapped_keys('FOOTER') %></span>
|
50
50
|
</div>
|
51
51
|
<div>
|
52
|
-
<span class="description"
|
52
|
+
<span class="description"><%= I18n.t('help.notes') %></span>
|
53
53
|
<span class="action">NOTES</span>
|
54
54
|
<span class="hotkeys"><%= mapped_keys('NOTES') %></span>
|
55
55
|
</div>
|
56
56
|
<div>
|
57
|
-
<span class="description"
|
57
|
+
<span class="description"><%= I18n.t('help.clear') %></span>
|
58
58
|
<span class="action">CLEAR</span>
|
59
59
|
<span class="hotkeys"><%= mapped_keys('CLEAR') %></span>
|
60
60
|
</div>
|
61
61
|
<div>
|
62
|
-
<span class="description"
|
62
|
+
<span class="description"><%= I18n.t('help.pause') %></span>
|
63
63
|
<span class="action">PAUSE</span>
|
64
64
|
<span class="hotkeys"><%= mapped_keys('PAUSE') %></span>
|
65
65
|
</div>
|
66
66
|
<div>
|
67
|
-
<span class="description"
|
67
|
+
<span class="description"><%= I18n.t('help.preshow') %></span>
|
68
68
|
<span class="action">PRESHOW</span>
|
69
69
|
<span class="hotkeys"><%= mapped_keys('PRESHOW') %></span>
|
70
70
|
</div>
|
71
71
|
<div>
|
72
|
-
<span class="description"
|
72
|
+
<span class="description"><%= I18n.t('help.execute') %></span>
|
73
73
|
<span class="action">EXECUTE</span>
|
74
74
|
<span class="hotkeys"><%= mapped_keys('EXECUTE') %></span>
|
75
75
|
</div>
|
@@ -77,7 +77,7 @@
|
|
77
77
|
<hr />
|
78
78
|
|
79
79
|
<div>
|
80
|
-
<span class="description"
|
80
|
+
<span class="description"><%= I18n.t('help.debug') %></span>
|
81
81
|
<span class="action">DEBUG</span>
|
82
82
|
<span class="hotkeys"><%= mapped_keys('DEBUG') %></span>
|
83
83
|
</div>
|
data/views/index.erb
CHANGED
@@ -13,83 +13,97 @@
|
|
13
13
|
<div id="navigationHover"></div>
|
14
14
|
<div id="feedbackSidebar" class="sideMenu">
|
15
15
|
<img id="disconnected" src="<%= @asset_path %>/css/disconnected.png">
|
16
|
-
<h3
|
17
|
-
<div id="navToggle" class="buttonWrapper"><i class=" fa fa-bookmark"></i>
|
16
|
+
<h3><%= I18n.t('menu.title') %></h3>
|
17
|
+
<div id="navToggle" class="buttonWrapper"><i class=" fa fa-bookmark"></i> <%= I18n.t('menu.table_of_contents') %></div>
|
18
18
|
<div id="navigation" class="submenu"></div>
|
19
19
|
<% if not @static then %>
|
20
20
|
<hr>
|
21
|
-
<div id="fileDownloads" class="buttonWrapper"><i class="fa fa-download"></i>
|
21
|
+
<div id="fileDownloads" class="buttonWrapper"><i class="fa fa-download"></i> <%= I18n.t('menu.downloads') %></div>
|
22
22
|
<% end %>
|
23
23
|
<hr>
|
24
24
|
|
25
25
|
<% if @feedback and not @static then %>
|
26
|
-
<p
|
26
|
+
<p><%= I18n.t('menu.pace.label') %></p>
|
27
27
|
<div id="paceSlower" class="buttonWrapper split interactive">
|
28
28
|
<i class="fa fa-minus"></i>
|
29
|
-
<br
|
29
|
+
<br><%= I18n.t('menu.pace.slower') %>
|
30
30
|
</div>
|
31
31
|
<div id="paceFaster" class="buttonWrapper split interactive">
|
32
32
|
<i class="fa fa-plus"></i>
|
33
|
-
<br
|
33
|
+
<br><%= I18n.t('menu.pace.faster') %>
|
34
34
|
</div>
|
35
35
|
|
36
36
|
<hr>
|
37
|
-
<div id="questionToggle" class="buttonWrapper interactive"><i class="fa fa-hand-stop-o"></i>
|
37
|
+
<div id="questionToggle" class="buttonWrapper interactive"><i class="fa fa-hand-stop-o"></i> <%= I18n.t('menu.question.label') %></div>
|
38
38
|
<div id="questionSubmenu" class="submenu">
|
39
|
-
<textarea id="question" placeholder="
|
39
|
+
<textarea id="question" placeholder="<%= I18n.t('menu.question.placeholder') %>"></textarea>
|
40
40
|
<div id="askQuestion" class="buttonWrapper interactive">Ask</div>
|
41
41
|
</div>
|
42
42
|
<ul id="askedQuestions"></ul>
|
43
43
|
|
44
44
|
<hr>
|
45
45
|
|
46
|
-
<div id="feedbackToggle" class="buttonWrapper interactive"><i class="fa fa-envelope"></i>
|
46
|
+
<div id="feedbackToggle" class="buttonWrapper interactive"><i class="fa fa-envelope"></i> <%= I18n.t('menu.feedback.label') %></div>
|
47
47
|
<div id="feedbackSubmenu" class="submenu">
|
48
|
-
<p
|
48
|
+
<p><%= I18n.t('menu.feedback.label') %></p>
|
49
49
|
<small>
|
50
|
-
|
50
|
+
<%= I18n.t('menu.feedback.worst') %>
|
51
51
|
<input type="radio" name="rating" value="1"></input>
|
52
52
|
<input type="radio" name="rating" value="2"></input>
|
53
53
|
<input type="radio" name="rating" value="3"></input>
|
54
54
|
<input type="radio" name="rating" value="4"></input>
|
55
55
|
<input type="radio" name="rating" value="5"></input>
|
56
|
-
|
56
|
+
<%= I18n.t('menu.feedback.best') %>
|
57
57
|
</small>
|
58
|
-
<textarea id="feedback" placeholder="
|
59
|
-
<div id="sendFeedback" class="buttonWrapper interactive"
|
58
|
+
<textarea id="feedback" placeholder="<%= I18n.t('menu.feedback.why') %>"></textarea>
|
59
|
+
<div id="sendFeedback" class="buttonWrapper interactive"><%= I18n.t('menu.feedback.send') %></div>
|
60
60
|
</div>
|
61
61
|
|
62
62
|
<% if @edit then %>
|
63
63
|
<hr>
|
64
|
-
<div id="editSlide" class="buttonWrapper"
|
64
|
+
<div id="editSlide" class="buttonWrapper"><%= I18n.t('menu.edit') %></div>
|
65
65
|
<% end %>
|
66
66
|
<hr>
|
67
|
-
<div id="clearAnnotations" class="buttonWrapper"><i class="fa fa-eraser"></i>
|
67
|
+
<div id="clearAnnotations" class="buttonWrapper"><i class="fa fa-eraser"></i> <%= I18n.t('menu.clear_annotations') %></div>
|
68
68
|
<hr>
|
69
69
|
<% end %>
|
70
70
|
|
71
|
-
|
71
|
+
<% unless language_names.empty? %>
|
72
|
+
<div id="languageMenu" class="optionWrapper">
|
73
|
+
<i class="fa fa-language" aria-hidden="true"></i> <%= I18n.t('menu.language') %>
|
74
|
+
<select id="languageSelector" autocomplete="off">
|
75
|
+
<option value="auto" selected><%= I18n.t('language.auto') %></option>
|
76
|
+
<% language_names.each do |code, name| %>
|
77
|
+
<option value="<%= code %>"><%= name %></option>
|
78
|
+
<% end %>
|
79
|
+
<option value="disable"><%= I18n.t('language.disable') %></option>
|
80
|
+
</select>
|
81
|
+
</div>
|
82
|
+
<hr>
|
83
|
+
<% end %>
|
84
|
+
|
85
|
+
<div id="closeMenu" class="buttonWrapper"><i class="fa fa-close"></i> <%= I18n.t('menu.close') %></div>
|
72
86
|
<hr>
|
73
87
|
|
74
88
|
<small>
|
75
|
-
<p
|
76
|
-
<p
|
89
|
+
<p><%= I18n.t('menu.help') %></p>
|
90
|
+
<p><%= I18n.t('menu.anonymous') %></p>
|
77
91
|
</small>
|
78
92
|
</div>
|
79
93
|
<div id="sidebarExit"></div>
|
80
94
|
</div>
|
81
95
|
<%= erb :help %>
|
82
96
|
|
83
|
-
<div id="preso"><center
|
97
|
+
<div id="preso"><center><%= I18n.t('loading') %></center></div>
|
84
98
|
|
85
99
|
<div id="notes"></div>
|
86
100
|
|
87
101
|
<footer id="footer">
|
88
|
-
<span id="followMode"></span>
|
89
|
-
<span id="slideInfo"></span>
|
90
|
-
<span id="debugInfo"></span>
|
91
|
-
<span id="notesInfo"></span>
|
92
|
-
<span id="slideFilename"></span>
|
102
|
+
<span id="followLabel" class="container"><%= I18n.t('follow.label') %> <i id="followMode" class="fa fa-ban" aria-hidden="true"></i></span>
|
103
|
+
<span id="slideInfo" class="container"></span>
|
104
|
+
<span id="debugInfo" class="container"></span>
|
105
|
+
<span id="notesInfo" class="container"></span>
|
106
|
+
<span id="slideFilename" class="container"></span>
|
93
107
|
<img id="disconnected" src="<%= @asset_path %>/css/disconnected.png" />
|
94
108
|
</footer>
|
95
109
|
|
@@ -97,7 +111,7 @@
|
|
97
111
|
<%= @slides %>
|
98
112
|
</div>
|
99
113
|
<div id="buttonNav">
|
100
|
-
<div id="buttonPrev"><i class="fa fa-chevron-left fa-lg"></i>
|
114
|
+
<div id="buttonPrev"><i class="fa fa-chevron-left fa-lg"></i> <%= I18n.t('navigation.previous') %></div><div id="buttonNext"><%= I18n.t('navigation.next') %> <i class="fa fa-chevron-right fa-lg"></i></div>
|
101
115
|
</div>
|
102
116
|
<div id="pauseScreen">
|
103
117
|
<%= @pause_msg %>
|
data/views/presenter.erb
CHANGED
@@ -24,30 +24,26 @@
|
|
24
24
|
|
25
25
|
<span id="links">
|
26
26
|
<span class="desktop">
|
27
|
-
<label for="annotationsToggle" class="no-mobile"
|
27
|
+
<label for="annotationsToggle" class="no-mobile" title="<%= I18n.t('presenter.topbar.tooltip.annotations') %>"><%= I18n.t('presenter.topbar.annotations') %> <i class="fa fa-pencil"></i></label>
|
28
28
|
<input type="checkbox" id="annotationsToggle" autocomplete="off" class="no-mobile" />
|
29
29
|
|
30
30
|
<% if @edit %>
|
31
|
-
<a id="edit" href="#" title="
|
31
|
+
<a id="edit" href="#" title="<%= I18n.t('presenter.topbar.tooltip.edit') %>"><%= I18n.t('presenter.topbar.edit') %> <i class="fa fa-pencil-square-o"></i></a>
|
32
32
|
<% end %>
|
33
33
|
<% if @issues %>
|
34
|
-
<a id="report" href="javascript:reportIssue();" title="
|
34
|
+
<a id="report" href="javascript:reportIssue();" title="<%= I18n.t('presenter.topbar.tooltip.report') %>"><%= I18n.t('presenter.topbar.report') %> <i class="fa fa-list-alt"></i></a>
|
35
35
|
<% end %>
|
36
36
|
|
37
|
-
<a id="statslink" href=""
|
38
|
-
|
39
|
-
<a id="
|
40
|
-
|
41
|
-
<a id="
|
42
|
-
|
43
|
-
<a id="printSlides" href="#" title="Print slides using a new window.">Print Slides <i class="fa fa-print"></i></a>
|
44
|
-
|
45
|
-
<a id="settings" href="#">Settings <i class="fa fa-cog"></i></a>
|
37
|
+
<a id="statslink" href="" title="<%= I18n.t('presenter.topbar.tooltip.stats') %>"><%= I18n.t('presenter.topbar.stats') %> <i class="fa fa-chevron-down"></i></a>
|
38
|
+
<a id="downloadslink" href="" title="<%= I18n.t('presenter.topbar.tooltip.downloads') %>"><%= I18n.t('presenter.topbar.downloads') %> <i class="fa fa-chevron-down"></i></a>
|
39
|
+
<a id="slaveWindow" href="#" title="<%= I18n.t('presenter.topbar.tooltip.display') %>"><%= I18n.t('presenter.topbar.display') %> <i class="fa fa-clone"></i></a>
|
40
|
+
<a id="printSlides" href="#" title="<%= I18n.t('presenter.topbar.tooltip.print') %>"><%= I18n.t('presenter.topbar.print') %> <i class="fa fa-print"></i></a>
|
41
|
+
<a id="settings" href="#" title="<%= I18n.t('presenter.topbar.tooltip.settings') %>"><%= I18n.t('presenter.topbar.settings') %> <i class="fa fa-cog"></i></a>
|
46
42
|
</span>
|
47
43
|
|
48
44
|
|
49
45
|
<span class="mobile">
|
50
|
-
<a id="update" href=""
|
46
|
+
<a id="update" href=""><%= I18n.t('presenter.mobile.update') %></a>
|
51
47
|
</span>
|
52
48
|
</span>
|
53
49
|
</div>
|
@@ -55,12 +51,12 @@
|
|
55
51
|
<div id="main">
|
56
52
|
<div id="sidebar">
|
57
53
|
<div id="timerSection">
|
58
|
-
<input type="button" id="pauseTimer" value="
|
59
|
-
<input type="button" id="stopTimer" value="
|
60
|
-
<span id="timerLabel"
|
54
|
+
<input type="button" id="pauseTimer" value="<%= I18n.t('presenter.timer.pause') %>" />
|
55
|
+
<input type="button" id="stopTimer" value="<%= I18n.t('presenter.timer.cancel') %>" />
|
56
|
+
<span id="timerLabel"><%= I18n.t('presenter.timer.label') %></span>
|
61
57
|
<span id="minStart">
|
62
|
-
<input type="text" size="
|
63
|
-
<input type="button" id="startTimer" value="
|
58
|
+
<input type="text" size="4" id="timerMinutes"/> <%= I18n.t('presenter.timer.unit') %>
|
59
|
+
<input type="button" id="startTimer" value="<%= I18n.t('presenter.timer.start') %>" />
|
64
60
|
</span>
|
65
61
|
<div id="timerDisplay"></div>
|
66
62
|
</div>
|
@@ -70,8 +66,8 @@
|
|
70
66
|
<div class="gradient"> </div>
|
71
67
|
<div class="left obscure"> </div>
|
72
68
|
<div class="right obscure"> </div>
|
73
|
-
<span id="paceSlow"
|
74
|
-
<span id="paceFast"
|
69
|
+
<span id="paceSlow"><%= I18n.t('presenter.pace.faster') %></span>
|
70
|
+
<span id="paceFast"><%= I18n.t('presenter.pace.slower') %></span>
|
75
71
|
<img id="paceMarker" src="<%= @asset_path %>/css/paceMarker.png" />
|
76
72
|
</div>
|
77
73
|
<% end %>
|
@@ -81,7 +77,7 @@
|
|
81
77
|
|
82
78
|
<% if @feedback then %>
|
83
79
|
<div id="questions">
|
84
|
-
<h3
|
80
|
+
<h3><%= I18n.t('presenter.questions') %></h3>
|
85
81
|
<ol id="unanswered"></ol>
|
86
82
|
<ol id="answered"></ol>
|
87
83
|
</div>
|
@@ -93,23 +89,23 @@
|
|
93
89
|
<div id="frame">
|
94
90
|
<div id="preview">
|
95
91
|
<img id="disconnected" src="<%= @asset_path %>/css/disconnected-large.png" />
|
96
|
-
<div id="prevSlide" class="thumb"><div class="container"></div><h3 class="label"
|
97
|
-
<div id="nextSlide" class="thumb"><div class="container"></div><h3 class="label"
|
98
|
-
<div id="preso"
|
92
|
+
<div id="prevSlide" class="thumb"><div class="container"></div><h3 class="label"><%= I18n.t('presenter.preview.previous') %></h3></div>
|
93
|
+
<div id="nextSlide" class="thumb"><div class="container"></div><h3 class="label"><%= I18n.t('presenter.preview.next') %></h3></div>
|
94
|
+
<div id="preso"><%= I18n.t('loading') %></div>
|
99
95
|
</div>
|
100
96
|
<div id="annotationToolbar">
|
101
|
-
<label
|
97
|
+
<label><%= I18n.t('presenter.annotation.tools') %></label>
|
102
98
|
<i class="fa fa-pencil tool default active" data-action="draw" aria-hidden="true"></i>
|
103
99
|
<i class="fa fa-arrow-right tool" data-action="rightArrow" aria-hidden="true"></i>
|
104
100
|
<i class="fa fa-arrow-left tool" data-action="leftArrow" aria-hidden="true"></i>
|
105
101
|
<i class="fa fa-bullseye tool" data-action="highlight" aria-hidden="true"></i>
|
106
102
|
<i class="fa fa-eraser tool" data-action="erase" aria-hidden="true"></i>
|
107
|
-
<label
|
103
|
+
<label><%= I18n.t('presenter.annotation.lines') %></label>
|
108
104
|
<i class="fa fa-square-o lines color1 active" aria-hidden="true"></i>
|
109
105
|
<i class="fa fa-square-o lines color2" aria-hidden="true"></i>
|
110
106
|
<i class="fa fa-square-o lines color3" aria-hidden="true"></i>
|
111
107
|
<i class="fa fa-square-o lines color4" aria-hidden="true"></i>
|
112
|
-
<label
|
108
|
+
<label><%= I18n.t('presenter.annotation.shapes') %></label>
|
113
109
|
<i class="fa fa-square shapes color1" aria-hidden="true"></i>
|
114
110
|
<i class="fa fa-square shapes color2" aria-hidden="true"></i>
|
115
111
|
<i class="fa fa-square shapes color3 active" aria-hidden="true"></i>
|
@@ -117,72 +113,94 @@
|
|
117
113
|
</div>
|
118
114
|
</div>
|
119
115
|
|
120
|
-
<div id="
|
121
|
-
<
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
116
|
+
<div id="notes-pane">
|
117
|
+
<div id="statusbar">
|
118
|
+
<span class="label"><%= I18n.t('presenter.status.label') %> <span id="slideInfo"></span></span>
|
119
|
+
<span id="debugInfo"></span>
|
120
|
+
<span id="slideSource">
|
121
|
+
<% if @request.host == 'localhost' %>
|
122
|
+
<a href="#"><span id="slideFile"></span></a>
|
123
|
+
<% else %>
|
124
|
+
<span id="slideFile"></span>
|
125
|
+
<% end %>
|
126
|
+
</span>
|
127
|
+
</div>
|
128
|
+
<div id="progress" class="no-mobile"></div>
|
132
129
|
|
133
|
-
|
134
|
-
|
135
|
-
|
130
|
+
<div id="buttonNav">
|
131
|
+
<div id="buttonPrev"><i class="fa fa-chevron-left fa-lg"></i> <%= I18n.t('navigation.previous') %></div><div id="buttonNext"><%= I18n.t('navigation.next') %> <i class="fa fa-chevron-right fa-lg"></i></div>
|
132
|
+
</div>
|
136
133
|
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
134
|
+
<div id="notes-wrapper">
|
135
|
+
<ul class="section-selector"></ul>
|
136
|
+
<div class="controls">
|
137
|
+
<a class="no-mobile fa fa-minus small" aria-hidden="true" href="#"></a>
|
138
|
+
<a class="no-mobile fa fa-dot-circle-o small" aria-hidden="true" href="#"></a>
|
139
|
+
<a class="no-mobile fa fa-plus small" aria-hidden="true" href="#"></a>
|
140
|
+
<span class="spacer"> </span>
|
141
|
+
<a id="notesToggle" class="no-mobile fa fa-external-link-square" aria-hidden="true" href="#"></a>
|
142
|
+
<span><i class="no-mobile fa fa-bars notes-grippy ui-resizable-handle ui-resizable-n" aria-hidden="true"></i></span>
|
143
|
+
</div>
|
144
|
+
<div id="notes"></div>
|
146
145
|
</div>
|
147
|
-
<div id="notes"></div>
|
148
146
|
</div>
|
149
147
|
</div><!-- end presenter -->
|
150
148
|
</div><!-- end main -->
|
151
149
|
|
152
|
-
<div id="settings-modal" title="
|
153
|
-
<div id="enableFollower" class="setting" title="
|
154
|
-
<label for="followerToggle"
|
150
|
+
<div id="settings-modal" title="<%= I18n.t('presenter.settings.label') %>">
|
151
|
+
<div id="enableFollower" class="setting" title="<%= I18n.t('presenter.settings.follower.tooltip') %>">
|
152
|
+
<label for="followerToggle"><%= I18n.t('presenter.settings.follower.label') %></label><input type="checkbox" id="followerToggle" autocomplete="off" checked />
|
155
153
|
<p class="description">
|
156
|
-
|
154
|
+
<%= I18n.t('presenter.settings.follower.description') %>
|
157
155
|
</p>
|
158
156
|
</div>
|
159
|
-
<div id="enableRemote" class="setting" title="
|
160
|
-
<label for="remoteToggle"
|
157
|
+
<div id="enableRemote" class="setting" title="<%= I18n.t('presenter.settings.remote.tooltip') %>">
|
158
|
+
<label for="remoteToggle"><%= I18n.t('presenter.settings.remote.label') %></label><input type="checkbox" id="remoteToggle" autocomplete="off" checked />
|
161
159
|
<p class="description">
|
162
|
-
|
160
|
+
<%= I18n.t('presenter.settings.remote.description') %>
|
163
161
|
</p>
|
164
162
|
</div>
|
163
|
+
<% unless language_names.empty? %>
|
165
164
|
<div class="setting">
|
166
|
-
<label
|
165
|
+
<label><%= I18n.t('presenter.settings.language.label') %></label><br>
|
166
|
+
<select id="languageSelector" autocomplete="off">
|
167
|
+
<option value="auto" selected><%= I18n.t('language.auto') %></option>
|
168
|
+
<% language_names.each do |code, name| %>
|
169
|
+
<option value="<%= code %>"><%= name %></option>
|
170
|
+
<% end %>
|
171
|
+
<option value="disable"><%= I18n.t('language.disable') %></option>
|
172
|
+
</select>
|
173
|
+
<p class="description">
|
174
|
+
<%= I18n.t('presenter.settings.language.description') %>
|
175
|
+
</p>
|
176
|
+
</div>
|
177
|
+
<% end %>
|
178
|
+
<div class="setting">
|
179
|
+
<label><%= I18n.t('presenter.settings.layout.label') %></label><br>
|
167
180
|
<select id="layoutSelector" autocomplete="off">
|
168
|
-
<option value="default" selected
|
169
|
-
<option value="thumbs" title="
|
170
|
-
<option value="floating" title="
|
171
|
-
<option value="beside" title="
|
181
|
+
<option value="default" selected><%= I18n.t('presenter.settings.layout.default') %></option>
|
182
|
+
<option value="thumbs" title="<%= I18n.t('presenter.settings.layout.thumbs') %>">Thumbnails</option>
|
183
|
+
<option value="floating" title="<%= I18n.t('presenter.settings.layout.floating') %>">Floating</option>
|
184
|
+
<option value="beside" title="<%= I18n.t('presenter.settings.layout.beside') %>">Side-by-Side</option>
|
172
185
|
</select>
|
173
186
|
<div id="nextWindowConfirmation">
|
174
|
-
<p class="description"
|
187
|
+
<p class="description"><%= I18n.t('presenter.settings.layout.confirmation') %></p>
|
175
188
|
<p>
|
176
|
-
<input id="openNextWindow" type="button" onClick="#" value="
|
177
|
-
<a id="nextWinCancel" href="#"
|
189
|
+
<input id="openNextWindow" type="button" onClick="#" value="<%= I18n.t('presenter.settings.layout.open') %>" />
|
190
|
+
<a id="nextWinCancel" href="#"><%= I18n.t('presenter.settings.layout.cancel') %></a>
|
178
191
|
</p>
|
179
192
|
</div>
|
180
193
|
</div>
|
181
194
|
<div class="links">
|
182
|
-
<a id="clearCookies" href="#" title="
|
195
|
+
<a id="clearCookies" href="#" title="<%= I18n.t('presenter.settings.layout.reset.tooltip') %>"><%= I18n.t('presenter.settings.layout.reset.label') %></a>
|
183
196
|
</div>
|
184
197
|
</div>
|
185
198
|
|
199
|
+
<div id="print-modal" title="<%= I18n.t('presenter.print.label') %>">
|
200
|
+
<p><%= I18n.t('presenter.print.description') %></p>
|
201
|
+
<ul id="print-sections"></ul>
|
202
|
+
</div>
|
203
|
+
|
186
204
|
<div id="slides" class="offscreen" <%= 'style="display:none;"' if @slides %>>
|
187
205
|
<%= @slides %>
|
188
206
|
</div>
|