diff options
author | Andrew8xx8 <avk@8xx8.ru> | 2013-03-23 23:13:51 +0400 |
---|---|---|
committer | Andrew8xx8 <avk@8xx8.ru> | 2013-03-23 23:17:25 +0400 |
commit | b49cfbc1d54b6cfa674ba803b3a90fb81c609c8b (patch) | |
tree | f3bbb846ae9881b33e238585e1d72ea5e668d689 /app | |
parent | cc869d5dc101ea1175e308d8532064f06072d08b (diff) | |
download | gitlab-ce-b49cfbc1d54b6cfa674ba803b3a90fb81c609c8b.tar.gz |
Project snippets moved to /projects
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/projects/snippets_controller.rb | 2 | ||||
-rw-r--r-- | app/views/projects/snippets/_blob.html.haml | 12 | ||||
-rw-r--r-- | app/views/projects/snippets/_form.html.haml | 41 | ||||
-rw-r--r-- | app/views/projects/snippets/_snippet.html.haml | 13 | ||||
-rw-r--r-- | app/views/projects/snippets/edit.html.haml | 1 | ||||
-rw-r--r-- | app/views/projects/snippets/index.html.haml | 19 | ||||
-rw-r--r-- | app/views/projects/snippets/new.html.haml | 1 | ||||
-rw-r--r-- | app/views/projects/snippets/show.html.haml | 9 |
8 files changed, 97 insertions, 1 deletions
diff --git a/app/controllers/projects/snippets_controller.rb b/app/controllers/projects/snippets_controller.rb index a2e22a670a3..7c3281084f7 100644 --- a/app/controllers/projects/snippets_controller.rb +++ b/app/controllers/projects/snippets_controller.rb @@ -1,4 +1,4 @@ -class SnippetsController < ProjectResourceController +class Projects::SnippetsController < Projects::ApplicationController before_filter :module_enabled before_filter :snippet, only: [:show, :edit, :destroy, :update, :raw] diff --git a/app/views/projects/snippets/_blob.html.haml b/app/views/projects/snippets/_blob.html.haml new file mode 100644 index 00000000000..017a33b34f3 --- /dev/null +++ b/app/views/projects/snippets/_blob.html.haml @@ -0,0 +1,12 @@ +.file_holder + .file_title + %i.icon-file + %strong= @snippet.file_name + %span.options + = link_to "raw", raw_project_snippet_path(@project, @snippet), class: "btn btn-tiny", target: "_blank" + .file_content.code + - unless @snippet.content.empty? + %div{class: user_color_scheme_class} + = raw @snippet.colorize(formatter: :gitlab) + - else + %p.nothing_here_message Empty file diff --git a/app/views/projects/snippets/_form.html.haml b/app/views/projects/snippets/_form.html.haml new file mode 100644 index 00000000000..77162cdcde3 --- /dev/null +++ b/app/views/projects/snippets/_form.html.haml @@ -0,0 +1,41 @@ +%h3.page_title + = @snippet.new_record? ? "New Snippet" : "Edit Snippet ##{@snippet.id}" +%hr +.snippet-form-holder + = form_for [@project, @snippet] do |f| + -if @snippet.errors.any? + .alert.alert-error + %ul + - @snippet.errors.full_messages.each do |msg| + %li= msg + + .clearfix + = f.label :title + .input= f.text_field :title, placeholder: "Example Snippet", class: 'input-xlarge', required: true + .clearfix + = f.label "Lifetime" + .input= f.select :expires_at, lifetime_select_options, {}, {class: 'chosen span2'} + .clearfix + .file-editor + = f.label :file_name, "File" + .input + .file_holder.snippet + .file_title + = f.text_field :file_name, placeholder: "example.rb", class: 'snippet-file-name', required: true + .file_content.code + %pre#editor= @snippet.content + = f.hidden_field :content, class: 'snippet-file-content' + + .form-actions + = f.submit 'Save', class: "btn-save btn" + = link_to "Cancel", project_snippets_path(@project), class: " btn" + - unless @snippet.new_record? + .pull-right= link_to 'Destroy', [@project, @snippet], confirm: 'Are you sure?', method: :delete, class: "btn pull-right danger delete-snippet", id: "destroy_snippet_#{@snippet.id}" + + +:javascript + var editor = ace.edit("editor"); + $(".snippet-form-holder form").submit(function(){ + $(".snippet-file-content").val(editor.getValue()); + }); + diff --git a/app/views/projects/snippets/_snippet.html.haml b/app/views/projects/snippets/_snippet.html.haml new file mode 100644 index 00000000000..a576500c15d --- /dev/null +++ b/app/views/projects/snippets/_snippet.html.haml @@ -0,0 +1,13 @@ +%tr + %td + = image_tag gravatar_icon(snippet.author_email), class: "avatar s24" + %a{href: project_snippet_path(snippet.project, snippet)} + %strong= truncate(snippet.title, length: 60) + %td + = snippet.file_name + %td + %span.cgray + - if snippet.expires_at + = snippet.expires_at.to_date.to_s(:short) + - else + Never diff --git a/app/views/projects/snippets/edit.html.haml b/app/views/projects/snippets/edit.html.haml new file mode 100644 index 00000000000..f81c0b8bc64 --- /dev/null +++ b/app/views/projects/snippets/edit.html.haml @@ -0,0 +1 @@ += render "snippets/form" diff --git a/app/views/projects/snippets/index.html.haml b/app/views/projects/snippets/index.html.haml new file mode 100644 index 00000000000..bacf23d8f8d --- /dev/null +++ b/app/views/projects/snippets/index.html.haml @@ -0,0 +1,19 @@ +%h3.page_title + Snippets + %small share code pastes with others out of git repository + + - if can? current_user, :write_snippet, @project + = link_to new_project_snippet_path(@project), class: "btn btn-small add_new pull-right", title: "New Snippet" do + Add new snippet +%br +%table + %thead + %tr + %th Title + %th File Name + %th Expires At + = render @snippets + - if @snippets.empty? + %tr + %td{colspan: 3} + %h3.nothing_here_message Nothing here. diff --git a/app/views/projects/snippets/new.html.haml b/app/views/projects/snippets/new.html.haml new file mode 100644 index 00000000000..f81c0b8bc64 --- /dev/null +++ b/app/views/projects/snippets/new.html.haml @@ -0,0 +1 @@ += render "snippets/form" diff --git a/app/views/projects/snippets/show.html.haml b/app/views/projects/snippets/show.html.haml new file mode 100644 index 00000000000..12534edf8ba --- /dev/null +++ b/app/views/projects/snippets/show.html.haml @@ -0,0 +1,9 @@ +%h3.page_title + = @snippet.title + %small= @snippet.file_name + - if can?(current_user, :admin_snippet, @project) || @snippet.author == current_user + = link_to "Edit", edit_project_snippet_path(@project, @snippet), class: "btn btn-small pull-right", title: 'Edit Snippet' + +%br +%div= render 'blob' +%div#notes= render "notes/notes_with_form" |