diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 191606afb..a1e547a84 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -708,7 +708,7 @@ class CoursesController < ApplicationController #"show_course_journals_for_messages" => true, "show_bids" => true, "show_homeworks" => true, - #"show_polls" => true + "show_polls" => true } @date_to ||= Date.today + 1 @date_from = (@date_to - @days) > @course.created_at.to_date ? (@date_to - @days) : @course.created_at.to_date diff --git a/app/controllers/files_controller.rb b/app/controllers/files_controller.rb index 8b1c8ba32..69e7105aa 100644 --- a/app/controllers/files_controller.rb +++ b/app/controllers/files_controller.rb @@ -145,10 +145,14 @@ class FilesController < ApplicationController ids += version.id.to_s end end - resultSet = Attachment.where("((attachments.container_type = 'Project' And attachments.container_id = '#{project.id}') OR (container_type = 'Version' AND container_id IN (#{ids}))) AND filename LIKE :like ", like: "%#{keywords}%"). - reorder(sort) - #resultSet = Attachment.find_by_sql("SELECT `attachments`.* FROM `attachments` LEFT OUTER JOIN `homework_attaches` ON `attachments`.container_type = 'HomeworkAttach' AND `attachments`.container_id = `homework_attaches`.id LEFT OUTER JOIN `homework_for_courses` ON `homework_attaches`.bid_id = `homework_for_courses`.bid_id LEFT OUTER JOIN `homework_for_courses` AS H_C ON `attachments`.container_type = 'Bid' AND `attachments`.container_id = H_C.bid_id WHERE (`homework_for_courses`.course_id = 117 OR H_C.course_id = 117 OR (`attachments`.container_type = 'Course' AND `attachments`.container_id = 117)) AND `attachments`.filename LIKE '%#{keywords}%'").reorder("created_on DESC") - end + if ids.blank? + resultSet = Attachment.where("attachments.container_type = 'Project' And attachments.container_id = '#{project.id}' AND filename LIKE :like ", like: "%#{keywords}%"). + reorder(sort) + else + resultSet = Attachment.where("((attachments.container_type = 'Project' And attachments.container_id = '#{project.id}') OR (container_type = 'Version' AND container_id IN (#{ids}))) AND filename LIKE :like ", like: "%#{keywords}%"). + reorder(sort) + end + end def find_public_attache keywords,sort = "" # StoresController#search 将每条文件都查出来,再次进行判断过滤。---> resultSet.to_a.map diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index 790718e5d..80be8c5d5 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -95,6 +95,7 @@ class IssuesController < ApplicationController format.api { Issue.load_visible_relations(@issues) if include_in_api_response?('relations') } + # format.json { render :json => @issues.map { |issue| issue.to_json}} #:json => @issues.map { |issue| issue.to_json} format.atom { render_feed(@issues, :title => "#{@project || Setting.app_title}: #{l(:label_issue_plural)}") } format.csv { send_data(query_to_csv(@issues, @query, params), :type => 'text/csv; header=present', :filename => 'issues.csv') } format.pdf { send_data(issues_to_pdf(@issues, @project, @query), :type => 'application/pdf', :filename => 'issues.pdf') } diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index b897d039a..32ec3dad2 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -29,7 +29,7 @@ class PollController < ApplicationController end #已提交问卷的用户不能再访问该界面 if has_commit_poll?(@poll.id,User.current.id) && (!User.current.admin?) - render_403 + redirect_to poll_index_url(:polls_type => "Course", :polls_group_id => @course.id) else @can_edit_poll = (!has_commit_poll?(@poll.id,User.current.id)) || User.current.admin? @percent = get_percent(@poll,User.current) diff --git a/app/controllers/versions_controller.rb b/app/controllers/versions_controller.rb index fe7bcf0be..defc36868 100644 --- a/app/controllers/versions_controller.rb +++ b/app/controllers/versions_controller.rb @@ -85,13 +85,14 @@ class VersionsController < ApplicationController end def new - @version = @project.versions.build - @version.safe_attributes = params[:version] - - respond_to do |format| - format.html - format.js - end + # @version = @project.versions.build + # @version.safe_attributes = params[:version] + # + # respond_to do |format| + # format.html + # format.js + # end + redirect_to settings_project_url(@project, :tab => 'versions') end def create diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 0163c8dd8..69a3a8398 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -51,11 +51,11 @@ module ApplicationHelper def get_project_type_css(value) if value == 1 - "pr_friend" - elsif value == 1 + "pr_kafa" + elsif value == 2 "pr_keyan" else - "pr_kafa" + "pr_friend" end end diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb index 2e06e3a43..801d98b0b 100644 --- a/app/helpers/courses_helper.rb +++ b/app/helpers/courses_helper.rb @@ -691,9 +691,11 @@ module CoursesHelper #end #poll_count - #Poll.where(polls_group_id: @course_ids, polls_type: Course, polls_status: 2||3).where("published_at>?",date_from).each do |poll| - # activities[poll.polls_group_id]+=1 - #end + # 动态目前只统计发布的问卷,关闭的问卷不在动态内显示 + # Poll.where(polls_group_id: @course_ids, polls_type: Course, polls_status: 2||3).where("published_at>?",date_from).each do |poll| + Poll.where(polls_group_id: @course_ids, polls_type: Course, polls_status: 2||3).where("published_at>?",date_from).each do |poll| + activities[poll.polls_group_id]+=1 + end #end diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb index 9c4fab9de..b72a191db 100644 --- a/app/helpers/issues_helper.rb +++ b/app/helpers/issues_helper.rb @@ -340,17 +340,18 @@ module IssuesHelper if detail.property == 'attachment' && !value.blank? && atta = Attachment.find_by_id(detail.prop_key) # Link to the attachment if it has not been removed if options[:token].nil? - value = link_to_attachment(atta, :download => true, :only_path => options[:only_path], :class=> "info_foot_num c_blue") + value = atta.filename else - value = link_to_attachment(atta, :download => true, :only_path => options[:only_path], :token => options[:token], :class=> "info_foot_num c_blue") - end - if options[:only_path] != false && atta.is_text? - value += link_to( - image_tag('magnifier.png'), - :controller => 'attachments', :action => 'show', - :id => atta, :filename => atta.filename - ) + value = atta.filename end + # 放大镜搜索功能 + # if options[:only_path] != false && atta.is_text? + # value += link_to( + # image_tag('magnifier.png'), + # :controller => 'attachments', :action => 'show', + # :id => atta, :filename => atta.filename + # ) + # end else value = content_tag("i", h(value)) if value end diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb index d8078aeb7..508e58ba3 100644 --- a/app/helpers/projects_helper.rb +++ b/app/helpers/projects_helper.rb @@ -392,4 +392,19 @@ module ProjectsHelper type end + #显示项目配置菜单 + def show_project_memu user + if user.allowed_to?(:edit_project, @project) + result = "edit_project" + elsif user.allowed_to?(:select_project_modules, @project) + result = "select_project_modules" + elsif user.allowed_to?(:manage_members, @project) + result = "manage_members" + elsif user.allowed_to?(:manage_versions, @project) + result = "manage_versions" + elsif user.allowed_to?(:manage_repository, @project) + result = "manage_repository" + end + result + end end diff --git a/app/helpers/queries_helper.rb b/app/helpers/queries_helper.rb index f36d2ea94..e1d8c3e12 100644 --- a/app/helpers/queries_helper.rb +++ b/app/helpers/queries_helper.rb @@ -255,8 +255,19 @@ module QueriesHelper # Give it a name, required to be valid @query = IssueQuery.new(:name => "_") @query.project = @project + params[:f] = %w(subject status_id priority_id author_id assigned_to_id) unless params[:status_id].nil? + params[:op] = {'subject' => "~" , + 'status_id' => ( params[:status_id] == '0' ? "!":"=" ), + 'priority_id' => ( params[:priority_id] == '0' ? "!":"=" ), + 'author_id' => ( params[:author_id] == '0' ? "!":"=" ), + 'assigned_to_id' => ( params[:assigned_to_id] == '0' ? "!":"=" )} unless params[:status_id].nil? + params[:v] = {'subject' => [params[:subject]], + 'status_id' => [params[:status_id]], + 'priority_id' => [params[:priority_id]], + 'author_id' => [params[:author_id]], + 'assigned_to_id' => [params[:assigned_to_id]]} unless params[:status_id].nil? @query.build_from_params(params) - session[:query] = {:project_id => @query.project_id, :filters => @query.filters, :group_by => @query.group_by, :column_names => @query.column_names} + #session[:query] = {:project_id => @query.project_id, :filters => @query.filters, :group_by => @query.group_by, :column_names => @query.column_names} else # retrieve from session @query = IssueQuery.find_by_id(session[:query][:id]) if session[:query][:id] diff --git a/app/models/poll.rb b/app/models/poll.rb index 943c08b51..64e9df79a 100644 --- a/app/models/poll.rb +++ b/app/models/poll.rb @@ -7,22 +7,24 @@ class Poll < ActiveRecord::Base has_many :poll_users, :dependent => :destroy has_many :users, :through => :poll_users #该文件被哪些用户提交答案过 # 添加课程的poll动态 -# has_many :acts, :class_name => 'Activity', :as => :act, :dependent => :destroy -# after_create :act_as_activity + has_many :acts, :class_name => 'Activity', :as => :act, :dependent => :destroy + after_create :act_as_activity -# acts_as_event :title => Proc.new {|o| "#{l(:label_my_message)} ##{o.id}: #{o.name}" }, -# :description => :description, -# :author => :author, -# :url => Proc.new {|o| {:controller => 'poll', :action => 'show', :id => o.id}} + acts_as_event :title => Proc.new {|o| "#{l(:label_course_poll)}: #{o.polls_name}" }, + :description => :polls_description, + :datetime => :published_at, + :author => :user, + :url => Proc.new {|o| {:controller => 'poll', :action => 'show', :id => o.id}} -# acts_as_activity_provider :type => 'polls', -# :permission => :view_course_polls, - #:find_options => {:include => [:course, :author]}, - #:timestamp => "#{self.table_name}.published_at", -# :author_key => :author_id + acts_as_activity_provider :type => 'polls', + #:permission => :view_course_polls, + :find_options => {:select => "#{Poll.table_name}.*", + :joins => "LEFT JOIN #{Course.table_name} ON ( #{Poll.table_name}.polls_type='Course' AND #{Poll.table_name}.polls_status= 2 AND #{Poll.table_name}.polls_group_id = #{Course.table_name}.id )"}, + :timestamp => "#{self.table_name}.published_at", + :author_key => :user_id -# def act_as_activity -# self.acts << Activity.new(:user_id => self.user_id) -# end + def act_as_activity + self.acts << Activity.new(:user_id => self.user_id) + end end diff --git a/app/views/boards/_project_show.html.erb b/app/views/boards/_project_show.html.erb index 43cea4b4f..31748014f 100644 --- a/app/views/boards/_project_show.html.erb +++ b/app/views/boards/_project_show.html.erb @@ -19,6 +19,7 @@
<%= l(:project_module_boards_post) %>
<%= render :partial => 'messages/form_project', :locals => {:f => f} %><%= l(:button_submit)%> diff --git a/app/views/files/_project_file_new.html.erb b/app/views/files/_project_file_new.html.erb index ad489742e..f71783ba2 100644 --- a/app/views/files/_project_file_new.html.erb +++ b/app/views/files/_project_file_new.html.erb @@ -1,8 +1,3 @@ - -
<%= l(:label_issues_sum) %>:<%= @project.issues.count %> + <%= l(:lable_issues_undo) %>:<%= @project.issues.where('status_id in (1,2,4,6)').count %> +
+ + <% end %> - <%= l(:label_issues_sum) %>:<%= @project.issues.count %> <%= l(:lable_issues_undo) %>:<%= @project.issues.where('status_id in (1,2,4,6)').count %><%= l(:label_message_reply) %>
<%= l :label_create_time %> :<%= format_time(e.project.created_on) %>
+
<%= link_to_if action_name != 'changes', l(:label_history), {:action => 'changes', :id => @project, :repository_id => @repository.identifier_param, :path => to_path_param(@path), :rev => @rev } %> | <% if @repository.supports_cat? %> <%= link_to_if action_name != 'entry', l(:button_view), {:action => 'entry', :id => @project, :repository_id => @repository.identifier_param, :path => to_path_param(@path), :rev => @rev } %> | diff --git a/app/views/repositories/_revisions.html.erb b/app/views/repositories/_revisions.html.erb index 844c06500..a0a960b6c 100644 --- a/app/views/repositories/_revisions.html.erb +++ b/app/views/repositories/_revisions.html.erb @@ -47,5 +47,8 @@ end %> <% end %> -<%= submit_tag(l(:label_view_diff), :name => nil) if show_diff %> +
+ <%= submit_tag(l(:label_view_diff), :name => nil, :class=>"c_blue") if show_diff %> +
+ <% end %> diff --git a/app/views/repositories/changes.html.erb b/app/views/repositories/changes.html.erb index 9d7c4aa30..302c839ba 100644 --- a/app/views/repositories/changes.html.erb +++ b/app/views/repositories/changes.html.erb @@ -10,9 +10,10 @@ <%= render_properties(@properties) %> ++
<%= l(:label_view_diff) %>: diff --git a/app/views/versions/index.html.erb b/app/views/versions/index.html.erb index be4fb27ef..0b71fa5e2 100644 --- a/app/views/versions/index.html.erb +++ b/app/views/versions/index.html.erb @@ -1,9 +1,6 @@
- <%= l(:field_estimated_hours) %>
+ <%= l(:field_estimated_hours) %>: |
<%= html_hours(l_hours(@version.estimated_hours)) %> @@ -40,7 +40,7 @@ <% if User.current.allowed_to?(:view_time_entries, @project) %> |
---|---|
- <%= l(:label_spent_time) %>
+ <%= l(:label_spent_time) %>: |
<%= html_hours(l_hours(@version.spent_hours)) %> diff --git a/config/locales/courses/zh.yml b/config/locales/courses/zh.yml index e0a39f51d..0f6c1fa01 100644 --- a/config/locales/courses/zh.yml +++ b/config/locales/courses/zh.yml @@ -90,4 +90,6 @@ zh: #setting label_user_name: "用户名称" - #setting end \ No newline at end of file + #setting end + + label_course_poll: 课程问卷 \ No newline at end of file diff --git a/config/locales/projects/zh.yml b/config/locales/projects/zh.yml index 3c4d4a97c..49fe0e19a 100644 --- a/config/locales/projects/zh.yml +++ b/config/locales/projects/zh.yml @@ -55,9 +55,9 @@ zh: label_apply_project_waiting: 已处理申请,请等待管理员审核 label_unapply_project: 取消申请 lable_sure_exit_project: 是否确认退出该项目 - label_friend_organization: 朋友圈 - label_research_group: 科研组 - label_development_team: 开发组 + label_friend_organization: 圈子模式 + label_research_group: 研讨模式 + label_development_team: 开发模式 label_member: 成员 project_module_attachments: 资源 diff --git a/lib/redmine.rb b/lib/redmine.rb index ad73c2db1..ed96e01ff 100644 --- a/lib/redmine.rb +++ b/lib/redmine.rb @@ -118,7 +118,7 @@ Redmine::AccessControl.map do |map| map.permission :projects_attachments_download,{:attachments => :download},:belong_to_project => true map.permission :course_attachments_download,{:attachments => :download},:belong_to_course => true map.permission :contest_attachments_download,{:attachments => :download},:belong_to_contest => true - + map.permission :view_polls, {}, :public => true, :read => true map.permission :view_homeworks, {}, :public => true, :read => true map.course_module :files do |map| @@ -487,7 +487,7 @@ Redmine::Activity.map do |activity| activity.register :course_messages, :default => false, :class_name => 'Message' activity.register :homeworks, :class_name => 'Bid' -# activity.register :polls, :class_name => 'Poll' + activity.register :polls, :class_name => 'Poll' end Redmine::Search.map do |search| diff --git a/public/javascripts/project.js b/public/javascripts/project.js index b5f769723..0aef464f8 100644 --- a/public/javascripts/project.js +++ b/public/javascripts/project.js @@ -47,14 +47,14 @@ function show_more_msg() { var information = $("#expend_more_information"); var arrow = $("#arrow"); var val = information.attr("value"); - if (val == "展开更多信息") { + if (val == "show_more") { $("#expend_more_information").text("收起描述信息"); - information.attr("value", "收起描述信息"); + information.attr("value", "hide_more"); arrow.attr("src", "/images/jiantouup.jpg") } else { $("#expend_more_information").text("展开更多信息"); - information.attr("value", "展开更多信息"); + information.attr("value", "show_more"); arrow.attr("src", "/images/jiantou.jpg") } } @@ -90,7 +90,7 @@ function regexContent() { return false; } -// 项目编辑和提交 +// 项目讨论区编辑和提交 function submitProjectsBoard() { if (regexSubject() && regexContent()) { $("#message-form").submit(); @@ -161,7 +161,7 @@ function course_setting(id) { $('#tbc_0' + (3 - id)).removeClass().addClass("undis"); } -//项目类型 +//项目类型(朋友圈、开发组、科研组) function show_window() { $('#light').css('display', 'block'); $('#fade').css('display', 'block'); @@ -189,6 +189,32 @@ function project_setting(n) { } } } + +//配置-验证项目名称 +function regex_project_name() +{ + var name = $.trim($("#project_name").val()); + if(name.length == 0) + { + $("#project_name_notice").show(); + return false; + } + else + { + $("#project_name_notice").hide(); + return true; + } +} + +//配置-信息提交 +function submit_edit_project(id) +{ + if(regex_project_name()) + { + $("#edit_project_"+id).submit(); + } +} + //配置--成员---申请列表--拒绝 function refusal_applied_member() { $('#new_membership').append(""); diff --git a/public/stylesheets/pleft.css b/public/stylesheets/pleft.css index cc7e18465..baca16c9c 100644 --- a/public/stylesheets/pleft.css +++ b/public/stylesheets/pleft.css @@ -24,7 +24,7 @@ a:hover.pr_join_a{ background:#41a8c8;} .pr_info_score{ font-size:14px; color:#3e4040; } .pr_info_score a{ color:#ff7143;} .pr_info_score a:hover{ color:#64bdd9;} -.img_private{ background:url(../images/new_project/img_project.png) 0 0 no-repeat; width:33px; height:16px; color:#fff; font-size:12px; padding-left:7px; } +.img_private{ background:url(../images/new_project/img_project.png) 0 0 no-repeat; width:33px; height:16px; color:#fff; font-size:12px; padding-left:7px;white-space:nowrap;} .info_foot_num{ color:#3ca5c6; } .pr_info_foot{ color:#7f7f7f; margin-top:5px; } .info_foot_num:hover{ color:#2390b2;} @@ -50,7 +50,7 @@ a:hover.subnav_green{ background:#14ad5a;} .project_intro{ width:220px; padding:10px; background:#fff; margin-top:10px; padding-top:5px; color:#6d6d6d; line-height:1.9;} .course_description{max-height: 112px;overflow:hidden; word-break: break-all;word-wrap: break-word;} .course_description_none{max-height: none;} -.lg-foot{ border:1px solid #e8eef2; color: #929598; text-align:center; width:220px; height:23px; cursor:pointer;} +.lg-foot{ border:1px solid #e8eef2; color: #929598; text-align:center; width:220px; height:23px; cursor:pointer;display: none;} .lg-foot:hover{ color:#787b7e; border:1px solid #d4d4d4;} /****标签(和资源库的tag样式一致)***/ .project_Label{ width:220px; padding:10px; background:#fff; margin-top:10px; padding-top:5px; margin-bottom:10px;} diff --git a/public/stylesheets/project.css b/public/stylesheets/project.css index b5244b73c..2f6a4babe 100644 --- a/public/stylesheets/project.css +++ b/public/stylesheets/project.css @@ -72,7 +72,10 @@ a:hover.problem_pic{border:1px solid #64bdd9;} a.problem_name{ color:#ff5722; } a:hover.problem_name{ color:#d33503;} a.problem_tit{ color:#0781b4; max-width:430px; font-weight:bold; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} -a.problem_tit02{ color:#0781b4; font-weight:bold;width:400px; } +a.problem_tit02{ color:#0781b4; font-weight:bold;max-width:400px;} +.problem_tit_div{ color:#0781b4; font-weight:bold;width:400px; } +a.problem_tit_a{ color:#0781b4; } +.problem_tit_a:hover{ color:#09658c; } a:hover.problem_tit,a:hover.problem_tit02{ color:#09658c; } .problem_main{ border-bottom:1px dashed #d4d4d4; padding-bottom:10px; margin-bottom:10px;} a.pro_mes{ float:left; color:#a0a0a0; display:block; width:100px; height:20px; } @@ -470,16 +473,8 @@ img.ui-datepicker-trigger { .wiki_page_con{ border-bottom:1px dashed #CCC; margin-bottom:10px; padding-bottom:10px;} #wiki_new_box{ display:none;} /*wiki显示附加*/ -.wiki-page { - font-size: 14px; - color: #09658C !important; - font-weight: bold; - width: 630px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - margin-bottom: 10px; -} +.wiki-page {font-size: 14px;color: #09658C !important; font-weight: bold;width: 630px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;margin-bottom: 10px;} +.wiki_con_tit{font-size: 14px;color: #09658C !important; font-weight: bold;width: 630px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;margin-bottom: 10px;} /*.author{*/ /*color: #FF5722;*/ /*margin-left:20px;*/ @@ -598,3 +593,94 @@ div.thumbnails div {background:#fff;display:inline-block;margin-right:2px;} #cboxNext{position:absolute; bottom:0px; left:63px; color:#444;} #cboxClose{position:absolute; bottom:0; right:0; display:block; color:#444;} + +/*****项目版本库修订 Tables *****/ + +table.list{ border:none; border-collapse: collapse; width: 100%; margin-bottom: 4px; } +table.list th { background-color:#EEEEEE; padding: 4px; white-space:pre-line; } +table.list td { vertical-align: top; padding-right:10px; } +table.list td.id { width: 2%; text-align: center;} +table.list td.checkbox { width: 15px; padding: 2px 0 0 0; } +table.list td.checkbox input {padding:0px;} +table.list td.buttons { width: 15%; white-space:nowrap; text-align: right; } +table.list td.buttons a { padding-right: 0.6em; } +table.list caption { text-align: left; padding: 0.5em 0.5em 0.5em 0; } + +table.list tbody td, table.list tbody tr td, table.list tbody tr td.checkbox { + border-bottom: solid 1px #ddd; + font-size: 11px; + padding: 4px 10px 4px 3px; +} + + +table.list thead th +{ + border:none; + border-bottom:1px solid #999; + font-size:12px;/*by young*/ + font-weight:400; + padding:0 3px 3px; + text-transform:uppercase +} + +table.list th +{ + background-color:#fff} + +table.list thead th +{ + border:none; + border-bottom:1px solid #999; + font-size:12px;/*by young*/ + font-weight:400; + padding:0 3px 3px; + text-transform:uppercase +} + +tr.changeset { height: 20px } +tr.changeset ul, ol { margin-top: 0px; margin-bottom: 0px; } +tr.changeset td.revision_graph { width: 15%; background-color: #fffffb; } +tr.changeset td.author { text-align: center; width: 15%; white-space:nowrap;} +tr.changeset td.committed_on { text-align: center; width: 15%; white-space:nowrap;} + +div.changeset { padding: 4px;} +div.changeset { border-bottom: 1px solid #ddd; } + +.odd {background-color:#f6f7f8;} +.even {background-color: #fff;} + + +/*****项目版本库文件 Tables *****/ +.autoscroll {overflow-x: auto; padding:1px; margin-bottom: 1.2em;} +tr.entry { border: 1px solid #f8f8f8; } +tr.entry td { white-space: nowrap; } +tr.entry td.filename { width: 30%; } +tr.entry td.filename_no_report { width: 70%; } +tr.entry td.size { text-align: right; font-size: 90%; } +tr.entry td.revision, tr.entry td.author { text-align: center; } +tr.entry td.age { text-align: right; } +tr.entry.file td.filename a { margin-center: 16px; } +tr.entry.file td.filename_no_report a { margin-left: 16px; } + +tr span.expander {background-image: url(../images/bullet_toggle_plus.png); padding-left: 8px; margin-left: 0; cursor: pointer;} +tr.open span.expander {background-image: url(../images/bullet_toggle_minus.png);} +.icon-folder { background-image: url(../images/folder.png); } +.open .icon-folder { background-image: url(../images/folder_open.png); } +.icon-file { background-image: url(../images/files/default.png); } +.icon-file.text-plain { background-image: url(../images/files/text.png); } +.icon-file.text-x-c { background-image: url(../images/files/c.png); } +.icon-file.text-x-csharp { background-image: url(../images/files/csharp.png); } +.icon-file.text-x-java { background-image: url(../images/files/java.png); } +.icon-file.text-x-javascript { background-image: url(../images/files/js.png); } +.icon-file.text-x-php { background-image: url(../images/files/php.png); } +.icon-file.text-x-ruby { background-image: url(../images/files/ruby.png); } +.icon-file.text-xml { background-image: url(../images/files/xml.png); } +.icon-file.text-css { background-image: url(../images/files/css.png); } +.icon-file.text-html { background-image: url(../images/files/html.png); } +.icon-file.image-gif { background-image: url(../images/files/image.png); } +.icon-file.image-jpeg { background-image: url(../images/files/image.png); } +.icon-file.image-png { background-image: url(../images/files/image.png); } +.icon-file.image-tiff { background-image: url(../images/files/image.png); } +.icon-file.application-pdf { background-image: url(../images/files/pdf.png); } +.icon-file.application-zip { background-image: url(../images/files/zip.png); } +.icon-file.application-x-gzip { background-image: url(../images/files/zip.png); } diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css index b11e69521..2f45bbd69 100644 --- a/public/stylesheets/public.css +++ b/public/stylesheets/public.css @@ -74,9 +74,12 @@ h4{ font-size:14px; color:#3b3b3b;} .mt5{ margin-top:5px;} .mt8{ margin-top:8px;} .mt10{ margin-top:10px;} +.mt13{ margin-top:13px;} .mt43{ margin-top:43px;} +.mt40{ margin-top:40px;} .mb5{ margin-bottom:5px;} .mb10{ margin-bottom:10px;} +.mb13{ margin-bottom:13px;} .pl15{ padding-left:15px;} .w90{ width:90px;} .w210{ width:210px;} |