From f1795a491145740235fd36560bf630d1773cf07a Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Tue, 17 Apr 2012 00:22:59 +0300 Subject: [PATCH] Issues form improved, Show milestone for Issue show --- app/assets/stylesheets/main.scss | 5 ++ app/assets/stylesheets/sections/issues.scss | 27 +++++++++ app/views/issues/_form.html.haml | 61 +++++++++++---------- app/views/issues/show.html.haml | 15 +++-- 4 files changed, 75 insertions(+), 33 deletions(-) create mode 100644 app/assets/stylesheets/sections/issues.scss diff --git a/app/assets/stylesheets/main.scss b/app/assets/stylesheets/main.scss index a6124170..c7ebbeb1 100644 --- a/app/assets/stylesheets/main.scss +++ b/app/assets/stylesheets/main.scss @@ -98,6 +98,11 @@ $hover: #FDF5D9; */ @import "sections/commits.scss"; +/** + * Styles related to displaying issues + */ +@import "sections/issues.scss"; + /** * This scss file redefine chozen selectbox styles for * project Branch/Tag select element diff --git a/app/assets/stylesheets/sections/issues.scss b/app/assets/stylesheets/sections/issues.scss new file mode 100644 index 00000000..cbaca760 --- /dev/null +++ b/app/assets/stylesheets/sections/issues.scss @@ -0,0 +1,27 @@ +.issue_form_box { + @extend .main_box; + .issue_title { + @extend .top_box_content; + .clearfix { + margin-bottom:0px; + input { + @extend .span8; + } + } + } + .issue_middle_block { + @extend .middle_box_content; + height:30px; + .issue_assignee { + @extend .span6; + float:left; + } + .issue_milestone { + @extend .span4; + float:left; + } + } + .issue_description { + @extend .bottom_box_content; + } +} diff --git a/app/views/issues/_form.html.haml b/app/views/issues/_form.html.haml index 4698bed2..2baf1bfe 100644 --- a/app/views/issues/_form.html.haml +++ b/app/views/issues/_form.html.haml @@ -1,42 +1,45 @@ %div.issue-form-holder + %h3= @issue.new_record? ? "New Issue" : "Edit Issue ##{@issue.id}" + - unless request.xhr? + .back_link + = link_to project_issue_path(@project, @issue) do + ← back to show page = form_for [@project, @issue], :remote => request.xhr? do |f| - %h3= @issue.new_record? ? "New Issue" : "Edit Issue ##{@issue.id}" - %hr -if @issue.errors.any? .alert-message.block-message.error %ul - @issue.errors.full_messages.each do |msg| %li= msg + .issue_form_box + .issue_title + .clearfix + = f.label :title, "Issue Subject *" + .input + = f.text_field :title, :maxlength => 255, :class => "xxlarge" + .issue_middle_block + .issue_assignee + = f.label :assignee_id, "Assign to *" + .input= f.select(:assignee_id, @project.users.all.collect {|p| [ p.name, p.id ] }, { :include_blank => "Assign to user" }) + .issue_milestone + = f.label :milestone_id + .input= f.select(:milestone_id, @project.milestones.active.all.collect {|p| [ p.title, p.id ] }, { :include_blank => "Select milestone" }) - .clearfix - = f.label :title, "Issue Subject *" - .input - = f.text_field :title, :maxlength => 255, :class => "xxlarge" - - .clearfix - = f.label :assignee_id, "Assign to *" - .input= f.select(:assignee_id, @project.users.all.collect {|p| [ p.name, p.id ] }, { :include_blank => "Assign to user" }) - - .clearfix - = f.label :description, "Issue Details" - .input - = f.text_area :description, :maxlength => 2000, :class => "xxlarge", :rows => 10 - %p.hint Markdown is enabled. + .issue_description + .clearfix + = f.label :critical, "Critical" + .input= f.check_box :critical + + - unless @issue.new_record? + .clearfix + = f.label :closed + .input= f.check_box :closed + .clearfix + = f.label :description, "Issue Details" + .input + = f.text_area :description, :maxlength => 2000, :class => "xxlarge", :rows => 14 + %p.hint Markdown is enabled. - .clearfix - = f.label :milestone_id - .input= f.select(:milestone_id, @project.milestones.active.all.collect {|p| [ p.title, p.id ] }, { :include_blank => "Select milestone" }) - - - .clearfix - = f.label :critical, "Critical" - .input= f.check_box :critical - - - unless @issue.new_record? - .clearfix - = f.label :closed - .input= f.check_box :closed .actions - if @issue.new_record? diff --git a/app/views/issues/show.html.haml b/app/views/issues/show.html.haml index 5da2e454..9241a460 100644 --- a/app/views/issues/show.html.haml +++ b/app/views/issues/show.html.haml @@ -7,11 +7,11 @@ %span.right - if can?(current_user, :admin_project, @project) || @issue.author == current_user - if @issue.closed - = link_to 'Reopen', project_issue_path(@project, @issue, :issue => {:closed => false }, :status_only => true), :method => :put, :class => "btn" + = link_to 'Reopen', project_issue_path(@project, @issue, :issue => {:closed => false }, :status_only => true), :method => :put, :class => "btn small" - else - = link_to 'Close', project_issue_path(@project, @issue, :issue => {:closed => true }, :status_only => true), :method => :put, :class => "btn", :title => "Close Issue" + = link_to 'Close', project_issue_path(@project, @issue, :issue => {:closed => true }, :status_only => true), :method => :put, :class => "btn small", :title => "Close Issue" - if can?(current_user, :admin_project, @project) || @issue.author == current_user - = link_to edit_project_issue_path(@project, @issue), :class => "btn" do + = link_to edit_project_issue_path(@project, @issue), :class => "btn small" do Edit %br @@ -39,7 +39,14 @@ %cite.cgray and currently assigned to = image_tag gravatar_icon(@issue.assignee_email), :width => 16, :class => "lil_av" %strong.author= link_to_issue_assignee(@issue) - + + - if @issue.milestone + - milestone = @issue.milestone + %cite.cgray and attached to milestone + = link_to project_milestone_path(milestone.project, milestone) do + %strong + = truncate(milestone.title, :length => 20) + - if @issue.description.present? .bottom_box_content = preserve do