Commit 5bf3a898edbbd0fc4f7a4557f6ffaea8ffabfbc7
1 parent
1752c6dc
Exists in
master
and in
4 other branches
Remove wall from basic notes logic
Showing
5 changed files
with
3 additions
and
183 deletions
Show diff stats
app/assets/javascripts/notes.js
@@ -4,31 +4,16 @@ var NoteList = { | @@ -4,31 +4,16 @@ var NoteList = { | ||
4 | target_params: null, | 4 | target_params: null, |
5 | target_id: 0, | 5 | target_id: 0, |
6 | target_type: null, | 6 | target_type: null, |
7 | - top_id: 0, | ||
8 | - bottom_id: 0, | ||
9 | loading_more_disabled: false, | 7 | loading_more_disabled: false, |
10 | - reversed: false, | ||
11 | 8 | ||
12 | init: function(tid, tt, path) { | 9 | init: function(tid, tt, path) { |
13 | NoteList.notes_path = path + ".js"; | 10 | NoteList.notes_path = path + ".js"; |
14 | NoteList.target_id = tid; | 11 | NoteList.target_id = tid; |
15 | NoteList.target_type = tt; | 12 | NoteList.target_type = tt; |
16 | - NoteList.reversed = $("#notes-list").is(".reversed"); | ||
17 | NoteList.target_params = "target_type=" + NoteList.target_type + "&target_id=" + NoteList.target_id; | 13 | NoteList.target_params = "target_type=" + NoteList.target_type + "&target_id=" + NoteList.target_id; |
18 | 14 | ||
19 | NoteList.setupMainTargetNoteForm(); | 15 | NoteList.setupMainTargetNoteForm(); |
20 | 16 | ||
21 | - if(NoteList.reversed) { | ||
22 | - var form = $(".js-main-target-form"); | ||
23 | - form.find(".note-form-actions").hide(); | ||
24 | - var textarea = form.find(".js-note-text"); | ||
25 | - textarea.css("height", "40px"); | ||
26 | - textarea.on("focus", function(){ | ||
27 | - textarea.css("height", "80px"); | ||
28 | - form.find(".note-form-actions").show(); | ||
29 | - }); | ||
30 | - } | ||
31 | - | ||
32 | // get initial set of notes | 17 | // get initial set of notes |
33 | NoteList.getContent(); | 18 | NoteList.getContent(); |
34 | 19 | ||
@@ -344,128 +329,11 @@ var NoteList = { | @@ -344,128 +329,11 @@ var NoteList = { | ||
344 | * Replaces the content of #notes-list with the given html. | 329 | * Replaces the content of #notes-list with the given html. |
345 | */ | 330 | */ |
346 | setContent: function(newNoteIds, html) { | 331 | setContent: function(newNoteIds, html) { |
347 | - NoteList.top_id = newNoteIds.first(); | ||
348 | - NoteList.bottom_id = newNoteIds.last(); | ||
349 | $("#notes-list").html(html); | 332 | $("#notes-list").html(html); |
350 | - | ||
351 | - // for the wall | ||
352 | - if (NoteList.reversed) { | ||
353 | - // init infinite scrolling | ||
354 | - NoteList.initLoadMore(); | ||
355 | - | ||
356 | - // init getting new notes | ||
357 | - NoteList.initRefreshNew(); | ||
358 | - } | ||
359 | }, | 333 | }, |
360 | 334 | ||
361 | 335 | ||
362 | /** | 336 | /** |
363 | - * Handle loading more notes when scrolling to the bottom of the page. | ||
364 | - * The id of the last note in the list is in NoteList.bottom_id. | ||
365 | - * | ||
366 | - * Set up refreshing only new notes after all notes have been loaded. | ||
367 | - */ | ||
368 | - | ||
369 | - | ||
370 | - /** | ||
371 | - * Initializes loading more notes when scrolling to the bottom of the page. | ||
372 | - */ | ||
373 | - initLoadMore: function() { | ||
374 | - $(document).endlessScroll({ | ||
375 | - bottomPixels: 400, | ||
376 | - fireDelay: 1000, | ||
377 | - fireOnce:true, | ||
378 | - ceaseFire: function() { | ||
379 | - return NoteList.loading_more_disabled; | ||
380 | - }, | ||
381 | - callback: function(i) { | ||
382 | - NoteList.getMore(); | ||
383 | - } | ||
384 | - }); | ||
385 | - }, | ||
386 | - | ||
387 | - /** | ||
388 | - * Gets an additional set of notes. | ||
389 | - */ | ||
390 | - getMore: function() { | ||
391 | - // only load more notes if there are no "new" notes | ||
392 | - $('.loading').show(); | ||
393 | - $.ajax({ | ||
394 | - url: NoteList.notes_path, | ||
395 | - data: NoteList.target_params + "&loading_more=1&" + (NoteList.reversed ? "before_id" : "after_id") + "=" + NoteList.bottom_id, | ||
396 | - complete: function(){ $('.js-notes-busy').removeClass("loading")}, | ||
397 | - beforeSend: function() { $('.js-notes-busy').addClass("loading") }, | ||
398 | - dataType: "script" | ||
399 | - }); | ||
400 | - }, | ||
401 | - | ||
402 | - /** | ||
403 | - * Called in response to getMore(). | ||
404 | - * Append notes to #notes-list. | ||
405 | - */ | ||
406 | - appendMoreNotes: function(newNoteIds, html) { | ||
407 | - var lastNewNoteId = newNoteIds.last(); | ||
408 | - if(lastNewNoteId != NoteList.bottom_id) { | ||
409 | - NoteList.bottom_id = lastNewNoteId; | ||
410 | - $("#notes-list").append(html); | ||
411 | - } | ||
412 | - }, | ||
413 | - | ||
414 | - /** | ||
415 | - * Called in response to getMore(). | ||
416 | - * Disables loading more notes when scrolling to the bottom of the page. | ||
417 | - */ | ||
418 | - finishedLoadingMore: function() { | ||
419 | - NoteList.loading_more_disabled = true; | ||
420 | - | ||
421 | - // make sure we are up to date | ||
422 | - NoteList.updateVotes(); | ||
423 | - }, | ||
424 | - | ||
425 | - | ||
426 | - /** | ||
427 | - * Handle refreshing and adding of new notes. | ||
428 | - * | ||
429 | - * New notes are all notes that are created after the site has been loaded. | ||
430 | - * The "old" notes are in #notes-list the "new" ones will be in #new-notes-list. | ||
431 | - * The id of the last "old" note is in NoteList.bottom_id. | ||
432 | - */ | ||
433 | - | ||
434 | - | ||
435 | - /** | ||
436 | - * Initializes getting new notes every n seconds. | ||
437 | - * | ||
438 | - * Note: only used on wall. | ||
439 | - */ | ||
440 | - initRefreshNew: function() { | ||
441 | - setInterval("NoteList.getNew()", 10000); | ||
442 | - }, | ||
443 | - | ||
444 | - /** | ||
445 | - * Gets the new set of notes. | ||
446 | - * | ||
447 | - * Note: only used on wall. | ||
448 | - */ | ||
449 | - getNew: function() { | ||
450 | - $.ajax({ | ||
451 | - url: NoteList.notes_path, | ||
452 | - data: NoteList.target_params + "&loading_new=1&after_id=" + (NoteList.reversed ? NoteList.top_id : NoteList.bottom_id), | ||
453 | - dataType: "script" | ||
454 | - }); | ||
455 | - }, | ||
456 | - | ||
457 | - /** | ||
458 | - * Called in response to getNew(). | ||
459 | - * Replaces the content of #new-notes-list with the given html. | ||
460 | - * | ||
461 | - * Note: only used on wall. | ||
462 | - */ | ||
463 | - replaceNewNotes: function(newNoteIds, html) { | ||
464 | - $("#new-notes-list").html(html); | ||
465 | - NoteList.updateVotes(); | ||
466 | - }, | ||
467 | - | ||
468 | - /** | ||
469 | * Adds a single common note to #notes-list. | 337 | * Adds a single common note to #notes-list. |
470 | */ | 338 | */ |
471 | appendNewNote: function(id, html) { | 339 | appendNewNote: function(id, html) { |
@@ -498,15 +366,6 @@ var NoteList = { | @@ -498,15 +366,6 @@ var NoteList = { | ||
498 | }, | 366 | }, |
499 | 367 | ||
500 | /** | 368 | /** |
501 | - * Adds a single wall note to #new-notes-list. | ||
502 | - * | ||
503 | - * Note: only used on wall. | ||
504 | - */ | ||
505 | - appendNewWallNote: function(id, html) { | ||
506 | - $("#new-notes-list").prepend(html); | ||
507 | - }, | ||
508 | - | ||
509 | - /** | ||
510 | * Called in response the main target form has been successfully submitted. | 369 | * Called in response the main target form has been successfully submitted. |
511 | * | 370 | * |
512 | * Removes any errors. | 371 | * Removes any errors. |
app/contexts/notes/load_context.rb
@@ -3,8 +3,6 @@ module Notes | @@ -3,8 +3,6 @@ module Notes | ||
3 | def execute | 3 | def execute |
4 | target_type = params[:target_type] | 4 | target_type = params[:target_type] |
5 | target_id = params[:target_id] | 5 | target_id = params[:target_id] |
6 | - after_id = params[:after_id] | ||
7 | - before_id = params[:before_id] | ||
8 | 6 | ||
9 | 7 | ||
10 | @notes = case target_type | 8 | @notes = case target_type |
@@ -16,17 +14,6 @@ module Notes | @@ -16,17 +14,6 @@ module Notes | ||
16 | project.merge_requests.find(target_id).mr_and_commit_notes.inc_author.fresh | 14 | project.merge_requests.find(target_id).mr_and_commit_notes.inc_author.fresh |
17 | when "snippet" | 15 | when "snippet" |
18 | project.snippets.find(target_id).notes.fresh | 16 | project.snippets.find(target_id).notes.fresh |
19 | - when "wall" | ||
20 | - # this is the only case, where the order is DESC | ||
21 | - project.notes.common.inc_author_project.order("created_at DESC, id DESC").limit(50) | ||
22 | - end | ||
23 | - | ||
24 | - @notes = if after_id | ||
25 | - @notes.where("id > ?", after_id) | ||
26 | - elsif before_id | ||
27 | - @notes.where("id < ?", before_id) | ||
28 | - else | ||
29 | - @notes | ||
30 | end | 17 | end |
31 | end | 18 | end |
32 | end | 19 | end |
app/views/notes/_reversed_notes_with_form.html.haml
@@ -1,12 +0,0 @@ | @@ -1,12 +0,0 @@ | ||
1 | -.js-main-target-form | ||
2 | -- if can? current_user, :write_note, @project | ||
3 | - = render "notes/form" | ||
4 | - | ||
5 | -%ul#new-notes-list.reversed.notes | ||
6 | -%ul#notes-list.reversed.notes | ||
7 | -.notes-busy.js-notes-busy | ||
8 | - | ||
9 | -:javascript | ||
10 | - $(function(){ | ||
11 | - NoteList.init("#{@target_id}", "#{@target_type}", "#{project_notes_path(@project)}"); | ||
12 | - }); |
app/views/notes/create.js.haml
@@ -2,10 +2,7 @@ | @@ -2,10 +2,7 @@ | ||
2 | var noteHtml = "#{escape_javascript(render "notes/note", note: @note)}"; | 2 | var noteHtml = "#{escape_javascript(render "notes/note", note: @note)}"; |
3 | 3 | ||
4 | - if note_for_main_target?(@note) | 4 | - if note_for_main_target?(@note) |
5 | - - if @note.for_wall? | ||
6 | - NoteList.appendNewWallNote(#{@note.id}, noteHtml); | ||
7 | - - else | ||
8 | - NoteList.appendNewNote(#{@note.id}, noteHtml); | 5 | + NoteList.appendNewNote(#{@note.id}, noteHtml); |
9 | - else | 6 | - else |
10 | :plain | 7 | :plain |
11 | var firstDiscussionNoteHtml = "#{escape_javascript(render "notes/diff_notes_with_reply", notes: [@note])}"; | 8 | var firstDiscussionNoteHtml = "#{escape_javascript(render "notes/diff_notes_with_reply", notes: [@note])}"; |
@@ -18,4 +15,4 @@ | @@ -18,4 +15,4 @@ | ||
18 | - if note_for_main_target?(@note) | 15 | - if note_for_main_target?(@note) |
19 | NoteList.errorsOnForm(errorsHtml); | 16 | NoteList.errorsOnForm(errorsHtml); |
20 | - else | 17 | - else |
21 | - NoteList.errorsOnForm(errorsHtml, "#{@note.discussion_id}"); | ||
22 | \ No newline at end of file | 18 | \ No newline at end of file |
19 | + NoteList.errorsOnForm(errorsHtml, "#{@note.discussion_id}"); |
app/views/notes/index.js.haml
1 | - unless @notes.blank? | 1 | - unless @notes.blank? |
2 | var notesHtml = "#{escape_javascript(render 'notes/notes')}"; | 2 | var notesHtml = "#{escape_javascript(render 'notes/notes')}"; |
3 | - new_note_ids = @notes.map(&:id) | 3 | - new_note_ids = @notes.map(&:id) |
4 | - - if loading_more_notes? | ||
5 | - NoteList.appendMoreNotes(#{new_note_ids}, notesHtml); | ||
6 | - | ||
7 | - - elsif loading_new_notes? | ||
8 | - NoteList.replaceNewNotes(#{new_note_ids}, notesHtml); | ||
9 | - | ||
10 | - - else | ||
11 | - NoteList.setContent(#{new_note_ids}, notesHtml); | ||
12 | - | ||
13 | -- else | ||
14 | - - if loading_more_notes? | ||
15 | - NoteList.finishedLoadingMore(); | 4 | + NoteList.setContent(#{new_note_ids}, notesHtml); |