Description:
merge
Commit status:
[Not Reviewed]
References:
merge java
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r693:8edec20582c5 - - 7 files changed: 58 inserted, 30 deleted

@@ -45,47 +45,48
45 45 # To use debugger
46 46 # gem 'debugger'
47 47 #
48 48
49 49 #in-place editor
50 50 gem 'best_in_place', '~> 3.0.1'
51 51
52 52 # jquery addition
53 53 gem 'jquery-rails'
54 54 gem 'jquery-ui-rails'
55 55 gem 'jquery-timepicker-addon-rails'
56 56 gem 'jquery-tablesorter'
57 57 gem 'jquery-countdown-rails'
58 58
59 59 #syntax highlighter
60 60 gem 'rouge'
61 61
62 62 #bootstrap add-ons
63 63 gem 'bootstrap-sass', '~> 3.2.0'
64 64 gem 'bootstrap-switch-rails'
65 65 gem 'bootstrap-toggle-rails'
66 66 gem 'autoprefixer-rails'
67 67 gem 'momentjs-rails'
68 68 gem 'rails_bootstrap_sortable'
69 - gem 'bootstrap3-datetimepicker-rails', '~> 4.17.47'
69 + gem 'bootstrap-datepicker-rails'
70 + gem 'bootstrap3-datetimepicker-rails'
70 71 gem 'jquery-datatables-rails'
71 72
72 73 #----------- user interface -----------------
73 74 #select 2
74 75 gem 'select2-rails'
75 76 #ace editor
76 77 gem 'ace-rails-ap'
77 78 #paginator
78 79 gem 'will_paginate', '~> 3.0.7'
79 80
80 81 gem 'mail'
81 82 gem 'rdiscount'
82 83 gem 'dynamic_form'
83 84 gem 'in_place_editing'
84 85 gem 'verification', :git => 'https://github.com/sikachu/verification.git'
85 86
86 87
87 88 #---------------- testiing -----------------------
88 89 gem 'minitest-reporters'
89 90
90 91 #---------------- for console --------------------
91 92 gem 'fuzzy-string-match'
@@ -40,48 +40,50
40 40 builder (~> 3.1)
41 41 activerecord (4.2.7.1)
42 42 activemodel (= 4.2.7.1)
43 43 activesupport (= 4.2.7.1)
44 44 arel (~> 6.0)
45 45 activerecord-session_store (1.0.0)
46 46 actionpack (>= 4.0, < 5.1)
47 47 activerecord (>= 4.0, < 5.1)
48 48 multi_json (~> 1.11, >= 1.11.2)
49 49 rack (>= 1.5.2, < 3)
50 50 railties (>= 4.0, < 5.1)
51 51 activesupport (4.2.7.1)
52 52 i18n (~> 0.7)
53 53 json (~> 1.7, >= 1.7.7)
54 54 minitest (~> 5.1)
55 55 thread_safe (~> 0.3, >= 0.3.4)
56 56 tzinfo (~> 1.1)
57 57 ansi (1.5.0)
58 58 arel (6.0.4)
59 59 autoprefixer-rails (6.6.0)
60 60 execjs
61 61 best_in_place (3.0.3)
62 62 actionpack (>= 3.2)
63 63 railties (>= 3.2)
64 + bootstrap-datepicker-rails (1.7.1.1)
65 + railties (>= 3.0)
64 66 bootstrap-sass (3.2.0.2)
65 67 sass (~> 3.2)
66 68 bootstrap-switch-rails (3.3.3)
67 69 bootstrap-toggle-rails (2.2.1.0)
68 70 bootstrap3-datetimepicker-rails (4.17.47)
69 71 momentjs-rails (>= 2.8.1)
70 72 builder (3.2.2)
71 73 coffee-rails (4.2.1)
72 74 coffee-script (>= 2.2.0)
73 75 railties (>= 4.0.0, < 5.2.x)
74 76 coffee-script (2.4.1)
75 77 coffee-script-source
76 78 execjs
77 79 coffee-script-source (1.12.2)
78 80 concurrent-ruby (1.0.4)
79 81 dynamic_form (1.1.4)
80 82 erubis (2.7.0)
81 83 execjs (2.7.0)
82 84 fuzzy-string-match (1.0.0)
83 85 RubyInline (>= 3.8.6)
84 86 globalid (0.3.7)
85 87 activesupport (>= 4.1.0)
86 88 haml (4.0.7)
87 89 tilt
@@ -187,52 +189,53
187 189 actionpack (>= 4.0)
188 190 activesupport (>= 4.0)
189 191 sprockets (>= 3.0.0)
190 192 sqlite3 (1.3.12)
191 193 thor (0.19.4)
192 194 thread_safe (0.3.5)
193 195 tilt (2.0.5)
194 196 tzinfo (1.2.2)
195 197 thread_safe (~> 0.1)
196 198 uglifier (3.0.4)
197 199 execjs (>= 0.3.0, < 3)
198 200 will_paginate (3.0.12)
199 201 yaml_db (0.4.2)
200 202 rails (>= 3.0, < 5.1)
201 203 rake (>= 0.8.7)
202 204
203 205 PLATFORMS
204 206 ruby
205 207
206 208 DEPENDENCIES
207 209 ace-rails-ap
208 210 activerecord-session_store
209 211 autoprefixer-rails
210 212 best_in_place (~> 3.0.1)
213 + bootstrap-datepicker-rails
211 214 bootstrap-sass (~> 3.2.0)
212 215 bootstrap-switch-rails
213 216 bootstrap-toggle-rails
214 - bootstrap3-datetimepicker-rails (~> 4.17.47)
217 + bootstrap3-datetimepicker-rails
215 218 coffee-rails
216 219 dynamic_form
217 220 fuzzy-string-match
218 221 haml
219 222 haml-rails
220 223 in_place_editing
221 224 jquery-countdown-rails
222 225 jquery-datatables-rails
223 226 jquery-rails
224 227 jquery-tablesorter
225 228 jquery-timepicker-addon-rails
226 229 jquery-ui-rails
227 230 mail
228 231 minitest-reporters
229 232 momentjs-rails
230 233 mysql2
231 234 rails (~> 4.2.0)
232 235 rails_bootstrap_sortable
233 236 rdiscount
234 237 rouge
235 238 sass-rails
236 239 select2-rails
237 240 sqlite3
238 241 uglifier
@@ -15,31 +15,33
15 15 //= require dataTables/jquery.dataTables
16 16 //= require dataTables/bootstrap/3/jquery.dataTables.bootstrap
17 17 //= require jquery-ui
18 18 //= require bootstrap-sprockets
19 19 //= require moment
20 20 //= require moment/th
21 21 //= require bootstrap-sortable
22 22 //= require bootstrap-datetimepicker
23 23 //= require select2
24 24 //= require ace-rails-ap
25 25 //= require ace/mode-c_cpp
26 26 //= require ace/mode-python
27 27 //= require ace/mode-ruby
28 28 //= require ace/mode-pascal
29 29 //= require ace/mode-javascript
30 30 //= require ace/mode-java
31 31 //= require ace/theme-merbivore
32 32 //= require custom
33 33 //= require jquery.countdown
34 34 //-------------- addition from local_jquery -----------
35 35 //= require jquery-tablesorter
36 36 //= require best_in_place
37 37 //= require best_in_place.jquery-ui
38 38 //= require brython
39 + //= require bootstrap-datepicker
40 + //= require bootstrap-datetimepicker
39 41
40 42 // since this is after blank line, it is not downloaded
41 43 //x= require prototype
42 44 //x= require prototype_ujs
43 45 //x= require effects
44 46 //x= require dragdrop
45 47 //x= require controls
@@ -12,48 +12,49
12 12 * // bootstrap says that we should not do this, but @import each file instead
13 13 * # *= require_tree .
14 14 * # *= require_self
15 15 */
16 16
17 17 @import "jquery-ui";
18 18 //@import "jquery.ui.core";
19 19 //@import "jquery.ui.theme";
20 20 //@import "jquery.ui.datepicker";
21 21 //@import "jquery.ui.slider";
22 22 @import "jquery-ui-timepicker-addon";
23 23 @import "jquery-tablesorter/theme.metro-dark";
24 24 @import "jquery.countdown";
25 25 @import "tablesorter-theme.cafe";
26 26
27 27 //bootstrap
28 28 @import "bootstrap-sprockets";
29 29 @import "bootstrap";
30 30 @import "select2";
31 31 @import "select2-bootstrap";
32 32
33 33 //@import bootstrap3-switch
34 34 @import "bootstrap-toggle";
35 35 @import "bootstrap-sortable";
36 + @import "bootstrap-datepicker3";
36 37 @import "bootstrap-datetimepicker";
37 38 @import "dataTables/bootstrap/3/jquery.dataTables.bootstrap";
38 39
39 40 //bootstrap navbar color (from)
40 41 $bgDefault: #19197b;
41 42 $bgHighlight: #06064b;
42 43 $colDefault: #8e8eb4;
43 44 $colHighlight: #ffffff;
44 45 $dropDown: false;
45 46
46 47 @font-face {
47 48 font-family: 'Glyphicons Halflings';
48 49 src: font-path('bootstrap/glyphicons-halflings-regular.eot');
49 50 src: font-path('bootstrap/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),
50 51 font-path('bootstrap/glyphicons-halflings-regular.woff') format('woff'),
51 52 font-path('bootstrap/glyphicons-halflings-regular.ttf') format('truetype'),
52 53 font-path('bootstrap/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
53 54 }
54 55
55 56
56 57 .navbar-default {
57 58 background-color: $bgDefault;
58 59 border-color: $bgHighlight;
59 60
@@ -237,52 +237,49
237 237 end
238 238
239 239 def remove_contest
240 240 problem = Problem.find(params[:id])
241 241 contest = Contest.find(params[:contest_id])
242 242 if problem!=nil and contest!=nil
243 243 problem.contests.delete(contest)
244 244 end
245 245 redirect_to :action => 'manage'
246 246 end
247 247
248 248 ##################################
249 249 protected
250 250
251 251 def allow_test_pair_import?
252 252 if defined? ALLOW_TEST_PAIR_IMPORT
253 253 return ALLOW_TEST_PAIR_IMPORT
254 254 else
255 255 return false
256 256 end
257 257 end
258 258
259 259 def change_date_added
260 260 problems = get_problems_from_params
261 - year = params[:date_added][:year].to_i
262 - month = params[:date_added][:month].to_i
263 - day = params[:date_added][:day].to_i
264 - date = Date.new(year,month,day)
261 + date = Date.parse(params[:date_added])
265 262 problems.each do |p|
266 263 p.date_added = date
267 264 p.save
268 265 end
269 266 end
270 267
271 268 def add_to_contest
272 269 problems = get_problems_from_params
273 270 contest = Contest.find(params[:contest][:id])
274 271 if contest!=nil and contest.enabled
275 272 problems.each do |p|
276 273 p.contests << contest
277 274 end
278 275 end
279 276 end
280 277
281 278 def set_available(avail)
282 279 problems = get_problems_from_params
283 280 problems.each do |p|
284 281 p.available = avail
285 282 p.save
286 283 end
287 284 end
288 285
@@ -26,69 +26,82
26 26 }
27 27 shiftclick(start,stop,$(this).is(':checked') )
28 28 }
29 29 start = orig_stop
30 30 } else {
31 31 start = parseInt($(this).attr('id').split('-')[2]);
32 32 }
33 33 });
34 34 });
35 35
36 36
37 37 %h1 Manage problems
38 38
39 39 %p= link_to '[Back to problem list]', problems_path
40 40
41 41 = form_tag :action=>'do_manage' do
42 42 .panel.panel-primary
43 43 .panel-heading
44 44 Action
45 45 .panel-body
46 46 .submit-box
47 47 What do you want to do to the selected problem?
48 48 %br/
49 49 (You can shift-click to select a range of problems)
50 - %ul
50 + %ul.form-inline
51 51 %li
52 52 Change date added to
53 - = select_date Date.current, :prefix => 'date_added'
53 + .input-group.date
54 + = text_field_tag :date_added, class: 'form-control'
55 + %span.input-group-addon
56 + %span.glyphicon.glyphicon-calendar
57 + -# = select_date Date.current, :prefix => 'date_added'
54 58 &nbsp;&nbsp;&nbsp;
55 - = submit_tag 'Change', :name => 'change_date_added', class: 'btn btn-default'
59 + = submit_tag 'Change', :name => 'change_date_added', class: 'btn btn-primary btn-sm'
56 60 %li
57 61 Set available to
58 - = submit_tag 'True', :name => 'enable_problem', class: 'btn btn-default'
59 - = submit_tag 'False', :name => 'disable_problem', class: 'btn btn-default'
62 + = submit_tag 'True', :name => 'enable_problem', class: 'btn btn-primary btn-sm'
63 + = submit_tag 'False', :name => 'disable_problem', class: 'btn btn-primary btn-sm'
60 64
61 65 - if GraderConfiguration.multicontests?
62 66 %li
63 67 Add to
64 68 = select("contest","id",Contest.all.collect {|c| [c.title, c.id]})
65 - = submit_tag 'Add', :name => 'add_to_contest', class: 'btn btn-default'
69 + = submit_tag 'Add', :name => 'add_to_contest', class: 'btn btn-primary btn-sm'
66 70 %li
67 71 Add problems to group
68 72 = select_tag "group_id", options_from_collection_for_select( Group.all, 'id','name',params[:group_name]), id: 'group_name',class: 'select2'
69 73 = submit_tag 'Add', name: 'add_group', class: 'btn btn-default'
70 74
71 75
72 76 %table.table.table-hover
73 77 %tr{style: "text-align: left;"}
74 78 %th= check_box_tag 'select_all'
75 79 %th Name
76 80 %th Full name
77 81 %th Available
78 82 %th Date added
79 83 - if GraderConfiguration.multicontests?
80 84 %th Contests
81 85
82 86 - num = 0
83 87 - for problem in @problems
84 88 - num += 1
85 89 %tr{:id => "row-prob-#{problem.id}", :name=> "prob-#{problem.id}"}
86 90 %td= check_box_tag "prob-#{problem.id}-#{num}"
87 91 %td= problem.name
88 92 %td= problem.full_name
89 93 %td= problem.available
90 94 %td= problem.date_added
91 95 - if GraderConfiguration.multicontests?
92 96 %td
93 97 - problem.contests.each do |contest|
94 98 = "(#{contest.name} [#{link_to 'x', :action => 'remove_contest', :id => problem.id, :contest_id => contest.id }])"
99 +
100 + :javascript
101 + $('.input-group.date').datetimepicker({
102 + format: 'DD/MMM/YYYY',
103 + showTodayButton: true,
104 + widgetPositioning: {horizontal: 'auto', vertical: 'bottom'},
105 +
106 + });
107 +
@@ -1,24 +1,35
1 1 %h1 Editing site
2 2 = error_messages_for :site
3 3 = form_for(@site) do |f|
4 - %p
5 - %b Name
6 - %br/
7 - = f.text_field :name
8 - %p
9 - %b Password
10 - %br/
11 - = f.text_field :password
12 - %p
13 - %b Started
14 - %br/
15 - = f.check_box :started
16 - %p
17 - %b Start time
18 - %br/
19 - = f.datetime_select :start_time, :include_blank => true
20 - %p
21 - = f.submit "Update"
4 + .row
5 + .col-md-4
6 + .form-group.field
7 + = f.label :name, "Name"
8 + = f.text_field :name, class: 'form-control'
9 + .form-group.field
10 + = f.label :password, "Password"
11 + = f.text_field :password, class: 'form-control'
12 + .form-group.field
13 + = f.label :started, "Started"
14 + = f.check_box :started, class: 'form-control'
15 + .form-group.field
16 + = f.label :start_time, "Start time"
17 + -# = f.datetime_select :start_time, :include_blank => true
18 + .input-group.date
19 + = f.text_field :start_time, class:'form-control' , value: (@site.start_time ? @site.start_time.strftime('%d/%b/%Y %H:%M') : '')
20 + %span.input-group-addon
21 + %span.glyphicon.glyphicon-calendar
22 + .actions
23 + = f.submit "Update", class: 'btn btn-primary'
24 + .col-md-8
25 +
22 26 = link_to 'Show', @site
23 27 |
24 28 = link_to 'Back', sites_path
29 +
30 +
31 + :javascript
32 + $('.input-group.date').datetimepicker({
33 + format: 'DD/MMM/YYYY HH:mm',
34 + });
35 +
You need to be logged in to leave comments. Login now