Merge branch 'szzh' of http://repository.trustie.net/xianbo/trustie2 into szzh
This commit is contained in:
commit
097489e594
|
@ -1,4 +1,4 @@
|
|||
<html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<title>
|
||||
|
@ -8,15 +8,15 @@ Client
|
|||
|
||||
<body>
|
||||
<hr />
|
||||
<h2>这是一张图片</h2>
|
||||
<h2>这是一张图片</h2>
|
||||
<p>photo<a href="http://10.0.47.15:3000/shares/new?access_token='2d3dda45dsd'&comment='verygood'&title=davide&share_type=1&url=http://www.baidu.com"> Share A </a></p>
|
||||
<hr />
|
||||
|
||||
<h2>这是一段视频</h2>
|
||||
<h2>这是一段视频</h2>
|
||||
<p>Text<a href="http://10.0.47.15:3000/shares/new?access_token=2d3dda45dsd&comment=verygood&title=kaka&share_type=2&url=http://www.sina.com"> Share B </a></p>
|
||||
<hr />
|
||||
|
||||
<h2>这是一篇文章</h2>
|
||||
<h2>这是一篇文章</h2>
|
||||
<p>Text<a href="http://10.0.47.15:3000/shares/new?access_token=2d3dda45dsd&comment=verygood&title=pepe&share_type=3&url=http://www.sina.com"> Share C </a></p>
|
||||
<hr />
|
||||
|
||||
|
|
|
@ -22,7 +22,6 @@ class AttachmentsController < ApplicationController
|
|||
before_filter :authorize_global, :only => :upload
|
||||
|
||||
before_filter :login_without_softapplication, only: [:download]
|
||||
|
||||
accept_api_auth :show, :download, :upload
|
||||
|
||||
def show
|
||||
|
@ -125,7 +124,7 @@ class AttachmentsController < ApplicationController
|
|||
end
|
||||
|
||||
respond_to do |format|
|
||||
format.html { redirect_to_referer_or project_path(@project) }
|
||||
format.html { redirect_to_referer_or forum_memo_path(@attachment.container.forum,@attachment.container) }
|
||||
format.js
|
||||
end
|
||||
end
|
||||
|
|
|
@ -26,6 +26,13 @@ class HomeworkAttachController < ApplicationController
|
|||
#删除留言
|
||||
def destroy
|
||||
@journal_destroyed = JournalsForMessage.delete_message(params[:object_id])
|
||||
#@homework = HomeworkAttach.find(params[:id])
|
||||
#@jours = @homework.journals_for_messages.order("created_on DESC")
|
||||
#@limit = 10
|
||||
#@feedback_count = @jours.count
|
||||
#@feedback_pages = Paginator.new @feedback_count, @limit, params['page']
|
||||
#@offset ||= @feedback_pages.offset
|
||||
#@jour = @jours[@offset, @limit]
|
||||
respond_to do |format|
|
||||
format.js
|
||||
end
|
||||
|
@ -36,11 +43,11 @@ class HomeworkAttachController < ApplicationController
|
|||
@homework = HomeworkAttach.find(params[:jour_id])
|
||||
@homework.addjours User.current.id, params[:new_form][:user_message],0
|
||||
@jours = @homework.journals_for_messages.order("created_on DESC")
|
||||
@limit = 10
|
||||
@feedback_count = @jours.count
|
||||
@feedback_pages = Paginator.new @feedback_count, @limit, params['page']
|
||||
@offset ||= @feedback_pages.offset
|
||||
@jour = @jours[@offset, @limit]
|
||||
#@limit = 10
|
||||
#@feedback_count = @jours.count
|
||||
#@feedback_pages = Paginator.new @feedback_count, @limit, params['page']
|
||||
#@offset ||= @feedback_pages.offset
|
||||
#@jour = @jours[@offset, @limit]
|
||||
respond_to do |format|
|
||||
format.js
|
||||
end
|
||||
|
@ -57,5 +64,27 @@ class HomeworkAttachController < ApplicationController
|
|||
#result = percent * 1.0 / stars_reates_count
|
||||
#result
|
||||
end
|
||||
|
||||
#添加回复
|
||||
def add_jour_reply
|
||||
parent_id = params[:reference_id]
|
||||
author_id = User.current.id
|
||||
reply_user_id = params[:reference_user_id]
|
||||
reply_id = params[:reference_message_id] # 暂时不实现
|
||||
content = params[:user_notes]
|
||||
options = {:user_id => author_id,
|
||||
:m_parent_id => parent_id,
|
||||
:m_reply_id => reply_id,
|
||||
:reply_id => reply_user_id,
|
||||
:notes => content,
|
||||
:is_readed => false}
|
||||
@jfm = JournalsForMessage.new(options)
|
||||
@jfm.save
|
||||
respond_to do |format|
|
||||
format.js{
|
||||
@save_succ = true if @jfm.errors.empty?
|
||||
}
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
class HomeworkUsersController < ApplicationController
|
||||
|
||||
end
|
|
@ -15,9 +15,8 @@
|
|||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
class ProjectsController < ApplicationController
|
||||
# if @project.project_type == 1
|
||||
# layout 'base_projects'# by young
|
||||
layout :select_project_layout
|
||||
|
||||
menu_item :overview
|
||||
menu_item :roadmap, :only => :roadmap
|
||||
menu_item :settings, :only => :settings
|
||||
|
@ -32,18 +31,7 @@ class ProjectsController < ApplicationController
|
|||
menu_item :feedback, :only => :feedback
|
||||
menu_item l(:label_course_file), :only => :index
|
||||
menu_item l(:label_course_news), :only => :index
|
||||
# end
|
||||
|
||||
|
||||
# layout 'base_courses'# by young
|
||||
# menu_item :overview
|
||||
# menu_item l(:label_homework), :only => :homework
|
||||
# menu_item :files, :only => :files
|
||||
#
|
||||
# layout 'base_courses'
|
||||
# menu_item l(:label_homework), :only => homework
|
||||
# menu_item l(:label_course_file), :only => files
|
||||
# menu_item l(:label_settings), :only => settings
|
||||
|
||||
before_filter :find_project, :except => [ :index, :search,:list, :new, :create, :copy, :statistics, :new_join, :course, :enterprise_course, :course_enterprise]
|
||||
# before_filter :authorize, :except => [:new_join, :new_homework, :homework, :statistics, :search, :watcherlist, :index, :list, :new, :create, :copy, :archive, :unarchive, :destroy, :member, :focus, :file,
|
||||
|
@ -52,11 +40,11 @@ class ProjectsController < ApplicationController
|
|||
before_filter :authorize, :only => [:show, :settings, :edit, :sort_project_members, :update, :modules, :close, :reopen]
|
||||
before_filter :authorize_global, :only => [:new, :create]
|
||||
before_filter :require_admin, :only => [ :copy, :archive, :unarchive, :destroy, :calendar]
|
||||
#by young
|
||||
# before_filter :member, :file, :statistics, :watcherlist
|
||||
# modified by fq
|
||||
before_filter :file, :statistics, :watcherlist
|
||||
#
|
||||
|
||||
# 除非项目内人员,不可查看成员, TODO: 完了写报表里去
|
||||
before_filter :memberAccess, only: :member
|
||||
|
||||
accept_rss_auth :index
|
||||
accept_api_auth :index, :show, :create, :update, :destroy
|
||||
|
||||
|
@ -89,27 +77,6 @@ class ProjectsController < ApplicationController
|
|||
### added by william
|
||||
include ActsAsTaggableOn::TagsHelper
|
||||
|
||||
# Lists visible projects
|
||||
# def index
|
||||
# respond_to do |format|
|
||||
# format.html {
|
||||
# scope = Project
|
||||
# unless params[:closed]
|
||||
# scope = scope.active
|
||||
# end
|
||||
# @projects = scope.visible.order('lft').all
|
||||
# }
|
||||
# format.api {
|
||||
# @offset, @limit = api_offset_and_limit
|
||||
# @project_count = Project.visible.count
|
||||
# @projects = Project.visible.offset(@offset).limit(@limit).order('lft').all
|
||||
# }
|
||||
# format.atom {
|
||||
# projects = Project.visible.order('created_on DESC').limit(Setting.feeds_limit.to_i).all
|
||||
# render_feed(projects, :title => "#{Setting.app_title}: #{l(:label_project_latest)}")
|
||||
# }
|
||||
# end
|
||||
# end
|
||||
def enterprise_course
|
||||
session[:enterprise_college] = 2
|
||||
respond_to do |format|
|
||||
|
@ -384,36 +351,6 @@ class ProjectsController < ApplicationController
|
|||
end
|
||||
#gcmend
|
||||
|
||||
# def search
|
||||
# #modified by nie
|
||||
# project_type = params[:project_type].to_i
|
||||
# projects_all = (project_type.eql? Project::ProjectType_course) ? Project.course_entities : Project.project_entities
|
||||
# @projects = projects_all.visible
|
||||
# @projects = @projects.visible.like(params[:name]) if params[:name].present?
|
||||
# @offset, @limit = api_offset_and_limit({:limit => 10})
|
||||
# @project_count = @projects.visible.count
|
||||
# @project_pages = Paginator.new @project_count, @limit, params['page']
|
||||
# @offset ||= @project_pages.offset
|
||||
# @projects = @projects.visible.offset(@offset).limit(@limit).all
|
||||
# respond_to do |format|
|
||||
# format.html {
|
||||
# render :layout => 'base'
|
||||
# scope = Project
|
||||
# unless params[:closed]
|
||||
# scope = scope.active
|
||||
# end
|
||||
# }
|
||||
# format.api {
|
||||
# # @offset, @limit = api_offset_and_limit
|
||||
# # @project_count = Project.visible.count
|
||||
# # @projects = Project.visible.offset(@offset).limit(@limit).order('lft').all
|
||||
# }
|
||||
# format.atom {
|
||||
# projects = Project.visible.order('created_on DESC').limit(Setting.feeds_limit.to_i).all
|
||||
# render_feed(projects, :title => "#{Setting.app_title}: #{l(:label_project_latest)}")
|
||||
# }
|
||||
# end
|
||||
# end
|
||||
|
||||
# added by fq
|
||||
def new_join
|
||||
|
@ -861,22 +798,7 @@ class ProjectsController < ApplicationController
|
|||
memberlist
|
||||
end
|
||||
|
||||
# def news
|
||||
# if @project.project_type == 1
|
||||
# render :layout => 'base_courses'
|
||||
# end
|
||||
# end
|
||||
|
||||
def file
|
||||
# if @project.project_type == 1
|
||||
# render :layout => 'base_courses'
|
||||
# end
|
||||
# @course_tag = params[:course]
|
||||
# if @course_tag == '1'
|
||||
# render :layout => 'base_courses'
|
||||
# end
|
||||
|
||||
# User.current
|
||||
end
|
||||
|
||||
def statistics
|
||||
|
@ -999,12 +921,8 @@ class ProjectsController < ApplicationController
|
|||
# end
|
||||
|
||||
before_filter :toggleCourse, only: [:finishcourse, :restartcourse]
|
||||
# TODO:#finishcourse and #restartcourse 没有设置权限,也就是说,任何人的调用都会关闭or重启课程。
|
||||
# 最好通过用户与项目的权限解决这种事情。还没写
|
||||
def finishcourse
|
||||
#course_prefs = Course.find_by_extra(@project.identifier)
|
||||
# setup_time = Time.parse(course_prefs.setup_time)
|
||||
# end_time = Time.parse(course_prefs.endup_time)
|
||||
yesterday = Date.today.prev_day.to_time
|
||||
|
||||
@course_prefs.endup_time = yesterday
|
||||
|
@ -1016,7 +934,6 @@ class ProjectsController < ApplicationController
|
|||
end
|
||||
|
||||
def restartcourse
|
||||
#course_prefs = Course.find_by_extra(@project.identifier)
|
||||
day = Time.parse("3000-01-01")
|
||||
|
||||
@course_prefs.endup_time = day
|
||||
|
@ -1030,6 +947,14 @@ class ProjectsController < ApplicationController
|
|||
end
|
||||
|
||||
private
|
||||
|
||||
def memberAccess
|
||||
# 是课程,则判断当前用户是否参加了课程
|
||||
return 0 if @project.project_type == Project::ProjectType_project
|
||||
currentUser = User.current
|
||||
render_403 unless currentUser.member_of?(@project)
|
||||
end
|
||||
|
||||
def toggleCourse
|
||||
@course_prefs = Course.find_by_extra(@project.identifier)
|
||||
unless (@course_prefs.teacher == User.current || User.current.admin?)
|
||||
|
|
|
@ -193,7 +193,9 @@ class WordsController < ApplicationController
|
|||
elsif ( referer.match(/contests/) || referer.match(/contests/) ) #new added
|
||||
obj = Contest.find_by_id(obj_id)
|
||||
elsif ( referer.match(/softapplications/) || referer.match(/softapplications/) ) #new added
|
||||
obj = Softapplication.find_by_id(obj_id)
|
||||
obj = Softapplication.find_by_id(obj_id)
|
||||
elsif ( referer.match(/homework_attach/) || referer.match(/homework_attach/) ) #new added
|
||||
obj = HomeworkAttach.find_by_id(obj_id)
|
||||
else
|
||||
raise 'create reply obj unknow type.'
|
||||
end
|
||||
|
@ -211,7 +213,9 @@ class WordsController < ApplicationController
|
|||
elsif obj.kind_of? Contest
|
||||
obj.add_jour(nil, nil, obj.id, options) #new added
|
||||
elsif obj.kind_of? Softapplication
|
||||
obj.add_jour(nil, nil, obj.id, options) #new added
|
||||
obj.add_jour(nil, nil, obj.id, options) #new added
|
||||
elsif obj.kind_of? HomeworkAttach
|
||||
obj.add_jour(nil, nil, obj.id, options) #new added
|
||||
else
|
||||
raise 'create reply obj unknow type.'
|
||||
end
|
||||
|
|
|
@ -31,6 +31,31 @@ module CoursesHelper
|
|||
# searchStudent(project).count
|
||||
end
|
||||
|
||||
# garble count 混淆数量
|
||||
# alias projectCountOrigin projectCount
|
||||
# def projectCount project
|
||||
# count = projectCountOrigin project
|
||||
# garble count
|
||||
# end
|
||||
|
||||
alias teacherCountOrigin teacherCount
|
||||
def teacherCount project
|
||||
count = teacherCountOrigin project
|
||||
garble count
|
||||
end
|
||||
|
||||
alias studentCountOrigin studentCount
|
||||
def studentCount project
|
||||
count = studentCountOrigin project
|
||||
garble count
|
||||
end
|
||||
|
||||
def garble count
|
||||
count = count.round( 1-count.to_s.size ).to_i
|
||||
return count.to_s if count.to_s.size.eql?(1)
|
||||
count.to_s << '+'
|
||||
end
|
||||
|
||||
# =====================================================================================
|
||||
# return people list
|
||||
def searchTeacherAndAssistant project
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
module HomeworkUsersHelper
|
||||
end
|
|
@ -154,10 +154,11 @@ module WelcomeHelper
|
|||
sort_course_by_hot limit
|
||||
end
|
||||
|
||||
def find_all_new_hot_course limit = 9
|
||||
def find_all_new_hot_course limit = 9 ,school_id = 0
|
||||
#sort_project_by_hot_rails 1, 'course_ac_para DESC', limit
|
||||
time_now = Time.new.strftime("%Y");
|
||||
Project.visible.joins(:project_status).where("#{Project.table_name}.project_type = ? and #{Project.table_name}.created_on like '%#{time_now}%'", 1).order("course_ac_para DESC").limit(limit).all
|
||||
Project.visible.joins(:project_status).where("#{Project.table_name}.project_type = ? and #{Project.table_name}.created_on like '%#{time_now}%' and #{Project.table_name}.identifier not in
|
||||
(select extra from courses where school_id = ?)", 1,school_id).order("course_ac_para DESC").limit(limit).all
|
||||
end
|
||||
|
||||
def find_all_hot_bid
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
class HomeworkAttach < ActiveRecord::Base
|
||||
include Redmine::SafeAttributes
|
||||
|
||||
#attr_accessible :name, :description, :state, :user_id, :bid_id
|
||||
|
||||
belongs_to :user
|
||||
belongs_to :bid
|
||||
has_many :journals_for_messages, :as => :jour, :dependent => :destroy
|
||||
has_many :homework_users, :dependent => :destroy
|
||||
seems_rateable :allow_update => true, :dimensions => :quality
|
||||
|
||||
safe_attributes "bid_id",
|
||||
|
@ -24,4 +28,10 @@ class HomeworkAttach < ActiveRecord::Base
|
|||
result = percent * 1.0 / stars_reates.count
|
||||
result
|
||||
end
|
||||
|
||||
def add_jours options
|
||||
jfm = self.journals_for_messages.build(options)
|
||||
jfm.save
|
||||
jfm
|
||||
end
|
||||
end
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
class HomeworkUser < ActiveRecord::Base
|
||||
attr_accessible :homework_attach_id, :user_id
|
||||
|
||||
belongs_to :homework_attach
|
||||
has_one :user
|
||||
end
|
|
@ -74,7 +74,8 @@ class JournalsForMessage < ActiveRecord::Base
|
|||
|
||||
def self.reference_message(user_id)
|
||||
@user = User.find(user_id)
|
||||
message = JournalsForMessage.find_by_sql("select * from journals_for_messages where reply_id = #{@user.id} or (jour_type = 'Bid' and jour_id in (select id from bids where author_id = #{@user.id}))")
|
||||
message = JournalsForMessage.find_by_sql("select * from journals_for_messages where reply_id = #{@user.id}
|
||||
or (jour_type = 'Bid' and jour_id in (select id from bids where author_id = #{@user.id}))")
|
||||
message
|
||||
end
|
||||
|
||||
|
|
|
@ -68,6 +68,8 @@ class User < Principal
|
|||
['none', :label_user_mail_option_none]
|
||||
]
|
||||
|
||||
has_one :homework_user
|
||||
|
||||
has_and_belongs_to_many :groups, :after_add => Proc.new {|user, group| group.user_added(user)},
|
||||
:after_remove => Proc.new {|user, group| group.user_removed(user)}
|
||||
has_many :changesets, :dependent => :nullify
|
||||
|
|
|
@ -37,5 +37,5 @@
|
|||
<p><%= hidden_field_tag 'course_id', @project_id %>
|
||||
</p>
|
||||
<fieldset><legend><%= l(:label_attachment_plural) %></legend>
|
||||
<p><%= render :partial => 'attachments/form', :locals => {:container => @bid} %></p>
|
||||
<div class="tabDiv"><%= render :partial => 'attachments/form', :locals => {:container => @bid} %></div>
|
||||
</fieldset>
|
|
@ -85,12 +85,12 @@
|
|||
<!--点击新建参赛作品弹出框-->
|
||||
<div id="put-project-form" style="display: none; padding-left: 83px; width: 70%">
|
||||
<%= form_for Softapplication.new, :remote=>true, :url => softapplications_path, :complete => '$("#put-bid-form").hide();' do |f| %>
|
||||
<fieldset class="contes-new-box", style="padding-left: 36px">
|
||||
<fieldset style="padding-left: 36px" class="contes-new-box">
|
||||
|
||||
<tr style="width:700px; margin-left: -10px">
|
||||
<span><%= l(:label_softapplication_name) %></span>
|
||||
<span class="contest-star"> * </span>: <td ><%= f.text_field :name, :required => true, :size => 60, :style => "width:400px;" %></td>
|
||||
</tr></ br>
|
||||
</tr><br/>
|
||||
<br />
|
||||
<br />
|
||||
|
||||
|
@ -98,7 +98,7 @@
|
|||
<span><%= l(:label_softapplication_version_available) %></span>
|
||||
<span class="contest-star"> * </span>: <td style="width: 100px"><%= f.text_field :android_min_version_available, :required => true, :size => 60, :style => "width:400px;" %></td>
|
||||
|
||||
</tr></ br>
|
||||
</tr><br/>
|
||||
<br />
|
||||
<br />
|
||||
|
||||
|
@ -107,7 +107,7 @@
|
|||
|
||||
<span class="contest-star"> * </span>: <td style="width: 100px"><%= f.text_field :app_type_name, :required => true, :size => 60, :style => "width:400px;" %></td>
|
||||
|
||||
</tr></ br>
|
||||
</tr><br/>
|
||||
<br />
|
||||
<br />
|
||||
|
||||
|
@ -115,7 +115,7 @@
|
|||
<span><%= l(:label_softapplication_description) %></span>
|
||||
<span class="contest-star"> * </span>: <td style="width: 100px"><%= f.text_field :description, :required => true, :size => 60, :style => "width:400px;" %></td>
|
||||
|
||||
</tr></ br>
|
||||
</tr><br/>
|
||||
<br />
|
||||
<br />
|
||||
|
||||
|
@ -123,11 +123,11 @@
|
|||
<span><%= l(:label_softapplication_developers) %></span>
|
||||
<span class="contest-star"> * </span>: <td style="width: 100px"><%= f.text_field :application_developers, :required => true, :size => 60, :style => "width:400px;" %></td>
|
||||
|
||||
</tr></ br>
|
||||
</tr><br/>
|
||||
<br />
|
||||
<br />
|
||||
|
||||
<fieldset style="width: 500px", style="padding-top: 10px">
|
||||
<fieldset style="width: 500px; padding-top: 10px">
|
||||
<legend>
|
||||
上传应用软件包和应用截图
|
||||
</legend>
|
||||
|
@ -146,7 +146,7 @@
|
|||
|
||||
</fieldset>
|
||||
</fieldset></br>
|
||||
<div class="align-center", style="padding-top: -3px; padding-bottom: 8px">
|
||||
<div class="align-center" style="padding-top: -3px; padding-bottom: 8px">
|
||||
<%= submit_tag l(:button_create), :onclick => "cancel();" %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
<%= form_tag({:controller => 'homework_attach', :action => 'add_jour_reply'}, :remote => true) do %>
|
||||
<%= text_area_tag 'user_notes', "", :class => 'noline',
|
||||
:style => "resize: none;", :rows => 4,
|
||||
:placeholder => l(:label_projects_feedback_respond_content),
|
||||
:maxlength => 250 %>
|
||||
<span style="float: left; margin-top: 1px; margin-right: 4px;"></span>
|
||||
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
||||
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
||||
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
||||
<%= submit_tag l(:button_projects_feedback_respond),
|
||||
:name => nil , :class => "enterprise", :style => "float: right; margin-top: 1px; margin-right: 4px;"%>
|
||||
|
||||
<% end %>
|
|
@ -0,0 +1,6 @@
|
|||
<% id = "journal_reply_ul_" + journal.id.to_s%>
|
||||
<ul class="messages-for-user-reply" id = '<%= id %>' >
|
||||
<% journal.children.each do |reply|%>
|
||||
<%= render :partial => "journal_reply_items", :locals => {:reply => reply, :journal => journal, :m_reply_id => reply} %>
|
||||
<% end %>
|
||||
</ul>
|
|
@ -0,0 +1,34 @@
|
|||
<% reply_allow = JournalsForMessage.create_by_user? User.current %>
|
||||
<% ids_r = 'reply_respond_form_'+ reply.id.to_s %>
|
||||
<li id='word_li_<%=reply.id.to_s%>' onmouseover="$('#<%= ids_r %>').show()" onmouseout="$('#<%= ids_r %>').hide()">
|
||||
<span class="portrait">
|
||||
<%= image_tag url_to_avatar(reply.user), :class => "avatar-3" %>
|
||||
</span>
|
||||
<div class="message-body">
|
||||
<% id = 'project_respond_form_'+ reply.id.to_s %>
|
||||
<p>
|
||||
<span><%= link_to reply.user.name, user_path(reply.user) %>: </span>
|
||||
<span class="message-notes"> <%= reply.notes %></span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="time"><%= format_time reply.created_on %></span>
|
||||
<span style="display: none; margin-left: 4px;" id='<%=ids_r%>' >
|
||||
<% if reply_allow %>
|
||||
<%= link_to l(:label_projects_feedback_respond),'',
|
||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{id}'), $('##{id} textarea'), '#{l(:label_reply_plural)} #{m_reply_id.user.name}: '); return false;"}
|
||||
%>
|
||||
<% end %>
|
||||
<% if @user == User.current || User.current.admin? || reply.user.id == User.current.id %>
|
||||
<%= link_to(l(:label_newfeedback_delete), {:controller => 'homework_attach', :action => 'destroy', :object_id => reply, :user_id => reply.user},
|
||||
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
||||
<% end %>
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
<div id='<%=id %>' class="respond-form">
|
||||
<% if reply_allow %>
|
||||
<%= render :partial => "add_jour_reply", :locals => {:journal => journal, :m_reply_id => m_reply_id} %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div style="clear: both;"></div>
|
||||
</li>
|
|
@ -40,24 +40,33 @@
|
|||
<% for journal in jour%>
|
||||
<li id='word_li_<%= journal.id.to_s %>' class="outer-message-for-user">
|
||||
<span class="portrait"><%= image_tag(url_to_avatar(journal.user), :class => "avatar") %></span>
|
||||
<span class="body">
|
||||
<span class="user"><%= link_to journal.user, user_path(journal.user)%></span>
|
||||
<span class="font_lighter"><% label = l(:label_contest_requirement) %></span>
|
||||
<div> <%= textilizable journal.notes%> </div>
|
||||
<span class="font_lighter"><%= l(:label_bids_published) %>
|
||||
<%= time_tag(journal.created_on).html_safe %>
|
||||
<%= l(:label_bids_published_ago) %>
|
||||
<span class="body">
|
||||
<span class="user"><%= link_to journal.user, user_path(journal.user)%></span>
|
||||
<span class="font_lighter"><% label = l(:label_contest_requirement) %></span>
|
||||
<div> <%= textilizable journal.notes%> </div>
|
||||
<span class="font_lighter"><%= l(:label_bids_published) %>
|
||||
<%= time_tag(journal.created_on).html_safe %>
|
||||
<%= l(:label_bids_published_ago) %>
|
||||
</span>
|
||||
<% ids = 'project_respond_form_'+ journal.id.to_s%>
|
||||
<span>
|
||||
<%= link_to l(:label_projects_feedback_respond),'',
|
||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), '#{l(:label_reply_plural)} #{journal.user.name}: '); $('##{ids} textarea') ;return false;"}
|
||||
%>
|
||||
<% if journal.user==User.current|| User.current.admin? %>
|
||||
<%= link_to(l(:label_bid_respond_delete), {:controller => 'homework_attach', :action => 'destroy', :object_id => journal, :user_id => journal.user},
|
||||
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
||||
<% end %>
|
||||
</span>
|
||||
</span>
|
||||
<% ids = 'project_respond_form_'+ journal.id.to_s%>
|
||||
<span>
|
||||
|
||||
<% if journal.user==User.current|| User.current.admin? %>
|
||||
<%= link_to(l(:label_bid_respond_delete), {:controller => 'homework_attach', :action => 'destroy', :object_id => journal, :user_id => journal.user},
|
||||
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
||||
<% end %>
|
||||
</span>
|
||||
</span>
|
||||
<div style="clear: both;"></div>
|
||||
<div id='<%= ids %>' class="respond-form">
|
||||
<%= render :partial => 'add_jour_reply', :locals => {:journal => journal, :m_reply_id => journal} %>
|
||||
</div>
|
||||
<div style="clear: both;"></div>
|
||||
<div>
|
||||
<%= render :partial => "jour_reply", :locals => {:journal => journal } %>
|
||||
</div>
|
||||
</li>
|
||||
<% end %>
|
||||
</ul>
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
<% if @save_succ %>
|
||||
var pre_append = $('<%= j(
|
||||
render :partial => "journal_reply_items",
|
||||
:locals => {:reply => @jfm, :journal => @jfm.parent, :m_reply_id => @jfm}
|
||||
) %>').hide();
|
||||
$('#journal_reply_ul_<%=@jfm.m_parent_id%>').append(pre_append);
|
||||
pre_append.fadeIn(600);
|
||||
var textarea = $('#project_respond_form_<%=@jfm.m_reply_id.to_s%> textarea');
|
||||
textarea.val('');
|
||||
$('#project_respond_form_<%=@jfm.m_reply_id.to_s%>').hide();
|
||||
setMaxLengthItem(pre_append.find('textarea')[0]);
|
||||
<% else %>
|
||||
alert("<%= l(:label_feedback_fail) %>");
|
||||
<% end %>
|
|
@ -1,4 +1,4 @@
|
|||
$('#message').html('<%= escape_javascript(render(:partial => 'showjour', :locals => {:jour =>@jour, :state => false} )) %>');
|
||||
$('#message').html('<%= escape_javascript(render(:partial => 'showjour', :locals => {:jour =>@jours, :state => false} )) %>');
|
||||
$('#pre_show').html('<%= escape_javascript(render(:partial => 'pre_show', :locals => {:content => nil})) %>');
|
||||
$('#new_form_user_message').val("");
|
||||
$('#new_form_reference_user_id').val("");
|
|
@ -1,11 +1,8 @@
|
|||
<% if @journal_destroyed.nil? %>
|
||||
alert('<%=l(:notice_failed_delete)%>');
|
||||
<% elsif (['Principal','Project', 'Bid', 'Contest', 'Softapplication','HomeworkAttach'].include? @journal_destroyed.jour_type)%>
|
||||
var destroyedItem = $('#word_li_<%=@journal_destroyed.id%>')
|
||||
destroyedItem.fadeOut(600,function(){
|
||||
destroyedItem.remove();
|
||||
});
|
||||
<% else %>
|
||||
$('#message').html('<%= escape_javascript(render(:partial => 'showjour', :locals => {:jour => @jour, :state => false})) %>');
|
||||
$('#new_form_reference_user_id').val("");
|
||||
var destroyedItem = $('#word_li_<%=@journal_destroyed.id%>')
|
||||
destroyedItem.fadeOut(600,function(){
|
||||
destroyedItem.remove();
|
||||
});
|
||||
<% end %>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!--add by huang-->
|
||||
<div class="clearfix"></div>
|
||||
<div id="footer" style="margin-left:-5px;padding-top: 150px;clear: both;font-size: 12px;">
|
||||
<div id="footer" style="margin-left:-5px;padding-top: 20px;clear: both;font-size: 12px;">
|
||||
<div style="border-top:solid 1px #C6E9F1;"></div>
|
||||
<div class="base_footer">
|
||||
<div align="center">
|
||||
|
|
|
@ -1,257 +1,270 @@
|
|||
<% @nav_dispaly_course_label = 1 %>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title><%= h html_title %></title>
|
||||
<meta name="description" content="<%= Redmine::Info.app_name %>" />
|
||||
<meta name="keywords" content="issue,bug,tracker" />
|
||||
<%= csrf_meta_tag %>
|
||||
<%= favicon %>
|
||||
<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'application', 'nyan', :media => 'all' %>
|
||||
<%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
|
||||
<%= javascript_heads %>
|
||||
<%= javascript_include_tag "jquery.leanModal.min" %>
|
||||
<%= heads_for_theme %>
|
||||
<%= call_hook :view_layouts_base_html_head %>
|
||||
<!-- page specific tags -->
|
||||
<%= yield :header_tags -%>
|
||||
</head>
|
||||
<!--add by huang-->
|
||||
<body class="<%= h body_css_classes %>">
|
||||
<div id="wrapper">
|
||||
<div id="wrapper2">
|
||||
<div id="wrapper3">
|
||||
<%= render :partial => 'layouts/base_header'%>
|
||||
<div id="main">
|
||||
<!--added by huang-->
|
||||
<div class="top-content">
|
||||
<% @project = Project.find_by_id(@project.id)%>
|
||||
<% @course = Course.find_by_extra(@project.identifier)%>
|
||||
<table>
|
||||
<tr>
|
||||
<td class="info_font" style="width: 240px; color: #15bccf">高校课程实践社区</td>
|
||||
<td style="color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||
<td rowspan="2" width="250px">
|
||||
<div class="top-content-search">
|
||||
<%= form_tag(:controller => 'projects', :action => 'search', :method => :get) do %>
|
||||
<%= text_field_tag 'name', params[:name], :size => 20 %>
|
||||
<%= hidden_field_tag 'project_type', @project.project_type %>
|
||||
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
|
||||
<% end %>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding-left: 8px"><%=link_to request.host()+"/course", :controller => 'projects', :action => 'course' %></td>
|
||||
<td><p class="top-content-list"><%=link_to "主页", home_path %> > <%=link_to l(:label_course_practice), :controller => 'projects', :action => 'course' %> > <%=link_to @project.name, nil %></p></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end -->
|
||||
<!--project page-->
|
||||
<div id="sidebar">
|
||||
<div class="spaceleft">
|
||||
<!--informations-->
|
||||
<div class="inf_user_image">
|
||||
<% @project = Project.find_by_id(@project.id) %>
|
||||
<% @course = Course.find_by_extra(@project.identifier) %>
|
||||
<table>
|
||||
<tr><td valign="top">
|
||||
<% if(@project.project_type==1) %>
|
||||
<% if get_avatar?(@project) %>
|
||||
<%= image_tag(url_to_avatar(@project), :class => "avatar2") %>
|
||||
<% else %>
|
||||
<%= link_to image_tag('../images/avatars/Project/course.jpg', :class => "avatar2"), project_path(@project) %>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<%= image_tag(url_to_avatar(@project), :class => "avatar2") %>
|
||||
<% end %> </td>
|
||||
<td>
|
||||
<table><tr>
|
||||
<td class="info-course"><%= @project.name %></td>
|
||||
</tr>
|
||||
<tr><td align="center">
|
||||
<div id="join_in_course">
|
||||
<%if User.current.logged? %>
|
||||
<% if @course.teacher.id == User.current.id %>
|
||||
<%= link_to l(:label_course_modify_settings), {:controller => 'projects', :action => 'settings', :id => @project} %>
|
||||
<%= render :partial => 'courses/set_course_time', :locals => {:project => @project}%>
|
||||
<% else %>
|
||||
|
||||
<%= join_in_course(@project, User.current) %>
|
||||
<% end %>
|
||||
<% unless User.current.member_of?(@project) %>
|
||||
<!-- <%= image_tag "/images/fav.png" %> -->
|
||||
<div style="padding-right: 10px">
|
||||
<span class="icon-fav icon"></span><span>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title><%= h html_title %></title>
|
||||
<meta name="description" content="<%= Redmine::Info.app_name %>"/>
|
||||
<meta name="keywords" content="issue,bug,tracker"/>
|
||||
<%= csrf_meta_tag %>
|
||||
<%= favicon %>
|
||||
<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'application', 'nyan', :media => 'all' %>
|
||||
<%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
|
||||
<%= javascript_heads %>
|
||||
<%= javascript_include_tag "jquery.leanModal.min" %>
|
||||
<%= heads_for_theme %>
|
||||
<%= call_hook :view_layouts_base_html_head %>
|
||||
<!-- page specific tags -->
|
||||
<%= yield :header_tags -%>
|
||||
</head>
|
||||
<!--add by huang-->
|
||||
<body class="<%= h body_css_classes %>">
|
||||
<div id="wrapper">
|
||||
<div id="wrapper2">
|
||||
<div id="wrapper3">
|
||||
<%= render :partial => 'layouts/base_header' %>
|
||||
<div id="main">
|
||||
<!--added by huang-->
|
||||
<div class="top-content">
|
||||
<% @project = Project.find_by_id(@project.id) %>
|
||||
<% @course = Course.find_by_extra(@project.identifier) %>
|
||||
<table>
|
||||
<tr>
|
||||
<td class="info_font" style="width: 240px; color: #15bccf">高校课程实践社区</td>
|
||||
<td style="color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||
<td rowspan="2" width="250px">
|
||||
<div class="top-content-search">
|
||||
<%= form_tag(:controller => 'projects', :action => 'search', :method => :get) do %>
|
||||
<%= text_field_tag 'name', params[:name], :size => 20 %>
|
||||
<%= hidden_field_tag 'project_type', @project.project_type %>
|
||||
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
|
||||
<% end %>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding-left: 8px"><%= link_to request.host()+"/course", :controller => 'projects', :action => 'course' %></td>
|
||||
<td><p class="top-content-list"><%= link_to "主页", home_path %>
|
||||
> <%= link_to l(:label_course_practice), :controller => 'projects', :action => 'course' %>
|
||||
> <%= link_to @project.name, nil %></p></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end -->
|
||||
<!--project page-->
|
||||
<div id="sidebar">
|
||||
<div class="spaceleft">
|
||||
<!--informations-->
|
||||
<div class="inf_user_image">
|
||||
<% @project = Project.find_by_id(@project.id) %>
|
||||
<% @course = Course.find_by_extra(@project.identifier) %>
|
||||
<table>
|
||||
<tr>
|
||||
<td valign="top">
|
||||
<% if (@project.project_type==1) %>
|
||||
<% if get_avatar?(@project) %>
|
||||
<%= image_tag(url_to_avatar(@project), :class => "avatar2") %>
|
||||
<% else %>
|
||||
<%= link_to image_tag('../images/avatars/Project/course.jpg', :class => "avatar2"), project_path(@project) %>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<%= image_tag(url_to_avatar(@project), :class => "avatar2") %>
|
||||
<% end %> </td>
|
||||
<td>
|
||||
<table>
|
||||
<tr>
|
||||
<td class="info-course"><%= @project.name %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<div id="join_in_course">
|
||||
<% if User.current.logged? %>
|
||||
<% if @course.teacher.id == User.current.id %>
|
||||
<%= link_to l(:label_course_modify_settings), {:controller => 'projects', :action => 'settings', :id => @project} %>
|
||||
<%= render :partial => 'courses/set_course_time', :locals => {:project => @project} %>
|
||||
<% else %>
|
||||
|
||||
<%= join_in_course(@project, User.current) %>
|
||||
<% end %>
|
||||
<% unless User.current.member_of?(@project) %>
|
||||
<!-- <%= image_tag "/images/fav.png" %> -->
|
||||
<div style="padding-right: 10px">
|
||||
<span class="icon-fav icon"></span><span>
|
||||
<%= watcher_link(@project, User.current) %></span></div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</td></tr></table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!--parameter-->
|
||||
<div class="user_fans">
|
||||
<!--parameter-->
|
||||
<div class="user_fans">
|
||||
|
||||
<table width="240" border="0">
|
||||
<tr align="center" width="80px">
|
||||
<% files_count = @project.attachments.count %>
|
||||
<% @project.versions.each do |version| %>
|
||||
<% files_count += version.attachments.count %>
|
||||
<% end %>
|
||||
<table width="240" border="0">
|
||||
<tr align="center" width="80px">
|
||||
<% files_count = @project.attachments.count %>
|
||||
<% @project.versions.each do |version| %>
|
||||
<% files_count += version.attachments.count %>
|
||||
<% end %>
|
||||
|
||||
<td class="font_index">
|
||||
<!-- %= link_to "#{@project.members.count}", project_member_path(@project) ,:course =>'1'% -->
|
||||
<!-- 1 教师; 2 学生;0 全部-->
|
||||
<%= link_to "#{teacherCount(@project)}", project_member_path(@project, :role => 1) ,:course =>'1'%>
|
||||
</td>
|
||||
<td class="font_index">
|
||||
<%= link_to "#{studentCount(@project)}", project_member_path(@project, :role => 2) ,:course =>'1'%>
|
||||
</td>
|
||||
<td class="font_index"><%= link_to files_count, project_files_path(@project) %></td>
|
||||
<tr class="font_aram">
|
||||
<td align="center" width="80px" id="teacherCount">
|
||||
<!-- %= l(:label_x_base_courses_member, :count => @project.members.count) % -->
|
||||
<%= l(:label_x_base_courses_teacher, :count => teacherCount(@project)) %>
|
||||
</td>
|
||||
<td align="center" width="80px" id="studentCount">
|
||||
<%= l(:label_x_base_courses_student, :count => studentCount(@project)) %>
|
||||
<!-- %= l(:label_x_course_data, :count => files_count) % -->
|
||||
</td>
|
||||
<td align="center" width="80px">
|
||||
<%= l(:label_x_course_data, :count => files_count) %>
|
||||
</td>
|
||||
<td class="font_index">
|
||||
<!-- 1 教师; 2 学生;0 全部-->
|
||||
<%= link_to "#{teacherCount(@project)}", project_member_path(@project, :role => 1), :course => '1' %>
|
||||
</td>
|
||||
<td class="font_index">
|
||||
<%= link_to "#{studentCount(@project)}", project_member_path(@project, :role => 2), :course => '1' %>
|
||||
</td>
|
||||
<td class="font_index"><%= link_to files_count, project_files_path(@project) %></td>
|
||||
<tr class="font_aram">
|
||||
<td align="center" width="80px" id="teacherCount">
|
||||
<!-- %= l(:label_x_base_courses_member, :count => @project.members.count) % -->
|
||||
<%= l(:label_x_base_courses_teacher, :count => teacherCount(@project)) %>
|
||||
</td>
|
||||
<td align="center" width="80px" id="studentCount">
|
||||
<%= l(:label_x_base_courses_student, :count => studentCount(@project)) %>
|
||||
<!-- %= l(:label_x_course_data, :count => files_count) % -->
|
||||
</td>
|
||||
<td align="center" width="80px">
|
||||
<%= l(:label_x_course_data, :count => files_count) %>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
<div class="user_underline"></div>
|
||||
</div>
|
||||
<!--info-->
|
||||
</tr>
|
||||
</table>
|
||||
<div class="user_underline"></div>
|
||||
</div>
|
||||
<!--info-->
|
||||
|
||||
<div class="inf_user_context">
|
||||
<table style="font-family:微软雅黑" >
|
||||
|
||||
<!-- addedby bai 教师姓名加超链接、加入开课时间、结课时间与课时 -->
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px; width:60px"><%= l(:label_main_teacher) %> :</td><td class="font_lighter_sidebar"><%= link_to(@course.teacher.lastname+@course.teacher.firstname, user_path(@course.teacher)) %></td>
|
||||
</tr>
|
||||
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_setup_time) %> :</td><td class="font_lighter_sidebar"><%= @course.setup_time %></td>
|
||||
</tr>
|
||||
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_endup_time) %> :</td><td class="font_lighter_sidebar"><%= @course.endup_time %></td>
|
||||
</tr>
|
||||
<div class="inf_user_context">
|
||||
<table style="font-family:微软雅黑">
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_class_period) %> :</td><td class="font_lighter_sidebar"><%= @course.class_period %> <%= l(:label_class_hour)%></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_main_term) %> :</td><td class="font_lighter_sidebar"><%= @course.time %> <%= @course.term %></td>
|
||||
</tr>
|
||||
<!-- end -->
|
||||
<!-- addedby bai 教师姓名加超链接、加入开课时间、结课时间与课时 -->
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px; width:60px"><%= l(:label_main_teacher) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= link_to(@course.teacher.lastname+@course.teacher.firstname, user_path(@course.teacher)) %></td>
|
||||
</tr>
|
||||
|
||||
<% unless @course.teacher.user_extensions.nil?%>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td><td class="font_lighter_sidebar"><%= @course.teacher.user_extensions.school %></td>
|
||||
</tr>
|
||||
<% else %>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td><td class="font_lighter_sidebar"><%= l(:field_course_un) %></td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_setup_time) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.setup_time %></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_endup_time) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.endup_time %></td>
|
||||
</tr>
|
||||
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
<!--description-->
|
||||
<div class="inf_user_context">
|
||||
<div class="font_title_left">
|
||||
<%= l(:label_project_overview) %>
|
||||
</div>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_class_period) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.class_period %> <%= l(:label_class_hour) %></td>
|
||||
</tr>
|
||||
|
||||
<div style="padding-bottom: 8px">
|
||||
<% if @project.description.size>0 %>
|
||||
<div class="font_lighter_sidebar">
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_main_term) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.time %> <%= @course.term %></td>
|
||||
</tr>
|
||||
<!-- end -->
|
||||
|
||||
<%= textilizable @project.description %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="font_lighter_sidebar">
|
||||
<%= l(:label_course_description_no) %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="created_on_project">
|
||||
<strong style="color: #068d9c"><%= l(:label_create_time) %>:</strong><%= format_time(@project.created_on) %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
</div>
|
||||
<!--tags-->
|
||||
<% unless @course.teacher.user_extensions.nil? %>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.teacher.user_extensions.school %></td>
|
||||
</tr>
|
||||
<% else %>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= l(:field_course_un) %></td>
|
||||
</tr>
|
||||
<% end %>
|
||||
|
||||
<div class="user_fans">
|
||||
<!-- added by william -for tag -->
|
||||
<div class="user_tags">
|
||||
<div id="tags">
|
||||
<%= render :partial => 'tags/tag', :locals => {:obj => @project,:object_flag => "2"}%>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</table>
|
||||
|
||||
<div class="user_underline"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="content">
|
||||
<div class="tabs_new">
|
||||
<ul>
|
||||
<li>
|
||||
<%= link_to l(:label_course_overview), project_path(@project), :class => link_class(:overview) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_homework), homework_project_path(@project), :class => link_class(:homework) ,:project_type => 1 %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_file), project_files_path(@project), :class => link_class(:files)%>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_news), {:controller => 'news', :action => 'index', :project_id => @project}, :class => link_class(:news) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_board), { :controller => 'boards', :action => 'index', :project_id => @project}, :class => link_class(:boards) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_feedback), project_feedback_path(@project), :class => link_class(:feedback)%>
|
||||
</li>
|
||||
<!-- <li><%= link_to(l(:label_course_repository), {:controller => 'repositories', :action => 'show', :id => @project, :repository_id => nil, :path => nil, :rev => nil, :course => 1 })%></li> -->
|
||||
<% if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.roles&Role.where('id = ? or id = ?', 7, 9)).size >0))%>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
<!--description-->
|
||||
<div class="inf_user_context">
|
||||
<div class="font_title_left">
|
||||
<%= l(:label_project_overview) %>
|
||||
</div>
|
||||
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render_flash_messages %>
|
||||
<%= yield %>
|
||||
<%= call_hook :view_layouts_base_content %>
|
||||
<div style="clear:both;"></div>
|
||||
<!--gcm-->
|
||||
|
||||
</div>
|
||||
<!--gcm move it mistakenly-->
|
||||
<%= render :partial => 'layouts/base_footer'%>
|
||||
</div>
|
||||
<div id="ajax-indicator" style="display:none;">
|
||||
<span><%= l(:label_loading) %></span>
|
||||
</div>
|
||||
<div id="ajax-modal" style="display:none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
<%= call_hook :view_layouts_base_body_bottom %>
|
||||
</body>
|
||||
<div style="padding-bottom: 8px">
|
||||
<% if @project.description.size>0 %>
|
||||
<div class="font_lighter_sidebar">
|
||||
|
||||
<%= textilizable @project.description %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="font_lighter_sidebar">
|
||||
<%= l(:label_course_description_no) %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="created_on_project">
|
||||
<strong style="color: #068d9c"><%= l(:label_create_time) %>:</strong><%= format_time(@project.created_on) %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
</div>
|
||||
<!--tags-->
|
||||
|
||||
<div class="user_fans">
|
||||
<!-- added by william -for tag -->
|
||||
<div class="user_tags">
|
||||
<div id="tags">
|
||||
<%= render :partial => 'tags/tag', :locals => {:obj => @project, :object_flag => "2"} %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="user_underline"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="content">
|
||||
<div class="tabs_new">
|
||||
<ul>
|
||||
<li>
|
||||
<%= link_to l(:label_course_overview), project_path(@project), :class => link_class(:overview) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_homework), homework_project_path(@project), :class => link_class(:homework), :project_type => 1 %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_file), project_files_path(@project), :class => link_class(:files) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_news), {:controller => 'news', :action => 'index', :project_id => @project}, :class => link_class(:news) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_board), {:controller => 'boards', :action => 'index', :project_id => @project}, :class => link_class(:boards) %>
|
||||
</li>
|
||||
<li>
|
||||
<%= link_to l(:label_course_feedback), project_feedback_path(@project), :class => link_class(:feedback) %>
|
||||
</li>
|
||||
<!-- <li><%= link_to(l(:label_course_repository), {:controller => 'repositories', :action => 'show', :id => @project, :repository_id => nil, :path => nil, :rev => nil, :course => 1}) %></li> -->
|
||||
<% if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.roles&Role.where('id = ? or id = ?', 7, 9)).size >0)) %>
|
||||
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render_flash_messages %>
|
||||
<%= yield %>
|
||||
<%= call_hook :view_layouts_base_content %>
|
||||
<div style="clear:both;"></div>
|
||||
<!--gcm-->
|
||||
|
||||
</div>
|
||||
<!--gcm move it mistakenly-->
|
||||
<%= render :partial => 'layouts/base_footer' %>
|
||||
</div>
|
||||
<div id="ajax-indicator" style="display:none;">
|
||||
<span><%= l(:label_loading) %></span>
|
||||
</div>
|
||||
<div id="ajax-modal" style="display:none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
<%= call_hook :view_layouts_base_body_bottom %>
|
||||
</body>
|
||||
</html>
|
|
@ -66,7 +66,7 @@
|
|||
<%= link_to(l(:label_user_edit), my_account_path(@user)) if User.current %>
|
||||
<% end %></td>
|
||||
</tr>
|
||||
|
||||
|
||||
<!-- added by bai 增加个人得分 -->
|
||||
<% messages_count = @user.messages.count %>
|
||||
<% messages_score = messages_count * 0.05%>
|
||||
|
@ -158,9 +158,12 @@
|
|||
<tr>
|
||||
<td style="padding-left: 5px"><%= l(:label_user_login) %>:</td><td class="font_lighter_sidebar" style="padding-left: 0px"><%= format_time(@user.last_login_on) %></td>
|
||||
</tr>
|
||||
|
||||
<!--
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 5px;"><%= l(:label_user_mail) %>:</td><td class="font_lighter_sidebar" style="padding-left: 0px; word-wrap: break-word; word-break: break-all"><%= mail_to(h(@user.mail), nil, :encode => 'javascript') %></td>
|
||||
</tr>
|
||||
-->
|
||||
<!-- added by bai 在个人主页里显示“工作单位”“地区”"教师的职称"-->
|
||||
<!-- modified by linchun 在个人主页里显示“加入时间”,“最后登录”,“邮件地址”后面添加冒号-->
|
||||
<% unless @user.user_extensions.nil? %>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<em>尊敬的用户,<%= @user %>(<%= @user.mail%>)给你留言了:</em>
|
||||
<em>尊敬的用户,<%= @user %>给你留言了:</em>
|
||||
<div><%= @message %></div>
|
||||
<h1>点击链接查看最新回复<%= link_to(@url, @url) %></h1>
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
尊敬的用户,<%= @user %>(<%= @user.mail%>)给你留言了:
|
||||
尊敬的用户,<%= @user %>给你留言了:
|
||||
<%= @message %>
|
||||
点击链接查看最新回复<%= link_to(@url, @url) %>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
<div class="splitcontentleft">
|
||||
<ul>
|
||||
<% unless @user.pref.hide_mail %>
|
||||
<% unless @user.pref.hide_mail && @user == User.current %>
|
||||
<li><%=l(:field_mail)%>: <%= mail_to(h(@user.mail), nil, :encode => 'javascript') %></li>
|
||||
<% end %>
|
||||
<% @user.visible_custom_field_values.each do |custom_value| %>
|
||||
|
@ -107,9 +107,11 @@
|
|||
<li style="line-break: 10px">
|
||||
<h1><%= h @user.name %></h1>
|
||||
</li>
|
||||
<% if @user == User.current %>
|
||||
<li style="line-break: 10px">
|
||||
<h3><%= mail_to(h(@user.mail), nil, :encode => 'javascript') %></h3>
|
||||
</li>
|
||||
<% end %>
|
||||
<li style="line-break: 10px">
|
||||
<td class="last_active"><%= l(:field_last_login_on)%>: <%= format_date(@user.last_login_on) %></td>
|
||||
</li>
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
<div class="clearfix"></div>
|
||||
<div class="linkother">
|
||||
<a href="http://forge.trustie.net" class="link_other_item">项目托管平台</a>
|
||||
<a href="http://course.trustie.net" class="link_other_item">课程实践平台</a>
|
||||
<a href="http://contest.trustie.net" class="link_other_item">竞赛托管平台</a>
|
||||
</div>
|
|
@ -9,8 +9,23 @@
|
|||
|
||||
$(function(){
|
||||
$("#main").find("a").attr("target", "_blank");
|
||||
setCss();
|
||||
});
|
||||
|
||||
|
||||
//设置div居中
|
||||
function setCss()
|
||||
{
|
||||
var mainBar = $('#main-content-bar')[0];
|
||||
var topHeight = mainBar.offsetHeight;
|
||||
var welcomeLeft = $('#welcome_left')[0];
|
||||
var leftHeight = welcomeLeft.offsetHeight;
|
||||
var searchbar = $('#J_Slide')[0];
|
||||
var searchHeight = searchbar.offsetHeight;
|
||||
welcomeLeft.style.marginTop = (topHeight - leftHeight)/2 + "px";
|
||||
searchbar.style.marginTop = (topHeight - searchHeight)/2 + "px";
|
||||
//alert((topHeight - leftHeight)/2 );
|
||||
}
|
||||
|
||||
function showInfo(id, content) {
|
||||
var text = $('#' + id);
|
||||
if (text.val() == '') {
|
||||
|
@ -96,12 +111,12 @@
|
|||
<%= image_tag '/images/qrweixin.jpg', size: '150x150', alt: 'trustie', class: "weixin" %>
|
||||
<div class="weixin-content">微信扫码</div>
|
||||
</div>
|
||||
<div class="main-content-bar">
|
||||
<div class="main-content-bar" id="main-content-bar">
|
||||
<!--文字-->
|
||||
<div style="float: left">
|
||||
<%= image_tag '/images/transparent.png', size: "75x75" %>
|
||||
</div>
|
||||
<div class="welcome_left" >
|
||||
<div class="welcome_left" id="welcome_left">
|
||||
|
||||
<span class="font_welcome_trustie"><%= l(:label_welcome_trustie) %><%= l(:label_welcome_trustie_contest) %></span> <span class="font_welcome_tdescription">, <%= l(:label_welcome_trustie_contest_description) %></span>
|
||||
</div>
|
||||
|
@ -241,7 +256,7 @@
|
|||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<%= render partial: 'link_to_another' %>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -5,8 +5,22 @@
|
|||
|
||||
$(function(){
|
||||
$("#main").find("a").attr("target", "_blank");
|
||||
setCss();
|
||||
});
|
||||
|
||||
//设置div居中
|
||||
function setCss()
|
||||
{
|
||||
var mainBar = $('#main-content-bar')[0];
|
||||
var topHeight = mainBar.offsetHeight;
|
||||
var welcomeLeft = $('#welcome_left')[0];
|
||||
var leftHeight = welcomeLeft.offsetHeight;
|
||||
var searchbar = $('#search-bar')[0];
|
||||
var searchHeight = searchbar.offsetHeight;
|
||||
welcomeLeft.style.marginTop = (topHeight - leftHeight)/2 + "px";
|
||||
searchbar.style.marginTop = (topHeight - searchHeight)/2 + "px";
|
||||
//alert((topHeight - leftHeight)/2 );
|
||||
}
|
||||
// 给主页用户弹新页面
|
||||
$(document).ready(function($) {
|
||||
$("#loggedas").find("a").attr("target", "_blank");
|
||||
|
@ -19,13 +33,12 @@
|
|||
<%= image_tag '/images/qrweixin.jpg', size: '150x150', alt: 'trustie', class: "weixin" %>
|
||||
<div class="weixin-content">微信扫码</div>
|
||||
</div>
|
||||
<div class="main-content-bar">
|
||||
<div class="main-content-bar" id="main-content-bar">
|
||||
<div style="float: left">
|
||||
<%= image_tag(@logoLink, size:'75x75') %>
|
||||
|
||||
</div>
|
||||
<div class="course welcome_left" >
|
||||
<br />
|
||||
<div class="course welcome_left" id="welcome_left" >
|
||||
<span class="font_welcome_school"> <% if params[:school_id].nil? and User.current.user_extensions.school.nil? %>
|
||||
<% else%>
|
||||
<% if params[:school_id] == "0" %>
|
||||
|
@ -48,7 +61,7 @@
|
|||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="search-bar">
|
||||
<div class="search-bar" id="search-bar">
|
||||
<%= render :partial => "search_project", :locals => {:project_type => Project::ProjectType_course}%>
|
||||
</div>
|
||||
<div style="clear: both;"></div>
|
||||
|
@ -60,7 +73,8 @@
|
|||
|
||||
<div id="J_Slide" class="d-p-index-box d-p-index-hotproject">
|
||||
<h3><strong>新开课程</strong></h3>
|
||||
<% if(find_miracle_course(10, 7,params[:school_id]).count == 0) %>
|
||||
<% school_course = find_miracle_course(10, 7,params[:school_id]) %>
|
||||
<% if(school_course.count == 0) %>
|
||||
<span><%= link_to "更多>>", {:controller => 'projects', :action => 'course', :project_type => 1, :school_id => nil} %></span>
|
||||
<div class="d-p-projectlist-box">
|
||||
<ul class="d-p-projectlist">
|
||||
|
@ -72,7 +86,7 @@
|
|||
该学校未开设任何课程,您可以查看其他学校课程
|
||||
</p>
|
||||
<h1></h1>
|
||||
<% find_all_new_hot_course(9).map do |project| %>
|
||||
<% find_all_new_hot_course(9,params[:school_id]).map do |project| %>
|
||||
<li class='<%= cycle("odd", "even") %>' title=<%=project.description.to_s%>>
|
||||
<div class='avatar'>
|
||||
<%= image_tag(get_course_avatar(project), :class => "avatar-4") %>
|
||||
|
@ -95,7 +109,7 @@
|
|||
<div class='desc_item text_nowrap' style="width: 310px;">
|
||||
[<%= get_course_term project %>]
|
||||
<%= link_to( project.name, project_path(project.id), :class => "d-g-blue d-p-project-name",:title => "#{project.name}" )%>
|
||||
(<%= link_to "#{studentCount(project)}人", project_member_path(project, :role => 2) ,:course =>'1' %>)
|
||||
(<%= "#{studentCount(project)}人" %>)
|
||||
<% files_count = (project.attachments.count.to_i+Version.joins(:project).where("projects.id=#{project.id}").count.to_i).to_s %>
|
||||
(<%=link_to "#{files_count}份", project_files_path(project) %>资料)
|
||||
</div>
|
||||
|
@ -114,13 +128,21 @@
|
|||
</ul>
|
||||
</div>
|
||||
<% else %>
|
||||
<span><%= link_to "更多>>", {:controller => 'projects', :action => 'course', :project_type => 1, :school_id => params[:school_id]} %></span>
|
||||
<% if school_course.count < 9 %>
|
||||
<span>
|
||||
<%= link_to "更多>>", {:controller => 'projects', :action => 'course', :project_type => 1, :school_id => nil} %>
|
||||
</span>
|
||||
<% else %>
|
||||
<span>
|
||||
<%= link_to "更多>>", {:controller => 'projects', :action => 'course', :project_type => 1, :school_id => params[:school_id]} %>
|
||||
</span>
|
||||
<% end %>
|
||||
<div class="d-p-projectlist-box">
|
||||
<ul class="d-p-projectlist">
|
||||
|
||||
</ul>
|
||||
<ul class="d-p-projectlist">
|
||||
<% find_miracle_course(10, 7,params[:school_id]).map do |project| %>
|
||||
<% school_course.map do |project| %>
|
||||
<li class='<%= cycle("odd", "even") %>' title=<%=project.description.to_s%>>
|
||||
<div class='avatar'>
|
||||
<%= image_tag(get_course_avatar(project), :class => "avatar-4") %>
|
||||
|
@ -139,13 +161,11 @@
|
|||
<div class='desc_item text_nowrap' style="width: 310px;">
|
||||
[<%= get_course_term project %>]
|
||||
<%= link_to( project.name, project_path(project.id), :class => "d-g-blue d-p-project-name",:title => "#{project.name}" )%>
|
||||
(<%= link_to "#{studentCount(project)}人", project_member_path(project, :role => 2) ,:course =>'1' %>)
|
||||
(<%= "#{studentCount(project)}人" %>)
|
||||
<% files_count = (project.attachments.count.to_i+Version.joins(:project).where("projects.id=#{project.id}").count.to_i).to_s %>
|
||||
(<%=link_to "#{files_count}份", project_files_path(project) %>资料)
|
||||
</div>
|
||||
<!-- <div class='desc_item' style="">
|
||||
<span class='font_lighter' title=<%#=project.description.to_s%>><%#=project.description.truncate(25, omission: '...')%></span>
|
||||
</div> -->
|
||||
|
||||
<div class='join_course_link'>
|
||||
<% if !course_endTime_timeout?(project)%>
|
||||
<div >
|
||||
|
@ -155,6 +175,50 @@
|
|||
</div>
|
||||
</li>
|
||||
<% end; reset_cycle %>
|
||||
<% if school_course.count < 9 %>
|
||||
<li>
|
||||
<h1></h1>
|
||||
<p id="errorExplanation">
|
||||
该学校开设课程较少,您可以查看其他学校课程
|
||||
</p>
|
||||
</li>
|
||||
<% find_all_new_hot_course(9 - school_course.count,params[:school_id]).map do |project| %>
|
||||
<li class='<%= cycle("odd", "even") %>' title=<%=project.description.to_s%>>
|
||||
<div class='avatar'>
|
||||
<%= image_tag(get_course_avatar(project), :class => "avatar-4") %>
|
||||
</div>
|
||||
<!-- 上左下右 -->
|
||||
<div class='desc_item' >
|
||||
<span class=''>
|
||||
<% course = Course.find_by_extra(project.identifier)%>
|
||||
<% if(course.school == nil) %>
|
||||
|
||||
<% else %>
|
||||
<%= course.school.name.try(:gsub, /(.+)$/, '\1:') %>
|
||||
<% end %>
|
||||
</span>
|
||||
<span class='font_bolder'>
|
||||
<%= link_to(course.try(:teacher).try(:name), user_path(course.teacher)) %>
|
||||
<%#=course.try(:teacher).try(:name)%>
|
||||
</span>
|
||||
</div>
|
||||
<div class='desc_item text_nowrap' style="width: 310px;">
|
||||
[<%= get_course_term project %>]
|
||||
<%= link_to( project.name, project_path(project.id), :class => "d-g-blue d-p-project-name",:title => "#{project.name}" )%>
|
||||
<%= "#{studentCount(project)}人" %> )
|
||||
<% files_count = (project.attachments.count.to_i+Version.joins(:project).where("projects.id=#{project.id}").count.to_i).to_s %>
|
||||
(<%=link_to "#{files_count}份", project_files_path(project) %>资料)
|
||||
</div>
|
||||
<div>
|
||||
<% if !course_endTime_timeout?(project)%>
|
||||
<div >
|
||||
<%= new_watcher_link(project, User.current)%>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</li>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<% end %>
|
||||
|
@ -201,4 +265,5 @@
|
|||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<%= render partial: 'link_to_another' %>
|
|
@ -4,8 +4,21 @@
|
|||
|
||||
$(function(){
|
||||
$("#main").find("a").attr("target", "_blank");
|
||||
setCss();
|
||||
});
|
||||
|
||||
//设置div居中
|
||||
function setCss()
|
||||
{
|
||||
var mainBar = $('#main-content-bar')[0];
|
||||
var topHeight = mainBar.offsetHeight;
|
||||
var welcomeLeft = $('#welcome_left')[0];
|
||||
var leftHeight = welcomeLeft.offsetHeight;
|
||||
var searchbar = $('#search-bar')[0];
|
||||
var searchHeight = searchbar.offsetHeight;
|
||||
welcomeLeft.style.marginTop = (topHeight - leftHeight)/2 + "px";
|
||||
searchbar.style.marginTop = (topHeight - searchHeight)/2 + "px";
|
||||
//alert((topHeight - leftHeight)/2 );
|
||||
}
|
||||
// 给主页用户弹新页面
|
||||
$(document).ready(function($) {
|
||||
$("#loggedas").find("a").attr("target", "_blank");
|
||||
|
@ -18,14 +31,14 @@
|
|||
<%= link_to image_tag('/images/qrweixin.jpg', size: '150x150', alt: 'trustie', class: "weixin" ), home_path %>
|
||||
<div class="weixin-content">微信扫码</div>
|
||||
</div>
|
||||
<div class="main-content-bar">
|
||||
<div class="main-content-bar" id="main-content-bar">
|
||||
<div style="float: left">
|
||||
<%= image_tag '/images/transparent.png', size: "75x75" %>
|
||||
</div>
|
||||
<div class="welcome_left" >
|
||||
<div class="welcome_left" id="welcome_left">
|
||||
<span class="font_welcome_trustie"><%= l(:label_welcome_trustie) %><%= l(:label_welcome_trustie_project) %></span> <span class="font_welcome_tdescription">, <%= l(:label_welcome_trustie_project_description) %></span>
|
||||
</div>
|
||||
<div class="search-bar">
|
||||
<div class="search-bar" id="search-bar">
|
||||
<%= render :partial => "search_project", :locals => {:project_type => 0}%>
|
||||
</div>
|
||||
<div style="clear: both;"></div>
|
||||
|
@ -136,3 +149,4 @@
|
|||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<%= render partial: 'link_to_another' %>
|
|
@ -16,14 +16,21 @@
|
|||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
RedmineApp::Application.routes.draw do
|
||||
resources :homework_users
|
||||
|
||||
|
||||
resources :no_uses
|
||||
delete 'no_uses', :to => 'no_uses#delete'
|
||||
|
||||
resources :apply_project_masters
|
||||
delete 'apply_project_masters', :to => 'apply_project_masters#delete'
|
||||
|
||||
resources :homework_attach
|
||||
match 'homework_attach/addjours', :controller => 'homework_attach', :action => 'addjours', :via => [:get,:post]
|
||||
resources :homework_attach do
|
||||
collection do
|
||||
match 'addjours', via: [:get, :post]
|
||||
match 'add_jour_reply', via: [:get,:post]
|
||||
end
|
||||
end
|
||||
resources :open_source_projects do
|
||||
collection do
|
||||
match 'search', via: [:get, :post]
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
class CreateHomeworkUsers < ActiveRecord::Migration
|
||||
def change
|
||||
create_table :homework_users do |t|
|
||||
t.string :homework_attach_id
|
||||
t.string :user_id
|
||||
|
||||
t.timestamps
|
||||
end
|
||||
end
|
||||
end
|
|
@ -0,0 +1,7 @@
|
|||
class AddNameToHomeworkAttach < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :homework_attaches, :name, :string
|
||||
add_column :homework_attaches, :description, :string
|
||||
add_column :homework_attaches, :state, :int
|
||||
end
|
||||
end
|
23
db/schema.rb
23
db/schema.rb
|
@ -11,7 +11,7 @@
|
|||
#
|
||||
# It's strongly recommended to check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(:version => 20140509020307) do
|
||||
ActiveRecord::Schema.define(:version => 20140519070751) do
|
||||
|
||||
create_table "activities", :force => true do |t|
|
||||
t.integer "act_id", :null => false
|
||||
|
@ -52,14 +52,11 @@ ActiveRecord::Schema.define(:version => 20140509020307) do
|
|||
add_index "attachments", ["container_id", "container_type"], :name => "index_attachments_on_container_id_and_container_type"
|
||||
add_index "attachments", ["created_on"], :name => "index_attachments_on_created_on"
|
||||
|
||||
create_table "attachmentstypes", :id => false, :force => true do |t|
|
||||
t.integer "id", :null => false
|
||||
t.integer "typeId"
|
||||
create_table "attachmentstypes", :force => true do |t|
|
||||
t.integer "typeId", :null => false
|
||||
t.string "typeName", :limit => 50
|
||||
end
|
||||
|
||||
add_index "attachmentstypes", ["id"], :name => "id"
|
||||
|
||||
create_table "auth_sources", :force => true do |t|
|
||||
t.string "type", :limit => 30, :default => "", :null => false
|
||||
t.string "name", :limit => 60, :default => "", :null => false
|
||||
|
@ -325,9 +322,12 @@ ActiveRecord::Schema.define(:version => 20140509020307) do
|
|||
create_table "homework_attaches", :force => true do |t|
|
||||
t.integer "bid_id"
|
||||
t.integer "user_id"
|
||||
t.datetime "created_at", :null => false
|
||||
t.datetime "updated_at", :null => false
|
||||
t.datetime "created_at", :null => false
|
||||
t.datetime "updated_at", :null => false
|
||||
t.string "reward"
|
||||
t.string "name"
|
||||
t.string "description"
|
||||
t.integer "state"
|
||||
end
|
||||
|
||||
create_table "homework_for_courses", :force => true do |t|
|
||||
|
@ -335,6 +335,13 @@ ActiveRecord::Schema.define(:version => 20140509020307) do
|
|||
t.integer "bid_id"
|
||||
end
|
||||
|
||||
create_table "homework_users", :force => true do |t|
|
||||
t.string "homework_attach_id"
|
||||
t.string "user_id"
|
||||
t.datetime "created_at", :null => false
|
||||
t.datetime "updated_at", :null => false
|
||||
end
|
||||
|
||||
create_table "issue_categories", :force => true do |t|
|
||||
t.integer "project_id", :default => 0, :null => false
|
||||
t.string "name", :limit => 30, :default => "", :null => false
|
||||
|
|
|
@ -1769,6 +1769,14 @@ p.pagination {margin-top:8px; font-size: 90%}
|
|||
clear:left;
|
||||
}
|
||||
|
||||
.tabular .tabDiv{
|
||||
margin: 0;
|
||||
padding: 3px 0 3px 0;
|
||||
padding-left: 100px; /* width of left column containing the label elements *//*by young*/
|
||||
/*min-height: 1.8em;*/
|
||||
clear:left;
|
||||
}
|
||||
|
||||
html>body .tabular p {overflow:hidden;}
|
||||
|
||||
.tabular label{
|
||||
|
@ -1830,7 +1838,7 @@ span.required {color: #bb0000;}
|
|||
.summary {font-style: italic;}
|
||||
|
||||
#attachments_fields input.description {margin-left:4px; width:100px; }
|
||||
#attachments_fields span {display:block; white-space:nowrap; font-family:'微软雅黑';}
|
||||
#attachments_fields span .boldSpan{display:block; white-space:nowrap; font-family:'微软雅黑';}
|
||||
#attachments_fields input.filename {border:0; height:1.8em; width:150px; color:#555; background-color:inherit; background:url(../images/attachment.png) no-repeat 1px 50%; padding-left:18px;}/*Modified by young*/
|
||||
#attachments_fields .ajax-waiting input.filename {background:url(../images/hourglass.png) no-repeat 0px 50%;}
|
||||
#attachments_fields .ajax-loading input.filename {background:url(../images/loading.gif) no-repeat 0px 50%;}
|
||||
|
|
|
@ -3,6 +3,20 @@
|
|||
*/
|
||||
/************************** 某部分开始 *****************************/
|
||||
/************************** 某部分结束 *****************************/
|
||||
|
||||
/************************** 页脚 footer 开始 *****************************/
|
||||
.linkother{
|
||||
width: 460px;
|
||||
margin: 70px auto -35px ;
|
||||
}
|
||||
.link_other_item{
|
||||
width: 150px;
|
||||
text-align: center;
|
||||
display: inline-block;
|
||||
font-size: 14px;
|
||||
}
|
||||
/************************** 页脚 footer 结束 *****************************/
|
||||
|
||||
.top_bar{
|
||||
height: auto;
|
||||
}
|
||||
|
@ -312,11 +326,11 @@ a.attachments_list_color {
|
|||
}
|
||||
.main-content-bar{
|
||||
margin: 0;
|
||||
margin-top: 35px;
|
||||
margin-top: 12px;
|
||||
padding: 0;
|
||||
margin-bottom: 35px;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
margin-bottom: 2px;
|
||||
width: 100%;
|
||||
height: 78;
|
||||
}
|
||||
|
||||
.weixin-content{
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
|
||||
|
||||
one:
|
||||
homework_attach_id: MyString
|
||||
user_id: MyString
|
||||
|
||||
two:
|
||||
homework_attach_id: MyString
|
||||
user_id: MyString
|
Loading…
Reference in New Issue