685 lines
20 KiB
JavaScript
685 lines
20 KiB
JavaScript
//验证搜索时输入字
|
||
function regexName(content) {
|
||
var name = $.trim($("#name").val());
|
||
if (name.length == 0) {
|
||
$("#project_name_span").text(content);
|
||
$("#project_name_span").css('color', '#ff0000');
|
||
$("#project_name_span").focus();
|
||
return false;
|
||
}
|
||
else {
|
||
$("#project_name_span").text("");
|
||
return true;
|
||
}
|
||
}
|
||
|
||
function submitSerch(content) {
|
||
if (regexName(content)) {
|
||
$("#project_search_form").submit();
|
||
}
|
||
}
|
||
|
||
|
||
// 项目描述超过展开
|
||
//$(function(){
|
||
// $(".subNav").click(function(){
|
||
//
|
||
// })
|
||
//})
|
||
function expand_tools_expand(content) {
|
||
if (content == "invit") {
|
||
$("#expand_tools_expand_invit").toggleClass("currentDd").siblings(".subNav").removeClass("currentDd");
|
||
$("#expand_tools_expand_invit").toggleClass("currentDt").siblings(".subNav").removeClass("currentDt");
|
||
$("#expand_tools_expand_invit").next(".navContent").slideToggle(500).siblings(".navContent").slideUp(500);
|
||
}
|
||
else {
|
||
// $("#expand_tools_expand").toggleClass("currentDd").siblings(".subNav").removeClass("currentDd");
|
||
// $("#expand_tools_expand").toggleClass("currentDt").siblings(".subNav").removeClass("currentDt");
|
||
// $("#expand_tools_expand").next(".navContent").slideToggle(500).siblings(".navContent").slideUp(500);
|
||
$("#navContent").toggle(500);
|
||
}
|
||
|
||
// 修改数字控制速度, slideUp(500)控制卷起速度
|
||
}
|
||
|
||
// 描述显示更多信息
|
||
function show_more_msg() {
|
||
$("#course_description").toggleClass("course_description_none");
|
||
var information = $("#expend_more_information");
|
||
var arrow = $("#arrow");
|
||
var val = information.attr("value");
|
||
if (val == "show_more") {
|
||
$("#expend_more_information").text("收起描述信息");
|
||
information.attr("value", "hide_more");
|
||
arrow.attr("src", "/images/jiantouup.jpg")
|
||
}
|
||
else {
|
||
$("#expend_more_information").text("展开更多信息");
|
||
information.attr("value", "show_more");
|
||
arrow.attr("src", "/images/jiantou.jpg")
|
||
}
|
||
}
|
||
function show_more_reply(contentid, id2, id3) {
|
||
$(contentid).toggleClass("course_description_none");
|
||
var information = $(id2);
|
||
var arrow = $(id3);
|
||
var val = information.attr("value");
|
||
if (val == "show_more") {
|
||
$(id2).text("[收起]");
|
||
information.attr("value", "hide_more");
|
||
information.attr("style", "color:#3ca5c6");
|
||
arrow.attr("src", "/images/jiantouup.jpg")
|
||
}
|
||
else {
|
||
$(id2).text("[展开]");
|
||
information.attr("value", "show_more");
|
||
arrow.attr("src", "/images/jiantou.jpg")
|
||
information.attr("style", "color:#0781b4;");
|
||
}
|
||
}
|
||
function show_more_reply1(contentid, id2, id3) {
|
||
$(contentid).toggleClass("course_description_none");
|
||
var information = $(id2);
|
||
var arrow = $(id3);
|
||
var val = information.attr("value");
|
||
if (val == "show_more") {
|
||
$(id2).text("[收起]");
|
||
information.attr("value", "hide_more");
|
||
information.attr("style", "color:#3ca5c6");
|
||
arrow.attr("src", "/images/jiantouup.jpg")
|
||
}
|
||
else {
|
||
$(id2).text("[展开]");
|
||
information.attr("value", "show_more");
|
||
arrow.attr("src", "/images/jiantou.jpg")
|
||
information.attr("style", "color:#0781b4;");
|
||
}
|
||
}
|
||
//项目版本库git帮助文档显示
|
||
//function showhelpAndScrollTo(id) {
|
||
// $('#' + id).toggle();
|
||
// if(cookieget("repositories_visiable") == "true")
|
||
// {
|
||
// cookiesave("repositories_visiable", false,'','','');
|
||
// }
|
||
// else
|
||
// {
|
||
// cookiesave("repositories_visiable", true,'','','');
|
||
// }
|
||
// var information = $("#showgithelp");
|
||
// var val = information.attr("value");
|
||
// if(val=="show_help")
|
||
// {
|
||
// $("#showgithelp").text("收起Git操作指南");
|
||
// information.attr("value", "hide_help");
|
||
// }
|
||
// else
|
||
// {
|
||
// $("#showgithelp").text("展开Git操作指南");
|
||
// information.attr("value", "show_help");
|
||
// }
|
||
//}
|
||
function showhelpAndScrollToMessage(id, id1, count) {
|
||
$('#' + id).toggle();
|
||
if(cookieget("repositories_visiable") == "true")
|
||
{
|
||
cookiesave("repositories_visiable", false,'','','');
|
||
}
|
||
else
|
||
{
|
||
cookiesave("repositories_visiable", true,'','','');
|
||
}
|
||
var information = $(id1);
|
||
var val = information.attr("value");
|
||
if(val=="show_help")
|
||
{
|
||
$(id1).text("收起回复(" + count + ")" );
|
||
information.attr("value", "hide_help");
|
||
information.attr("style", "color:#3ca5c6");
|
||
}
|
||
else
|
||
{
|
||
$(id1).text("展开回复(" + count + ")");
|
||
information.attr("value", "show_help");
|
||
information.attr("style", "color:#0781b4;");
|
||
}
|
||
}
|
||
|
||
|
||
$(function(){
|
||
var information = $("#showgithelp");
|
||
var val = information.attr("value");
|
||
if(cookieget("repositories_visiable") == "true")
|
||
{
|
||
$('#repos_git_more').hide();
|
||
}
|
||
else
|
||
{
|
||
$('#repos_git_more').show();
|
||
$("#showgithelp").text("收起Git操作指南");
|
||
information.attr("value", "hide_help");
|
||
}
|
||
});
|
||
|
||
|
||
|
||
///////////////////////////////////////////////////////////////
|
||
//////////////////////////////////////////////////////////////项目讨论区
|
||
function regexSubject(id) {
|
||
|
||
var subjectid = "#message_subject" + id ;
|
||
var content = $.trim($(subjectid).val());
|
||
var message = "#subject_span" + id;
|
||
if (content.length == 0) {
|
||
$(message).text("主题不能为空");
|
||
$(message).css('color', '#ff0000');
|
||
return false;
|
||
}
|
||
else {
|
||
$(message).text("填写正确");
|
||
$(message).css('color', '#008000');
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
function regexContent(){
|
||
}
|
||
function regexContentxx(id) {
|
||
|
||
var contentid = "#message_content" + id;
|
||
var message = "#message_content_span"+ id;
|
||
var ps=document.getElementById('message_content' + id).previousElementSibling.children[1].children[0];
|
||
alert(ps);
|
||
document.getElementById('message_content' + id).value = ps.value;
|
||
var content = $.trim($(contentid).val());
|
||
alert(content);
|
||
if (content.length == 0) {
|
||
|
||
$(message).text("描述不能为空");
|
||
$(message).css('color', '#ff0000');
|
||
return false;
|
||
}
|
||
else {
|
||
|
||
$(message).text("填写正确");
|
||
$(message).css('color', '#008000');
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
|
||
// 项目讨论区编辑和提交
|
||
function submitProjectsBoard(id) {
|
||
var formid = "#message-form" + id;
|
||
|
||
if (regexSubject(id) && regexContent(id)) {
|
||
|
||
$(formid).submit();
|
||
}
|
||
}
|
||
// 提交新闻
|
||
function regexTitle() {
|
||
var name = $("#news_title").val();
|
||
if (name.length == 0) {
|
||
$("#title_notice_span").text("标题不能为空");
|
||
$("#title_notice_span").css('color', '#ff0000');
|
||
$("#title_notice_span").focus();
|
||
return false;
|
||
}
|
||
else if (name.length <= 60) {
|
||
$("#title_notice_span").text("填写正确");
|
||
$("#title_notice_span").css('color', '#008000');
|
||
return true;
|
||
}
|
||
else {
|
||
$("#title_notice_span").text("标题超过60个字符");
|
||
$("#title_notice_span").css('color', '#ff0000');
|
||
$("#title_notice_span").focus();
|
||
return false;
|
||
}
|
||
}
|
||
|
||
function regexDescription() {
|
||
project_news_description_editor.sync();
|
||
var name = project_news_description_editor.html();
|
||
if (name.length == 0) {
|
||
$("#description_notice_span").text("描述不能为空");
|
||
$("#description_notice_span").css('color', '#ff0000');
|
||
$("#description_notice_span").focus();
|
||
return false;
|
||
}
|
||
/*else if (name.length > 10000)
|
||
{
|
||
$("#description_notice_span").text("描述超过10000个字符");
|
||
$("#description_notice_span").css('color', '#ff0000');
|
||
$("#description_notice_span").focus();
|
||
return false;
|
||
}*/
|
||
else {
|
||
$("#description_notice_span").text("填写正确");
|
||
$("#description_notice_span").css('color', '#008000');
|
||
return true;
|
||
}
|
||
}
|
||
|
||
function submitNews() {
|
||
if (regexTitle() && regexDescription()) {
|
||
$("#news-form").submit();
|
||
}
|
||
}
|
||
|
||
function submitFocus(obj) {
|
||
$(obj).focus();
|
||
}
|
||
|
||
|
||
function submitComment()
|
||
{
|
||
if (newsReplyVerify()) {
|
||
comment_editor.sync();
|
||
$("#add_comment_form").submit();
|
||
}
|
||
}
|
||
|
||
function newsReplyVerify() {
|
||
var content = comment_editor.html();
|
||
if(comment_editor.isEmpty()) {
|
||
$("#add_reply_news").text("评论不能为空");
|
||
$("#add_reply_news").css('color', '#ff0000');
|
||
$("#news_submit_comment").one('click',function(){
|
||
submitComment();
|
||
});
|
||
return false;
|
||
} else {
|
||
$("#add_reply_news").text("填写正确");
|
||
$("#add_reply_news").css('color', '#008000');
|
||
return true;
|
||
}
|
||
}
|
||
|
||
//当项目描述长度小于112px时,不显示更多按钮
|
||
$(function () {
|
||
// alert($("#course_description_content").height());
|
||
if ($("#course_description_content").height() > 400) {
|
||
$("#lg-foot").show();
|
||
}
|
||
});
|
||
|
||
//配置项目信息
|
||
function course_setting(id) {
|
||
//alert(id);
|
||
$('#tb_' + id).removeClass().addClass("hwork_hovertab");
|
||
$('#tbc_0' + id).removeClass().addClass("dis");
|
||
$('#tb_' + (3 - id)).removeClass().addClass("hwork_normaltab");
|
||
$('#tbc_0' + (3 - id)).removeClass().addClass("undis");
|
||
}
|
||
|
||
//项目类型(朋友圈、开发组、科研组)
|
||
function show_window() {
|
||
$('#light').css('display', 'block');
|
||
$('#fade').css('display', 'block');
|
||
}
|
||
|
||
function close_window(type) {
|
||
$('#light').css('display', 'none');
|
||
$('#fade').css('display', 'none');
|
||
|
||
$("#" + type).attr("checked", "checked");
|
||
}
|
||
//弹框l
|
||
|
||
/////////////////////////////////////////////
|
||
//项目配置
|
||
function project_setting(n) {
|
||
for (var i = 1; i < 9; i++) {
|
||
if (i == n) {
|
||
$("#pro_st_tb_" + i).removeClass().addClass("active");
|
||
$("#pro_st_tbc_0" + i).removeClass().addClass("pro_st_dis");
|
||
}
|
||
else {
|
||
$("#pro_st_tb_" + i).removeClass().addClass("pro_st_normaltab");
|
||
$("#pro_st_tbc_0" + i).removeClass().addClass("pro_st_undis");
|
||
}
|
||
}
|
||
}
|
||
|
||
//配置-验证项目名称
|
||
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) {
|
||
project_setting_editor.sync();
|
||
if (regex_project_name()) {
|
||
$("#edit_project_" + id).submit();
|
||
}
|
||
}
|
||
|
||
//配置--成员---申请列表--拒绝
|
||
function refusal_applied_member() {
|
||
$('#new_membership').append("<input name = 'refusal_button' style='display: none;'>");
|
||
$('#new_membership').submit();
|
||
}
|
||
|
||
//新闻描述显示更多信息
|
||
function news_show_more_des(id) {
|
||
$('#news_description_' + id).toggleClass("news_description_none");
|
||
}
|
||
|
||
$(document).ready(function () {
|
||
$("#issue_project_id").css("width", "100%");
|
||
$("#issue_project_id").css("overflow ", "hidden");
|
||
// $(".jstEditor").css("margin-left ","80px");
|
||
//issue_project_id
|
||
});
|
||
|
||
function showAndScrollTo(id, focus) {
|
||
|
||
$('#' + id).show();
|
||
if (focus !== null) {
|
||
$('#' + focus).focus();
|
||
issue_journal_kind_reply.focus();
|
||
}
|
||
$('html, body').animate({scrollTop: $('#' + id).offset().top}, 400);
|
||
}
|
||
|
||
function quote_issue_journal(){
|
||
alert("test");
|
||
issue_journal_kind_reply.focus();
|
||
issue_journal_kind_reply.cmd.range.setStart(issue_journal_kind_reply.cmd.range.startOffset)
|
||
}
|
||
|
||
/*缺陷完成度决定缺陷状态*/
|
||
function PrecentChange(obj) {
|
||
var _v = obj;
|
||
if (_v == 100) {
|
||
//var select=$("select[id='issue_status_id']");
|
||
$("select[id='issue_status_id']").find("option[value='3']").attr("selected", "selected");
|
||
}
|
||
else if (_v == 0) {
|
||
//alert(1);
|
||
$("select[id='issue_status_id']").find("option[value='1']").attr("selected", "selected");
|
||
}
|
||
else if (_v != 100 && _v != 0) {
|
||
// alert(2);
|
||
$("select[id='issue_status_id']").find("option[value='2']").attr("selected", "selected");
|
||
}
|
||
}
|
||
|
||
// Can't use Rails' remote select because we need the form data
|
||
// 根据缺陷状态值改变完成度状态
|
||
function updateIssueFrom(url) {
|
||
|
||
$.ajax({
|
||
url: url,
|
||
type: 'post',
|
||
data: $('#issue-form').serialize()
|
||
});
|
||
|
||
}
|
||
|
||
// firefox pre标签换行
|
||
$(document).ready(function () {
|
||
var userAgent = navigator.userAgent.toLowerCase();
|
||
var browser = {
|
||
version: (userAgent.match(/.+(?:rv|it|ra|ie)[/: ]([d.]+)/) || [])[1],
|
||
safari: /webkit/.test(userAgent),
|
||
opera: /opera/.test(userAgent),
|
||
msie: /msie/.test(userAgent) && !/opera/.test(userAgent),
|
||
mozilla: /mozilla/.test(userAgent) && !/(compatible|webkit)/.test(userAgent)
|
||
};
|
||
if (browser.mozilla || browser.opera) {
|
||
$("pre").addClass("break_word_firefox");
|
||
}
|
||
else {
|
||
$("pre").addClass("break_word");
|
||
}
|
||
|
||
});
|
||
|
||
//论坛提交
|
||
function submitProjectBoard()
|
||
{
|
||
if(regexSubject()&®exContent())
|
||
{
|
||
$("#message-form").submit();
|
||
}
|
||
}
|
||
|
||
//cookie记忆html区块 显示/隐藏 的代码 start
|
||
$(function(){
|
||
var personalized_expand_key = "personalized_expand";
|
||
function personalized_init(){
|
||
var personalized_map = cookieget(personalized_expand_key);
|
||
if(personalized_map!=false){
|
||
personalized_map = JSON.parse(personalized_map);
|
||
$("*[nhtype='toggle4cookie']").each(function(){
|
||
var personalized_id=$(this).data('id');
|
||
var val = personalized_map[personalized_id];
|
||
if(val!=undefined && val!=$(this).data('val')){
|
||
personalized_click($(this),0);
|
||
}
|
||
});
|
||
}
|
||
}
|
||
function personalized_click(obj,timeout){
|
||
var target = $(obj.data('target'));
|
||
var oldval = obj.data('val');
|
||
var val='';
|
||
if(oldval=='expand'){val='retract';}else{val='expand';}
|
||
obj.data('val',val);
|
||
var personalized_map = cookieget(personalized_expand_key);
|
||
if(personalized_map == false){
|
||
personalized_map={};
|
||
}else{
|
||
personalized_map = JSON.parse(personalized_map);
|
||
}
|
||
var personalized_id=obj.data('id');
|
||
personalized_map[personalized_id]=val;
|
||
cookiesave(personalized_expand_key,JSON.stringify(personalized_map));
|
||
target.toggle(timeout);
|
||
}
|
||
$("*[nhtype='toggle4cookie']").on('click',function(){
|
||
personalized_click($(this),500);
|
||
});
|
||
|
||
personalized_init();
|
||
});
|
||
//cookie记忆html区块 显示/隐藏 的代码 end
|
||
|
||
// 新建项目的时候判断是否与我已有的项目重复
|
||
function judgeprojectname(){
|
||
$('#new_project').validate({
|
||
errorPlacement: function(error, element){
|
||
alert('error')
|
||
},
|
||
success: function(label){
|
||
alert('ok')
|
||
},
|
||
onkeyup: false,
|
||
rules : {
|
||
name:{required : true,
|
||
remote : {
|
||
url : 'projects/judge_same_projectname',
|
||
type:'get',
|
||
dataType:'text',
|
||
data:{
|
||
name : function(){ return $.trim( $("#name").val() ); }
|
||
},
|
||
dataFilter:function( data ){
|
||
if( data=='true')return false; else return true;
|
||
}
|
||
}
|
||
}
|
||
},
|
||
messages : {
|
||
name:{required : "请填写项目名称!",remote:'您已新建过同名项目,请修改项目名称!'}
|
||
}
|
||
});
|
||
}
|
||
|
||
//用户反馈
|
||
function submitProjectFeedback() {
|
||
$("#project_feedback_form").submit();
|
||
}
|
||
|
||
// 点击按钮复制功能
|
||
function jsCopy(){
|
||
var e=document.getElementById("copy_rep_content");
|
||
e.select();
|
||
document.execCommand("Copy");
|
||
}
|
||
function jsCopy2(id){
|
||
//alert("copy_rep_content2_" + id);
|
||
var e=document.getElementById("copy_rep_content2_" + id);
|
||
e.select();
|
||
document.execCommand("Copy");
|
||
}
|
||
|
||
function zip(){
|
||
alert("该功能正在紧张的开发中,我们会争取在最短时间内上线,如若对您工作造成不便敬请谅解!")
|
||
}
|
||
|
||
//取消关联
|
||
function cancel_relation(orgId,projectId){
|
||
if(confirm("确定取消关联吗?") == false) return;
|
||
$.ajax({
|
||
url:'/org_projects/'+orgId+"?project_id="+projectId,
|
||
type:'DELETE',
|
||
success:function(data) {
|
||
$.ajax({
|
||
url: ' /projects/'+projectId+'/search_public_orgs_not_in_project?hint_flag=true',
|
||
type:'get'
|
||
});
|
||
}
|
||
});
|
||
}
|
||
|
||
function issueEditShow(){
|
||
$("#issue_detail").hide();
|
||
$(".resources ").hide();
|
||
$("#issue_edit").show();
|
||
$("#project_issue_info_show").hide();
|
||
}
|
||
|
||
function issueDetailShow(){
|
||
$("#issue_edit").hide();
|
||
$("#issue_detail").show();
|
||
$(".resources ").show();
|
||
$("#project_issue_info_show").show();
|
||
}
|
||
|
||
//项目讨论区提交
|
||
function regexTopicSubject() {
|
||
var name = $("#message_subject").val();
|
||
if(name.length ==0)
|
||
{
|
||
$("#subjectmsg").text("标题不能为空");
|
||
$("#subjectmsg").css('color','#ff0000');
|
||
$("#message_subject").focus();
|
||
return false;
|
||
}
|
||
else if(name.length <= 255)
|
||
{
|
||
$("#subjectmsg").text("填写正确");
|
||
$("#subjectmsg").css('color','#008000');
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
$("#subjectmsg").text("标题超过255个字符");
|
||
$("#subjectmsg").css('color','#ff0000');
|
||
$("#message_subject").focus();
|
||
return false;
|
||
}
|
||
}
|
||
|
||
function regexTopicDescription()
|
||
{
|
||
var name = message_content_editor.html();
|
||
if(message_content_editor.isEmpty())
|
||
{
|
||
$("#message_content_span").text("描述不能为空");
|
||
$("#message_content_span").css('color','#ff0000');
|
||
return false;
|
||
}
|
||
// else if(name.length >=6000){
|
||
// $("#message_content_span").text("描述最多3000个汉字(或6000个英文字符)");
|
||
// $("#message_content_span").css('color','#ff0000');
|
||
// return false;
|
||
// }
|
||
else
|
||
{
|
||
$("#message_content_span").text("填写正确");
|
||
$("#message_content_span").css('color','#008000');
|
||
return true;
|
||
}
|
||
}
|
||
function submit_topic_project()
|
||
{
|
||
if(regexTopicSubject() && regexTopicDescription())
|
||
{
|
||
message_content_editor.sync();
|
||
$("#message-form-project").submit();
|
||
}
|
||
}
|
||
|
||
function reset_topic(){
|
||
|
||
}
|
||
|
||
//查找TAG资源
|
||
var clickFunction = null; //单击事件函数
|
||
var isdb = false; //是否双击
|
||
function search_tag_attachment(url,tag_name,q,course_id,sort)
|
||
{
|
||
//alert("111");
|
||
//clearTimeout(clickFunction);
|
||
clickFunction = setTimeout(function() {
|
||
search_func()
|
||
}, 500);
|
||
function search_func(){
|
||
if(isdb!= false ) return;
|
||
$.get(
|
||
url,
|
||
{
|
||
tag_name: tag_name,
|
||
q: q,
|
||
course_id:course_id
|
||
},
|
||
function (data) {
|
||
|
||
}
|
||
);
|
||
}
|
||
|
||
}
|
||
|
||
|
||
function choice_branch(name, branch, source_rev, forked_rev) {
|
||
switch (name) {
|
||
case "source_project_name" :
|
||
var branchOptions = source_rev;
|
||
break;
|
||
case "forked_project_name" :
|
||
var branchOptions = forked_rev;
|
||
break;
|
||
default:
|
||
var branchOptions = source_rev;
|
||
break;
|
||
}
|
||
|
||
branch.options.length = 0;
|
||
for (var i = 0; i < branchOptions.length; i++) {
|
||
branch.options[i] = new Option(branchOptions[i]);
|
||
}
|
||
} |