Merge branch 'szzh' of http://repository.trustie.net/xianbo/trustie2 into szzh
This commit is contained in:
commit
52f2a31b84
|
@ -25,6 +25,11 @@ class DiscussDemosController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
|
asset = Kindeditor::Asset.find_by_owner_id(params[:id])
|
||||||
|
filepath = File.join(Rails.root,"public","files","uploads",
|
||||||
|
asset[:created_at].to_s.gsub("+0800","").to_datetime.strftime("%Y%m").to_s,
|
||||||
|
asset[:asset].to_s)
|
||||||
|
File.delete(filepath) if File.exist?filepath
|
||||||
DiscussDemo.destroy(params[:id])
|
DiscussDemo.destroy(params[:id])
|
||||||
redirect_to :controller=> 'discuss_demos',:action => 'index'
|
redirect_to :controller=> 'discuss_demos',:action => 'index'
|
||||||
end
|
end
|
||||||
|
|
|
@ -91,6 +91,7 @@ class DocumentsController < ApplicationController
|
||||||
|
|
||||||
def update
|
def update
|
||||||
@document.safe_attributes = params[:document]
|
@document.safe_attributes = params[:document]
|
||||||
|
@document.save_attachments(params[:attachments])
|
||||||
if request.put? and @document.save
|
if request.put? and @document.save
|
||||||
flash[:notice] = l(:notice_successful_update)
|
flash[:notice] = l(:notice_successful_update)
|
||||||
redirect_to document_url(@document)
|
redirect_to document_url(@document)
|
||||||
|
|
|
@ -11,8 +11,8 @@
|
||||||
|
|
||||||
<%= wikitoolbar_for 'document_description' %>
|
<%= wikitoolbar_for 'document_description' %>
|
||||||
|
|
||||||
<% if @document.new_record? %>
|
|
||||||
<div class="box tabular">
|
<div class="box tabular">
|
||||||
<p><label><%=l(:label_attachment_plural)%></label><%= render :partial => 'attachments/form', :locals => {:container => @document} %></p>
|
<p><label><%=l(:label_attachment_plural)%></label><%= render :partial => 'attachments/form', :locals => {:container => @document} %></p>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
<h3><%=l(:label_document)%></h3>
|
<div class="project_r_h">
|
||||||
|
<h2 class="project_h2"><%=l(:label_document_plural)%></h2>
|
||||||
|
</div>
|
||||||
|
|
||||||
<%= labelled_form_for @document do |f| %>
|
<%= labelled_form_for @document do |f| %>
|
||||||
<%= render :partial => 'form', :locals => {:f => f} %>
|
<%= render :partial => 'form', :locals => {:f => f} %>
|
||||||
|
|
|
@ -1,139 +0,0 @@
|
||||||
<div class="project_r_h">
|
|
||||||
<h2 class="project_h2">问题跟踪</h2>
|
|
||||||
</div>
|
|
||||||
<div class="problem_top">
|
|
||||||
<% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
|
|
||||||
<span>
|
|
||||||
<% if User.current.member_of?(@project) %>
|
|
||||||
<%= link_to l(:label_issue_new), {:controller => 'issues', :action => 'new', :copy_from => nil}, :param => :project_id, :caption => :label_issue_new,
|
|
||||||
:html => {:accesskey => Redmine::AccessKeys.key_for(:new_issue)}, :class => 'icon icon-add' %>
|
|
||||||
<% end %>
|
|
||||||
<%= link_to l(:label_query), '#', :class => 'icon icon-help',
|
|
||||||
:onclick => '$("#custom_query").slideToggle(400); ' if true || User.current.logged? %>
|
|
||||||
</span>
|
|
||||||
<% end %>
|
|
||||||
<span class="problem_p fr">问题总数:<span><%= @project.issues.count %></span> 未解决:<span><%= @project.issues.where('status_id in (1,2,4,6)').count %></span></span>
|
|
||||||
</div>
|
|
||||||
<div class="contextual">
|
|
||||||
<% if !@query.new_record? && @query.editable_by?(User.current) %>
|
|
||||||
<%= link_to l(:button_edit), edit_query_path(@query), :class => 'icon icon-edit' %>
|
|
||||||
<%= delete_link query_path(@query) %>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<% html_title(@query.new_record? ? l(:label_issue_plural) : @query.name) %>
|
|
||||||
<div style="clear:right; ">
|
|
||||||
<%= form_tag({:controller => 'issues', :action => 'index', :project_id => @project}, :method => :get, :id => 'query_form', :class => 'query_form') do %>
|
|
||||||
<%= hidden_field_tag 'set_filter', '1' %>
|
|
||||||
|
|
||||||
<div id="custom_query" class="custom_query" style="display: <%= !params[:utf8].blank? ? 'block' : 'none' %>;">
|
|
||||||
<span>---<%= l :label_query_new %>---</span>
|
|
||||||
|
|
||||||
<div id="query_form_content" class="hide-when-print">
|
|
||||||
<fieldset id="filters" class="collapsible <%= @query.new_record? ? "" : "collapsed" %>">
|
|
||||||
<legend onclick="toggleFieldset(this);">
|
|
||||||
<%= l(:label_issue_query_condition) %>
|
|
||||||
</legend>
|
|
||||||
<div style="<%= @query.new_record? ? "" : "display: none;" %>">
|
|
||||||
<%= render :partial => 'queries/filters', :locals => {:query => @query} %>
|
|
||||||
</div>
|
|
||||||
</fieldset>
|
|
||||||
<!--
|
|
||||||
<fieldset class="collapsible collapsed">
|
|
||||||
<legend onclick="toggleFieldset(this);">
|
|
||||||
<%= l(:label_options) %>
|
|
||||||
</legend>
|
|
||||||
<div style="display: none;">
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td><%= l(:field_column_names) %></td>
|
|
||||||
<td><%= render_query_columns_selection(@query) %></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><label for='group_by'><%= l(:field_group_by) %></label></td>
|
|
||||||
<td><%= select_tag('group_by', options_for_select([[]] + @query.groupable_columns.collect { |c| [c.caption, c.name.to_s] }, @query.group_by)) %></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><%= l(:button_show) %></td>
|
|
||||||
<td><%= available_block_columns_tags(@query) %></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</fieldset>
|
|
||||||
-->
|
|
||||||
<div class="buttons hide-when-print">
|
|
||||||
<%= link_to_function l(:label_issue_query), 'submit_query_form("query_form")', :class => 'icon icon-checked' %>
|
|
||||||
<%= link_to l(:label_issue_cancel_query), {:set_filter => 1, :project_id => @project}, :class => 'icon icon-reload' %>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<%= error_messages_for 'query' %>
|
|
||||||
|
|
||||||
<% if @query.valid? %>
|
|
||||||
<% if @issues.empty? %>
|
|
||||||
<p class="nodata">
|
|
||||||
<%= l(:label_no_data) %>
|
|
||||||
</p>
|
|
||||||
<% else %>
|
|
||||||
<%= render :partial => 'issues/list', :locals => {:issues => @issues, :query => @query} %>
|
|
||||||
<div class="pagination">
|
|
||||||
<ul><%= pagination_links_full @issue_pages, @issue_count %></ul>
|
|
||||||
</div>
|
|
||||||
<% end %>
|
|
||||||
<div style="float: right; padding-top: 30px">
|
|
||||||
<% other_formats_links do |f| %>
|
|
||||||
<%= f.link_to 'Atom', :url => params.merge(:key => User.current.rss_key) %>
|
|
||||||
<%= f.link_to 'CSV', :url => params, :onclick => "showModal('csv-export-options', '330px'); return false;" %>
|
|
||||||
<%= f.link_to 'PDF', :url => params %>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<div id="csv-export-options" style="display:none;">
|
|
||||||
<h3 class="title"><%= l(:label_export_options, :export_format => 'CSV') %></h3>
|
|
||||||
<%= form_tag(params.merge({:format => 'csv', :page => nil}), :method => :get, :id => 'csv-export-form') do %>
|
|
||||||
<p>
|
|
||||||
<label>
|
|
||||||
<%= radio_button_tag 'columns', 'all' %>
|
|
||||||
<%= l(:description_all_columns) %>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label>
|
|
||||||
<%= check_box_tag 'description', '1', @query.has_column?(:description) %>
|
|
||||||
<%= l(:field_description) %>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p class="buttons">
|
|
||||||
<%= submit_tag l(:button_export), :name => nil, :onclick => "hideModal(this);" %>
|
|
||||||
<%= submit_tag l(:button_cancel), :name => nil, :onclick => "hideModal(this);", :type => 'button' %>
|
|
||||||
</p>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= call_hook(:view_issues_index_bottom, {:issues => @issues, :project => @project, :query => @query}) %>
|
|
||||||
|
|
||||||
<% content_for :sidebar do %>
|
|
||||||
<%= render :partial => 'issues/sidebar' %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<% content_for :header_tags do %>
|
|
||||||
<%= auto_discovery_link_tag(:atom,
|
|
||||||
{:query_id => @query, :format => 'atom',
|
|
||||||
:page => nil, :key => User.current.rss_key},
|
|
||||||
:title => l(:label_issue_plural)) %>
|
|
||||||
<%= auto_discovery_link_tag(:atom,
|
|
||||||
{:controller => 'journals', :action => 'index',
|
|
||||||
:query_id => @query, :format => 'atom',
|
|
||||||
:page => nil, :key => User.current.rss_key},
|
|
||||||
:title => l(:label_changes_details)) %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= context_menu issues_context_menu_path %>
|
|
|
@ -1 +1,139 @@
|
||||||
<%= render :partial => 'issues/newissue_index' %>
|
<div class="project_r_h">
|
||||||
|
<h2 class="project_h2">问题跟踪</h2>
|
||||||
|
</div>
|
||||||
|
<div class="problem_top">
|
||||||
|
<% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
|
||||||
|
<span>
|
||||||
|
<% if User.current.member_of?(@project) %>
|
||||||
|
<%= link_to l(:label_issue_new), {:controller => 'issues', :action => 'new', :copy_from => nil}, :param => :project_id, :caption => :label_issue_new,
|
||||||
|
:html => {:accesskey => Redmine::AccessKeys.key_for(:new_issue)}, :class => 'icon icon-add' %>
|
||||||
|
<% end %>
|
||||||
|
<%= link_to l(:label_query), '#', :class => 'icon icon-help',
|
||||||
|
:onclick => '$("#custom_query").slideToggle(400); ' if true || User.current.logged? %>
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
|
<span class="problem_p fr">问题总数:<span><%= @project.issues.count %></span> 未解决:<span><%= @project.issues.where('status_id in (1,2,4,6)').count %></span></span>
|
||||||
|
</div>
|
||||||
|
<div class="contextual">
|
||||||
|
<% if !@query.new_record? && @query.editable_by?(User.current) %>
|
||||||
|
<%= link_to l(:button_edit), edit_query_path(@query), :class => 'icon icon-edit' %>
|
||||||
|
<%= delete_link query_path(@query) %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% html_title(@query.new_record? ? l(:label_issue_plural) : @query.name) %>
|
||||||
|
<div style="clear:right; ">
|
||||||
|
<%= form_tag({:controller => 'issues', :action => 'index', :project_id => @project}, :method => :get, :id => 'query_form', :class => 'query_form') do %>
|
||||||
|
<%= hidden_field_tag 'set_filter', '1' %>
|
||||||
|
|
||||||
|
<div id="custom_query" class="custom_query" style="display: <%= !params[:utf8].blank? ? 'block' : 'none' %>;">
|
||||||
|
<span>---<%= l :label_query_new %>---</span>
|
||||||
|
|
||||||
|
<div id="query_form_content" class="hide-when-print">
|
||||||
|
<fieldset id="filters" class="collapsible <%= @query.new_record? ? "" : "collapsed" %>">
|
||||||
|
<legend onclick="toggleFieldset(this);">
|
||||||
|
<%= l(:label_issue_query_condition) %>
|
||||||
|
</legend>
|
||||||
|
<div style="<%= @query.new_record? ? "" : "display: none;" %>">
|
||||||
|
<%= render :partial => 'queries/filters', :locals => {:query => @query} %>
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
<!--
|
||||||
|
<fieldset class="collapsible collapsed">
|
||||||
|
<legend onclick="toggleFieldset(this);">
|
||||||
|
<%= l(:label_options) %>
|
||||||
|
</legend>
|
||||||
|
<div style="display: none;">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td><%= l(:field_column_names) %></td>
|
||||||
|
<td><%= render_query_columns_selection(@query) %></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><label for='group_by'><%= l(:field_group_by) %></label></td>
|
||||||
|
<td><%= select_tag('group_by', options_for_select([[]] + @query.groupable_columns.collect { |c| [c.caption, c.name.to_s] }, @query.group_by)) %></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><%= l(:button_show) %></td>
|
||||||
|
<td><%= available_block_columns_tags(@query) %></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
-->
|
||||||
|
<div class="buttons hide-when-print">
|
||||||
|
<%= link_to_function l(:label_issue_query), 'submit_query_form("query_form")', :class => 'icon icon-checked' %>
|
||||||
|
<%= link_to l(:label_issue_cancel_query), {:set_filter => 1, :project_id => @project}, :class => 'icon icon-reload' %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<%= error_messages_for 'query' %>
|
||||||
|
|
||||||
|
<% if @query.valid? %>
|
||||||
|
<% if @issues.empty? %>
|
||||||
|
<p class="nodata">
|
||||||
|
<%= l(:label_no_data) %>
|
||||||
|
</p>
|
||||||
|
<% else %>
|
||||||
|
<%= render :partial => 'issues/list', :locals => {:issues => @issues, :query => @query} %>
|
||||||
|
<div class="pagination">
|
||||||
|
<ul><%= pagination_links_full @issue_pages, @issue_count %></ul>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<div style="float: right; padding-top: 30px">
|
||||||
|
<% other_formats_links do |f| %>
|
||||||
|
<%= f.link_to 'Atom', :url => params.merge(:key => User.current.rss_key) %>
|
||||||
|
<%= f.link_to 'CSV', :url => params, :onclick => "showModal('csv-export-options', '330px'); return false;" %>
|
||||||
|
<%= f.link_to 'PDF', :url => params %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div id="csv-export-options" style="display:none;">
|
||||||
|
<h3 class="title"><%= l(:label_export_options, :export_format => 'CSV') %></h3>
|
||||||
|
<%= form_tag(params.merge({:format => 'csv', :page => nil}), :method => :get, :id => 'csv-export-form') do %>
|
||||||
|
<p>
|
||||||
|
<label>
|
||||||
|
<%= radio_button_tag 'columns', 'all' %>
|
||||||
|
<%= l(:description_all_columns) %>
|
||||||
|
</label>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<label>
|
||||||
|
<%= check_box_tag 'description', '1', @query.has_column?(:description) %>
|
||||||
|
<%= l(:field_description) %>
|
||||||
|
</label>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="buttons">
|
||||||
|
<%= submit_tag l(:button_export), :name => nil, :onclick => "hideModal(this);" %>
|
||||||
|
<%= submit_tag l(:button_cancel), :name => nil, :onclick => "hideModal(this);", :type => 'button' %>
|
||||||
|
</p>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<%= call_hook(:view_issues_index_bottom, {:issues => @issues, :project => @project, :query => @query}) %>
|
||||||
|
|
||||||
|
<% content_for :sidebar do %>
|
||||||
|
<%= render :partial => 'issues/sidebar' %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<% content_for :header_tags do %>
|
||||||
|
<%= auto_discovery_link_tag(:atom,
|
||||||
|
{:query_id => @query, :format => 'atom',
|
||||||
|
:page => nil, :key => User.current.rss_key},
|
||||||
|
:title => l(:label_issue_plural)) %>
|
||||||
|
<%= auto_discovery_link_tag(:atom,
|
||||||
|
{:controller => 'journals', :action => 'index',
|
||||||
|
:query_id => @query, :format => 'atom',
|
||||||
|
:page => nil, :key => User.current.rss_key},
|
||||||
|
:title => l(:label_changes_details)) %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<%= context_menu issues_context_menu_path %>
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
$('#content').html('<%= escape_javascript(render :partial => 'issues/newissue_index') %>');
|
|
|
@ -77,7 +77,7 @@ a:hover.subnav_green{ background:#14ad5a;}
|
||||||
/*右侧内容--动态*/
|
/*右侧内容--动态*/
|
||||||
/*右侧内容--动态*/
|
/*右侧内容--动态*/
|
||||||
.project_r_h{height:40px; background:#eaeaea; margin-bottom:10px;}
|
.project_r_h{height:40px; background:#eaeaea; margin-bottom:10px;}
|
||||||
.project_h2{ background:#64bdd9; color:#fff; height:33px; width:90px; text-align:center; font-weight:normal; padding-top:7px; font-size:16px;}
|
.project_h2{ background:#64bdd9; color:#fff; height:29px; width:90px; text-align:center; font-weight:normal; padding-top:10px; font-size:16px;padding-left:10px;}
|
||||||
.project_r_box{ border:1px solid #e2e1e1; width:670px; margin-top:10px;}
|
.project_r_box{ border:1px solid #e2e1e1; width:670px; margin-top:10px;}
|
||||||
.project_h3 { color:#646464; font-size:14px; padding:0 10px; border-bottom:1px solid #e2e1e1;}
|
.project_h3 { color:#646464; font-size:14px; padding:0 10px; border-bottom:1px solid #e2e1e1;}
|
||||||
a.more{ float:right; font-size:12px; font-weight:normal; color:#a9a9a9; margin-top:3px;}
|
a.more{ float:right; font-size:12px; font-weight:normal; color:#a9a9a9; margin-top:3px;}
|
||||||
|
|
Loading…
Reference in New Issue