express_translate 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +24 -14
- data/VERSION +1 -1
- data/app/assets/javascript/express_translate/application.js +1 -0
- data/app/assets/javascript/express_translate/handlebars-v1.3.0.js +2746 -0
- data/app/assets/stylesheets/express_translate/express_translate.css.scss +8 -3
- data/app/controllers/express_translate/account_controller.rb +6 -0
- data/app/controllers/express_translate/ajax/codes_controller.rb +19 -3
- data/app/views/express_translate/ajax/languages/_content_language.html.erb +1 -1
- data/app/views/express_translate/options/language_detail.html.erb +40 -13
- data/app/views/express_translate/templates/_code_item.html.erb +49 -0
- data/config/routes.rb +4 -0
- data/express_translate.gemspec +3 -3
- data/lib/express_translate/account_management.rb +5 -0
- data/lib/generators/express_translate/reset_account_generator.rb +1 -2
- data/lib/generators/express_translate/templates/config/express_translate.yml +2 -2
- metadata +4 -4
- data/app/views/express_translate/ajax/codes/_content_code.html.erb +0 -48
- data/app/views/express_translate/ajax/codes/code_update.html.erb +0 -1
@@ -98,7 +98,7 @@ body#express_translate {
|
|
98
98
|
float: left;
|
99
99
|
width: 130px;
|
100
100
|
height: 130px;
|
101
|
-
background: #3e94d1;
|
101
|
+
background-color: #3e94d1;
|
102
102
|
border-radius: 80px;
|
103
103
|
border:3px solid #fff;
|
104
104
|
box-shadow:0px 0px 2px #888;
|
@@ -108,10 +108,15 @@ body#express_translate {
|
|
108
108
|
transition:all 0.5s;
|
109
109
|
-webkit-transition:all 0.5s;
|
110
110
|
-moz-transition:all 0.5s;
|
111
|
+
background-repeat:no-repeat;
|
112
|
+
background-position:center 13%;
|
113
|
+
background-size:25%;
|
111
114
|
|
112
115
|
&:hover {
|
113
116
|
box-shadow:0px 0px 3px #665;
|
114
|
-
background: #398ac4;
|
117
|
+
background-color: #398ac4;
|
118
|
+
background-position:center 8%;
|
119
|
+
background-size:35%;
|
115
120
|
& > p {display:none;}
|
116
121
|
h5 {display:block;}
|
117
122
|
h4 {display:block;}
|
@@ -310,7 +315,7 @@ body#express_translate {
|
|
310
315
|
}
|
311
316
|
|
312
317
|
&.origin_true {
|
313
|
-
background: #0B61A4;
|
318
|
+
background-color: #0B61A4;
|
314
319
|
}
|
315
320
|
|
316
321
|
&.add_files {
|
@@ -31,6 +31,12 @@ class ExpressTranslate::AccountController < ExpressTranslate::BaseController
|
|
31
31
|
string = (0...50).map { o[rand(o.length)] }.join
|
32
32
|
end
|
33
33
|
|
34
|
+
# Reset account with url
|
35
|
+
def reset
|
36
|
+
Account.reset
|
37
|
+
redirect_to action: "login"
|
38
|
+
end
|
39
|
+
|
34
40
|
# Check login status function
|
35
41
|
# If logined auto change location for Client
|
36
42
|
def check_login
|
@@ -7,6 +7,11 @@ class ExpressTranslate::Ajax::CodesController < ActionController::Base
|
|
7
7
|
require 'csv'
|
8
8
|
include ExpressTranslate
|
9
9
|
|
10
|
+
# Load all codes
|
11
|
+
def code_load
|
12
|
+
load_content_code(params)
|
13
|
+
end
|
14
|
+
|
10
15
|
# Add code
|
11
16
|
# The first: selector LanguageDetail want to add with Language ID and Package ID
|
12
17
|
# After: add code for LanguageDetail selected
|
@@ -28,7 +33,6 @@ class ExpressTranslate::Ajax::CodesController < ActionController::Base
|
|
28
33
|
load_content_code(params)
|
29
34
|
end
|
30
35
|
|
31
|
-
|
32
36
|
# Delete code
|
33
37
|
# The first: selector LanguageDetail want to add with Language ID and Package ID
|
34
38
|
# Next step: find and remove code data
|
@@ -46,8 +50,20 @@ class ExpressTranslate::Ajax::CodesController < ActionController::Base
|
|
46
50
|
# The second: selector Language want to show
|
47
51
|
def load_content_code(params)
|
48
52
|
@origin_lang = Language.get_origin(params[:pack])
|
49
|
-
@LanguageDetail = LanguageDetail
|
50
53
|
@lang = {'id'=> params[:lang], 'packages'=> params[:pack]}
|
51
|
-
|
54
|
+
data = []
|
55
|
+
LanguageDetail.info(@origin_lang).all.each_with_index do |item, index|
|
56
|
+
is_origin = @origin_lang["id"] == @lang["id"]
|
57
|
+
code = LanguageDetail.info(@lang).find(item['code']) if !is_origin
|
58
|
+
data.push({
|
59
|
+
index: index + 1,
|
60
|
+
item_code: item["code"],
|
61
|
+
item_text: item["text"],
|
62
|
+
code_text: is_origin ? item["text"] : (code.present? ? code["text"] : ""),
|
63
|
+
origin_lang: is_origin,
|
64
|
+
origin_list: is_origin ? "origin_list" : ""
|
65
|
+
})
|
66
|
+
end
|
67
|
+
render json: {success: true, data: data}
|
52
68
|
end
|
53
69
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<% @languages.each do |lang| %>
|
2
|
-
<a class="lang origin_<%= lang['is_origin'] %>" href="/express_translate/language/<%= params[:packages] %>/<%= lang['id'] %>">
|
2
|
+
<a class="lang origin_<%= lang['is_origin'] %>" href="/express_translate/language/<%= params[:packages] %>/<%= lang['id'] %>" style="background-image: url('/assets/express_translate/flags/<%= lang['id'] %>.png')">
|
3
3
|
<span><%= lang['text'].slice(0,1).capitalize + lang['text'].slice(1..-1) %></span>
|
4
4
|
<p><%= (@LanguageDetail.info(lang).all.count.to_f / (@max == 0 ? 1 : @max) * 100).to_i %>%</p>
|
5
5
|
<h5><%= @LanguageDetail.info(lang).all.count %>/<%= @max %></h5>
|
@@ -1,7 +1,6 @@
|
|
1
1
|
<div class="content" id="content_code">
|
2
|
-
|
2
|
+
|
3
3
|
</div>
|
4
|
-
|
5
4
|
<div class="popup">
|
6
5
|
<form id="add_code">
|
7
6
|
<div class="title">Add Code</div>
|
@@ -18,6 +17,8 @@
|
|
18
17
|
</form>
|
19
18
|
</div>
|
20
19
|
|
20
|
+
<%= render "/express_translate/templates/code_item" %>
|
21
|
+
|
21
22
|
<script>
|
22
23
|
|
23
24
|
<% if @origin_lang["id"] == params["id"] %>
|
@@ -48,14 +49,15 @@
|
|
48
49
|
text: edit.find(".new_value").val()
|
49
50
|
},
|
50
51
|
success: function(data) {
|
51
|
-
|
52
|
+
if (data.success) {
|
53
|
+
var template = Handlebars.compile($("#code_item").html());
|
54
|
+
var html = template(data);
|
52
55
|
item.removeClass("wait");
|
53
56
|
item.removeClass("update");
|
54
57
|
window.notification("Successful for update!", true);
|
55
|
-
contentCode.html(
|
58
|
+
contentCode.html(html);
|
56
59
|
runJavascriptsCode();
|
57
|
-
}
|
58
|
-
|
60
|
+
}
|
59
61
|
}
|
60
62
|
})
|
61
63
|
}
|
@@ -71,10 +73,12 @@
|
|
71
73
|
text: form.find("#text").val()
|
72
74
|
},
|
73
75
|
success: function(data) {
|
74
|
-
if (
|
76
|
+
if (data.success) {
|
77
|
+
var template = Handlebars.compile($("#code_item").html());
|
78
|
+
var html = template(data);
|
75
79
|
popup.bPopup().close();
|
76
80
|
window.notification("Successful for save!", true);
|
77
|
-
contentCode.html(
|
81
|
+
contentCode.html(html);
|
78
82
|
runJavascriptsCode();
|
79
83
|
} else {
|
80
84
|
window.notification(data.error, false);
|
@@ -142,12 +146,17 @@
|
|
142
146
|
pack: "<%= params[:package] %>"
|
143
147
|
},
|
144
148
|
success: function(data) {
|
145
|
-
|
146
|
-
|
149
|
+
item.removeClass("wait");
|
150
|
+
if (data.success) {
|
151
|
+
var template = Handlebars.compile($("#code_item").html());
|
152
|
+
var html = template(data);
|
153
|
+
popup.bPopup().close();
|
147
154
|
window.notification("Successful for delete!", true);
|
148
|
-
|
155
|
+
contentCode.html(html);
|
149
156
|
runJavascriptsCode();
|
150
|
-
}
|
157
|
+
} else {
|
158
|
+
window.notification(data.error, false);
|
159
|
+
}
|
151
160
|
}
|
152
161
|
})
|
153
162
|
},
|
@@ -174,6 +183,24 @@
|
|
174
183
|
})
|
175
184
|
}
|
176
185
|
|
177
|
-
|
186
|
+
var load_index = function(args) {
|
187
|
+
$.ajax({
|
188
|
+
type: "POST",
|
189
|
+
url: "/express_translate/ajax/code/load",
|
190
|
+
data: {
|
191
|
+
lang: "<%= params[:id] %>",
|
192
|
+
pack: "<%= params[:package] %>",
|
193
|
+
},
|
194
|
+
success: function(data) {
|
195
|
+
if (data.success) {
|
196
|
+
var template = Handlebars.compile($("#code_item").html());
|
197
|
+
contentCode.html(template(data));
|
198
|
+
runJavascriptsCode();
|
199
|
+
}
|
200
|
+
}
|
201
|
+
})
|
202
|
+
}
|
203
|
+
|
204
|
+
load_index();
|
178
205
|
|
179
206
|
</script>
|
@@ -0,0 +1,49 @@
|
|
1
|
+
<script id="code_item" type="text/x-handlebars-template">
|
2
|
+
{{#each data}}
|
3
|
+
<div class="item_box" data="{{item_code}}">
|
4
|
+
<h6 class="index">{{index}}</h6>
|
5
|
+
<h6 class="code">{{item_code}}</h6>
|
6
|
+
|
7
|
+
<div class='edit'>
|
8
|
+
<a class='btn' href="/express_translate/ajax/code/update" data="{{item_code}}" type="update_code" data_show="content_code">Save</a>
|
9
|
+
<a class='btn btn_cancel' href="#">Cancel</a>
|
10
|
+
<div class="col1 btn_cancel">
|
11
|
+
<h2><b>Origin:</b></h2>
|
12
|
+
<span>{{item_text}}</span>
|
13
|
+
</div>
|
14
|
+
<div class="col1">
|
15
|
+
<h2><b>Translate:</b></h2>
|
16
|
+
<textarea class="new_value" href="/express_translate/ajax/code/update" data="{{item_code}}">{{code_text}}</textarea>
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
|
20
|
+
<div class="show {{origin_list}}">
|
21
|
+
<a class='btn btn_edit' href="#">Edit</a>
|
22
|
+
{{#unless origin_lang}}
|
23
|
+
<a class='btn btn_delete' href="/express_translate/ajax/code/delete" data="{{item_code}}" type="delete_code" data_show="content_code">Delete</a>
|
24
|
+
<div class="col1">
|
25
|
+
<h2><b>Origin:</b></h2>
|
26
|
+
<span class="origin_span">{{item_text}}</span>
|
27
|
+
<hr>
|
28
|
+
</div>
|
29
|
+
{{/unless}}
|
30
|
+
<div class="col1 btn_edit">
|
31
|
+
<h2><b>Translate:</b></h2>
|
32
|
+
<span class="trans_span">{{code_text}}</span>
|
33
|
+
</div>
|
34
|
+
</div>
|
35
|
+
|
36
|
+
<div class="waiting">
|
37
|
+
<div class="bubblingG">
|
38
|
+
<p id="bubblingG_1"></p>
|
39
|
+
<p id="bubblingG_2"></p>
|
40
|
+
<p id="bubblingG_3"></p>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
|
44
|
+
<div class="delete_dialog_{{item_code}}" style="display: none">
|
45
|
+
<h4>Are you sure you want to delete?</br>{{item_text}}</h4>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
{{/each}}
|
49
|
+
</script>
|
data/config/routes.rb
CHANGED
@@ -11,7 +11,11 @@ Rails.application.routes.draw do
|
|
11
11
|
get "/login" => "express_translate/account#login"
|
12
12
|
post "/login" => "express_translate/account#login_check"
|
13
13
|
|
14
|
+
# TOOLS
|
15
|
+
get "/reset/account" => "express_translate/account#reset"
|
16
|
+
|
14
17
|
# CODE
|
18
|
+
post "/ajax/code/load" => 'express_translate/ajax/codes#code_load'
|
15
19
|
post "/ajax/code/add" => 'express_translate/ajax/codes#code_add'
|
16
20
|
post "/ajax/code/update" => 'express_translate/ajax/codes#code_update'
|
17
21
|
post "/ajax/code/delete" => 'express_translate/ajax/codes#code_delete'
|
data/express_translate.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "express_translate"
|
8
|
-
s.version = "1.0.
|
8
|
+
s.version = "1.0.6"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Karl"]
|
@@ -111,6 +111,7 @@ Gem::Specification.new do |s|
|
|
111
111
|
"app/assets/javascript/express_translate/application.js",
|
112
112
|
"app/assets/javascript/express_translate/base.js",
|
113
113
|
"app/assets/javascript/express_translate/bpopup.js",
|
114
|
+
"app/assets/javascript/express_translate/handlebars-v1.3.0.js",
|
114
115
|
"app/assets/javascript/express_translate/jquery-ui-1.10.4.js",
|
115
116
|
"app/assets/javascript/express_translate/translate.layout.js",
|
116
117
|
"app/assets/javascript/express_translate/wSelect.js",
|
@@ -138,8 +139,6 @@ Gem::Specification.new do |s|
|
|
138
139
|
"app/views/.DS_Store",
|
139
140
|
"app/views/express_translate/.DS_Store",
|
140
141
|
"app/views/express_translate/account/login.html.erb",
|
141
|
-
"app/views/express_translate/ajax/codes/_content_code.html.erb",
|
142
|
-
"app/views/express_translate/ajax/codes/code_update.html.erb",
|
143
142
|
"app/views/express_translate/ajax/languages/_content_language.html.erb",
|
144
143
|
"app/views/express_translate/ajax/languages/language_update.html.erb",
|
145
144
|
"app/views/express_translate/ajax/packages/_content_index.html.erb",
|
@@ -148,6 +147,7 @@ Gem::Specification.new do |s|
|
|
148
147
|
"app/views/express_translate/options/index.html.erb",
|
149
148
|
"app/views/express_translate/options/language_detail.html.erb",
|
150
149
|
"app/views/express_translate/options/languages.html.erb",
|
150
|
+
"app/views/express_translate/templates/_code_item.html.erb",
|
151
151
|
"app/views/layouts/express_translate/login.html.erb",
|
152
152
|
"app/views/layouts/express_translate/translate.html.erb",
|
153
153
|
"config/languages.yml",
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: express_translate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -273,6 +273,7 @@ files:
|
|
273
273
|
- app/assets/javascript/express_translate/application.js
|
274
274
|
- app/assets/javascript/express_translate/base.js
|
275
275
|
- app/assets/javascript/express_translate/bpopup.js
|
276
|
+
- app/assets/javascript/express_translate/handlebars-v1.3.0.js
|
276
277
|
- app/assets/javascript/express_translate/jquery-ui-1.10.4.js
|
277
278
|
- app/assets/javascript/express_translate/translate.layout.js
|
278
279
|
- app/assets/javascript/express_translate/wSelect.js
|
@@ -300,8 +301,6 @@ files:
|
|
300
301
|
- app/views/.DS_Store
|
301
302
|
- app/views/express_translate/.DS_Store
|
302
303
|
- app/views/express_translate/account/login.html.erb
|
303
|
-
- app/views/express_translate/ajax/codes/_content_code.html.erb
|
304
|
-
- app/views/express_translate/ajax/codes/code_update.html.erb
|
305
304
|
- app/views/express_translate/ajax/languages/_content_language.html.erb
|
306
305
|
- app/views/express_translate/ajax/languages/language_update.html.erb
|
307
306
|
- app/views/express_translate/ajax/packages/_content_index.html.erb
|
@@ -310,6 +309,7 @@ files:
|
|
310
309
|
- app/views/express_translate/options/index.html.erb
|
311
310
|
- app/views/express_translate/options/language_detail.html.erb
|
312
311
|
- app/views/express_translate/options/languages.html.erb
|
312
|
+
- app/views/express_translate/templates/_code_item.html.erb
|
313
313
|
- app/views/layouts/express_translate/login.html.erb
|
314
314
|
- app/views/layouts/express_translate/translate.html.erb
|
315
315
|
- config/languages.yml
|
@@ -406,7 +406,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
406
406
|
version: '0'
|
407
407
|
segments:
|
408
408
|
- 0
|
409
|
-
hash:
|
409
|
+
hash: 2008451929382581134
|
410
410
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
411
411
|
none: false
|
412
412
|
requirements:
|
@@ -1,48 +0,0 @@
|
|
1
|
-
<% @LanguageDetail.info(@origin_lang).all.each_with_index do |item, index| %>
|
2
|
-
<div class="item_box" data="<%= item['code'] %>">
|
3
|
-
<h6 class="index"><%= index + 1 %></h6>
|
4
|
-
<h6 class="code"><%= item['code'] %></h6>
|
5
|
-
|
6
|
-
<div class='edit'>
|
7
|
-
<a class='btn' href="/express_translate/ajax/code/update" data="<%= item['code'] %>" type="update_code" data_show="content_code">Save</a>
|
8
|
-
<a class='btn btn_cancel' href="#">Cancel</a>
|
9
|
-
<div class="col1 btn_cancel">
|
10
|
-
<h2><b>Origin:</b></h2>
|
11
|
-
<span><%= item['text'] %></span>
|
12
|
-
</div>
|
13
|
-
<div class="col1">
|
14
|
-
<h2><b>Translate:</b></h2>
|
15
|
-
<% code = @LanguageDetail.info(@lang).find(item['code']) %>
|
16
|
-
<textarea class="new_value" href="/express_translate/ajax/code/update" data="<%= item['code'] %>"><%= code.nil? ? "" : code['text'] %></textarea>
|
17
|
-
</div>
|
18
|
-
</div>
|
19
|
-
|
20
|
-
<div class="show <%= @origin_lang["id"] == params["id"] ? "origin_list" : "" %>">
|
21
|
-
<a class='btn btn_edit' href="#">Edit</a>
|
22
|
-
<% if @origin_lang["id"] != @lang["id"] %>
|
23
|
-
<a class='btn btn_delete' href="/express_translate/ajax/code/delete" data="<%= item['code'] %>" type="delete_code" data_show="content_code">Delete</a>
|
24
|
-
<div class="col1">
|
25
|
-
<h2><b>Origin:</b></h2>
|
26
|
-
<span class="origin_span"><%= item['text'] %></span>
|
27
|
-
<hr>
|
28
|
-
</div>
|
29
|
-
<% end %>
|
30
|
-
<div class="col1 btn_edit">
|
31
|
-
<h2><b>Translate:</b></h2>
|
32
|
-
<span class="trans_span"><%= code.nil? ? "" : code['text'] %></span>
|
33
|
-
</div>
|
34
|
-
</div>
|
35
|
-
|
36
|
-
<div class="waiting">
|
37
|
-
<div class="bubblingG">
|
38
|
-
<p id="bubblingG_1"></p>
|
39
|
-
<p id="bubblingG_2"></p>
|
40
|
-
<p id="bubblingG_3"></p>
|
41
|
-
</div>
|
42
|
-
</div>
|
43
|
-
|
44
|
-
<div class="delete_dialog_<%= item['code'] %>" style="display: none">
|
45
|
-
<h4>Are you sure you want to delete?</br><%= item['text'] %></h4>
|
46
|
-
</div>
|
47
|
-
</div>
|
48
|
-
<% end %>
|
@@ -1 +0,0 @@
|
|
1
|
-
<%= render 'content_code' %>
|