Вход Регистрация
Файл: js/al/tasks.js
Строк: 1089
<?php
Tasks 
= {
address"tasks",

switchTab: function(elevt) {
  if (
evt.button) return true;
  
show('tasks_loading');
  if (
hasClass(el.parentNode'task_tab')) {
    
each(geByClass('task_tab_active'ge('tasks_tabs')), function(iv) {
      
removeClass(v'task_tab_active');
      
addClass(v'task_tab');
    });
    
removeClass(el.parentNode'task_tab');
    
addClass(el.parentNode'task_tab_active');
  } else if (
hasClass(el.firstChild'tasks_section_filter')) {
    
each(geByClass('tasks_section_filter'ge('tasks_section_filters')), function(iv) {
      
removeClass(v'selected');
    });
    
addClass(el.firstChild'selected');
  }
  return 
nav.go(elevt);
},

scrollCheck: function () {
  if (
browser.mobile || cur.disableAutoMore || cur.loadingFeed) return;
  var 
more ge('show_more_link');
  if (!
more) return;

  var 
docEl document.documentElement;
  var 
ch window.innerHeight || docEl.clientHeight || bodyNode.clientHeight;
  var 
st window.pageYOffset || pageNode.scrollTop || docEl.scrollTop;

  if (
st ch 400 more.offsetTop) {
    
Tasks.showMore();
  }
},

getPage: function(offset) {
  
show('pages_loading_top');
  
show('pages_loading_bottom');
  var 
_n nav.objLocact = (cur.act == 'viewbug') ? 'get_comments' cur.act;
  
ajax.post(this.address, {actactoffsetoffsetqcur.qbid: (cur.bug_id cur.bug_id _n.bid), section_n.sectiontype_n.typesent_n.sentopened_n.openedpriority_n.priorityid_n.idload1}, {
    
cache1,
    
onDone: function(contentscript) {
      if (
cur.act == 'viewbug') {
        
ge('task_comments').innerHTML content;
      } else {
        
ge('tasks_content').innerHTML content;
      }
      if (
window.tooltipstooltips.hideAll();
      if (
script) eval(script);
      if (
offset || cur.act == 'viewbug') {
        
nav.setLoc(extend(nav.objLoc, {offsetoffset}));
      } else {
        
delete nav.objLoc.offset;
        
nav.setLoc(nav.objLoc);
      }
    },
    
onFail: function() {
      
hide('pages_loading_top');
      
hide('pages_loading_bottom');
    }
  });
  return 
false;
},

search: function() {
  var 
ge('search').valuenewLoc;
  if (
q) {
    
newLoc = {0nav.objLoc[0], act: (cur.act == 'comments' cur.act 'bugs'), qq};
  } else {
    
newLoc = {0nav.objLoc[0], actcur.act};
  }
  
nav.go(newLoc);
},

addTask: function() {
  return !
showBox(this.address, {act'edit'}, { params: {width'520px'} });
},

editTask: function(bid) {
  return !
showBox(this.address, {act'edit'bidbid}, { params: {width'520px'} });
},

saveTask: function(bidhash) {
  if(!
ge('title').value){
    
notaBene('title');
    return;
  }
  if(!
ge('desc').value){
    
notaBene('desc');
    return;
  }
  if(!
cur.sectionEditFilter.val()){
    
notaBene(cur.sectionEditFilter.selector);
    
notaBene(cur.sectionEditFilter.input);
    return;
  }
  var 
privacy Privacy.getValue('privacy');
  var 
pr_data privacy.split('_');
  var 
pr_type intval(pr_data[0]);
  var 
new_privacy 0;
  if (
pr_type) {
    var 
pr_cats pr_data[1].split(',');
    for (var 
i in pr_cats) {
      
new_privacy += << (intval(pr_cats[i]) - 1);
    }
  } else {
    for (var 
i in cur.privacy.privacy_lists) {
      
new_privacy += << (intval(i) - 1);
    }
  }
  var 
limit_type intval(cur.deadlineEditFilter.val()),
      
task_type radioBtns.new_task_type.val;
  var 
query = {
    
act'save',
    
bidbid,
    
typetask_type,
    
titlege('title').value,
    
descge('desc').value,
    
browserisVisible('browser') ? ge('browser').value '',
    
prioritycur.priorityEditFilter.val(),
    
privacynew_privacy,
    
developercur.developerEditFilter.val(),
    
author_idcur.editAuthorId,
    
limit_typelimit_type,
    
sectionscur.sectionEditFilter.val(),
    
hashhash
  
}
  if (
limit_type == -1) {
    
query.limit_date ge('custom_date').value;
  }
  if (!
bid) {
    
query.send_sms intval(cur.sendSMSFilter.checked());
  }
  if (!
bid) {
    
ajax.post(Tasks.addressquery, {
      
onDone: function(textscript) {
        
curBox().content(text);
        if (
script) eval(script);
      }
    });
  } else {
    
ajax.post(Tasks.addressquery, {
      
onDone: function(summaryactionscontentcommentsimages) {
        
ge('task_summary').innerHTML summary;
        
ge('task_content').innerHTML content;
        
ge('task_actions').innerHTML actions;
        
ge('task_images').innerHTML images;
        
ge('task_comments').innerHTML comments;
        
curBox().hide();
      }
    });
  }
},

deleteTask: function(bidhash) {
  var 
box showFastBox({titlecur.lang['delete_title'], width430onHide: function() { if (cur.deletednav.go(Tasks.address);}}, cur.lang['delete_confirm'], cur.lang['delete'], function() {
    
ajax.post(Tasks.address, {act'delete'bidbidhashhash}, {
      
onDone: function(text) {
        
cur.deleted true;
        
box.content(text);
        
box.removeButtons();
        
box.addButton(global_closebox.hide'yes');
        
setTimeout(function() {
          
box.hide();
        }, 
3000);
      }
    });
  }, 
global_cancel);
},

editPriority: function(bidhash) {
  var 
box showFastBox({titlegetLang('tasks_increase_priority'), width430}, getLang('tasks_sure_increase_priority'), getLang('tasks_increase'), function(btn) {
    
ajax.post(Tasks.address, {act'edit_priority'bidbidhashhash}, {
      
showProgresslockButton.pbind(btn),
      
hideProgressunlockButton.pbind(btn),
      
onDone: function(summaryactions) {
        
ge('task_summary').innerHTML summary;
        
ge('task_actions').innerHTML actions;
        
curBox().hide();
      }
    });
  }, 
global_cancel);
},

preview: function(elhash) {
  var 
pr ge('preview');
  
pr.innerHTML "";
  if (
isVisible(pr)) {
    
hide(pr);
  } else {
    
lockButton(el);
    
ajax.post(this.address, { act'preview'hashhashtextge('desc').value }, {
      
onDone: function(text) {
        
unlockButton(el);
        
pr.innerHTML text;
        
show(pr);
      }
    });
  }
},

addComment: function(hash) {
  
show('tasks_loading');
  var 
comment ge('task_reply_field').value;
  if (!
comment) return;
  
ajax.post(this.address, {act'add_comment'bidcur.bug_idfromcur.acttextcommentreply_tocur.replyTohashhash}, {
    
onDone: function(comments) {
      
ge('task_comments').innerHTML comments;
      
ge('task_reply_field').value '';
      
delete cur.replyTo;
      
ge('task_reply_field').blur();
      
autosizeSetup(ge('task_reply_field'), {minHeight70maxHeight500});
      
ge('answer_to').innerHTML '';
      
hide('tasks_loading');
    }
  });
},

replyViewComment: function(uidname)  {
  
ge('answer_to').innerHTML '<a onclick="return Tasks.cancelReplyComment();">'+name+'</a>';
  
cur.replyTo uid;
  return 
false;
},

cancelReplyComment: function() {
  
delete cur.replyTo;
  
ge('answer_to').innerHTML '';
  return 
false;
},

editComment: function(cidhash) {
  if (
cur.editing) {
    
this.cancelEditComment(cur.editing);
  }
  if (!
cur.commentscur.comments = {};
  var 
cont geByClass1('tasks_comm_text'ge('comment'+cid));
  
cur.comments[cid] = cont.innerHTML;
  var 
comment ge('comment' cid);
  
ajax.post(Tasks.address, {act'get_comment'cidcidhashhash}, {
    
onDone: function(t) {
      
cont.innerHTML '<textarea class="tasks_edit_comment" id="comment'+cid+'edit" onkeydown="Tasks.saveComment(event, '+cid+', ''+hash+'')">'+t+'</textarea>
       <div style="margin: 5px 0 0 -2px; height: 23px">
         <div class="fl_l button_blue">
          <button id="save_but'
+cid+'" onclick="Tasks.doSaveComment('+cid+', ''+hash+'')">'+cur.lang.save+'</button>
         </div>
         <div class="fl_l button_gray" style="margin-left: 6px;">
          <button id="cancel_but'
+cid+'" onclick="Tasks.cancelEditComment('+cid+')">'+cur.lang.cancel+'</button>
         </div>
         <div id="editCommentProgress'
+cid+'" style="margin: 5px 0px 0px 10px; vertical-align: 0px; float: left; display: none"><img src="/images/upload.gif"/></div>
       </div>'
;
      
ge('comment'+cid+'edit').focus();
      
hide(geByClass1('date'ge('comment'+cid)));
      
autosizeSetup(ge('comment'+cid+'edit'), {minHeight30});
      
cur.editing cid;
    }
  });
  return 
false;
},

saveComment: function(eventcidhash) {
  if (
event && event.keyCode == 27) {
    
Tasks.cancelEditComment(cur.editing);
    return;
  }
  if (
event && event.ctrlKey && (event.keyCode == 10 || event.keyCode == 13)) this.doSaveComment(cidhash);
},

cancelEditComment: function(cid) {
  
geByClass1('tasks_comm_text'ge('comment'+cid)).innerHTML cur.comments[cid];
  
show(geByClass1('date'ge('comment'+cid)));
  
delete cur.editing;
  
delete cur.comments[cid];
},

doSaveComment: function(cidhash) {
  var 
val ge('comment'+cid+'edit').value;
  if (!
val) {
    
ge('comment'+cid+'edit').focus();
    return;
  }
  
ajax.post(Tasks.address, {act'edit_comment'bidcur.bug_idcidcidcommentvalhashhash}, {
    
onDone: function(text) {
      var 
cont geByClass1('tasks_comm_text'ge('comment'+cid))
      
cont.innerHTML text;
      
show(geByClass1('date'ge('comment'+cid)));
      
delete cur.editing;
      
delete cur.comments[cid];
    },
    
showProgresslockButton.pbind(ge('save_but'+cid)),
    
hideProgressunlockButton.pbind(ge('save_but'+cid)),
  });
},

deleteComment: function(bidcidhash) {
  
show('tasks_loading');
  
ajax.post(Tasks.address, {act'delete_comment'bidbidcidcidfromcur.acthashhash}, {
    
onDone: function(res) {
      var 
cont = (cur.act == 'viewbug') ? ge('comment'+cid).firstChild ge('comment'+bid+'_'+cid).firstChild;
      if (
cont) {
        if (!
cur.deletedCommentscur.deletedComments = [];
        
cur.deletedComments[cid] = cont.innerHTML;
        
cont.innerHTML res;
      }
      
hide('tasks_loading');
    }
  });
  return 
false;
},

restoreComment: function(bidcidhash) {
  
show('tasks_loading');
  
ajax.post(Tasks.address, {act'restore_comment'bidbidcidcidhashhash}, {
    
onDone: function(res) {
      var 
cont = (cur.act == 'viewbug') ? ge('comment'+cid).firstChild ge('comment'+bid+'_'+cid).firstChild;
      if (
contcont.innerHTML cur.deletedComments[cid];
      
hide('tasks_loading');
    }
  });
  return 
false;
},

viewComments: function(bidfreshhash){
  if (!
cur.bugCommentscur.bugComments = {};
  if (
cur.bugComments[bid] != fresh) {
    if (
ge('tph_text'+bid)) {
      
show('tph_prg'+bid);
      
hide('tph_text'+bid);
    } else {
      
ge('com_links'+bid).innerHTML "";
      
show('load_comm'+bid);
    }
    
ajax.post(Tasks.address, {act'load_comments'bidbidfreshfreshfromcur.acthashhash}, {
      
onDone: function(commentslinks) {
        var 
cont ge('comments'+bid);
        if (!
cont) {
          var 
ce('div', {id'comments'+bidclassName'tasks_comments_row'});
          
ge('bug'+bid).parentNode.insertBefore(tge('bug'+bid).nextSibling);
          
cont ge('comments'+bid);
        }
        
cont.innerHTML comments;
        
ge('com_links'+bid).innerHTML links;
        var 
el ge('reply_field' bid);
        
placeholderSetup(el);
        
autosizeSetup(el, {minHeight30});
        
el.show true;
        
setTimeout(Tasks.hideReplyBox.pbind(bid), 0);
        
hide('load_comm'+bid);
        
hide('com_links'+bid);
        
show('com_hide'+bid);
        if (!
isVisible(cont)) slideToggle(cont200);
      }
    });
  } else {
    
cont ge('comments'+bid);
    
slideToggle(cont200, function(){
      
hide('com_links'+bid);
      
show('com_hide'+bid);
    });
  }
  
cur.bugComments[bid] = fresh;
  return 
false;
},

hideComments: function(bid) {
  
cont ge('comments'+bid);
  if (
isVisible(cont)) slideToggle(cont200, function() {
    
hide('com_hide'+bid);
    
show('com_links'+bid);
  });
  return 
false;
},

replyComment: function(id) {
  if (
cur.act == 'comments' || cur.act == 'feed') {
    var 
comm_box ge('reply_comments'+id);
    var 
comm_field ge('reply_field'+id);
    
slideToggle(comm_box200, function() {
      if (
isVisible(comm_box)) comm_field.focus();
    });
  }
},

addReplyComment: function(bidtohash) {
  var 
comment ge('reply_field' bid).value;
  if (!
comment) return false;
  if (!
cur.commentSent) {
    
cur.commentSent true;
    
lockButton(ge('send'+bid));
    
ajax.post(Tasks.address, {act'add_comment'bidbidtextcommentreply_totofromcur.acthashhash}, {
      
onDone:function(reslinks) {
        
delete cur.commentSent;
        
unlockButton(ge('send'+bid));
        if (
cur.act == 'feed' || cur.act == 'comments') {
          
ge('comment'+bid).innerHTML += res;
          
addClass(ge('comment'+bid), 'answered');
          
re('reply'+bid);
          
hide(geByClass1('tasks_comm_actions'ge('comment'+bid)));
        } else {
          
ge('comments_cont'+bid).innerHTML += res;
          
ge('com_links'+bid).innerHTML links;
          
ge('reply_field'+bid).value "";
          
ge('reply_field'+bid).blur();
          
Tasks.hideReplyBox(bid);
        }
      }
    });
  }
},

showReplyBox: function(full_id) {
  
full_id full_id || '';
  var 
el ge('reply_field' full_id);
  if (
cur.focused && cur.focused != full_id) {
    
Tasks.hideReplyBox(cur.focused);
  }
  if (!
el.show) {
    if (
full_id) {
      
show('post_submit' full_id);
    }
    if (
el.autosize) {
      
el.autosize.update();
    }
    
el.show true;
    
cur.focused full_id;
  }
  return 
false;
},

hideReplyBox: function(full_id) {
  if (
browser.opera && browser.mobile) return;
  
full_id full_id || '';
  var 
el ge('reply_field' full_id);
  if (
el && el.show) {
    if (
full_id) {
      
hide('post_submit' full_id);
    }
    if (
ge('reply_to_name')) ge('reply_to_name').innerHTML '';
    
setStyle(el, {height14});
    
el.show false;
    
delete cur.focused;
  }
  return 
true;
},

setupReply: function() {
  
each(geByClass('tasks_reply_msg'), function(i,v) {
    
placeholderSetup(v);
    
autosizeSetup(v, {minHeight30});
  });
},

_animDelX: function(elopacityset_active) {
  if (!
el) return;
  if (
set_active !== undefined) {
    
el.active set_active;
  } else if (
el.active) {
    return;
  }
  
animate(el, {opacityopacity}, 200);
},

rowActive: function(eltt) {
  
this._animDelX(el11);
  if (
ttshowTooltip(el, {textttshowdt200});
},
rowInactive: function(el) {
  
this._animDelX(el0.50);
},

checkFilter: function(option) {
  var 
filter_row ge('filter_' option), typeMask cur.typeMaskvalue cur.feedTypes[option];
  if (
typeMask & (<< value)) {
    
typeMask &= ~(<< value);
    
removeClass(filter_row'checked');
  } else {
    
typeMask |= (<< value);
    
addClass(filter_row'checked');
  }
  
cur.typeMask typeMask;
  
setCookie('remixtasks_feed_filter'typeMask100);
  
Tasks.filterFeed();
},

setFilter: function(option) {
  var 
cont ge('right_column'), filter_row ge('filter_' option), noChecked truetypeMask cur.typeMaskvalue cur.feedTypes[option];
  
each (geByClass('checked'cont'div'), function () {
    if (
this != filter_row) return (noChecked false);
  });
  if (
noChecked) {
    
each([].slice.apply(geByClass('tasks_feed_filter'cont'div')), function () {
      if (
hasClass(this'checked')) return;
      
addClass(this'checked');
      
typeMask |= (<< cur.feedTypes[this.id.substr(7)]);
    });
  } else {
    
each([].slice.apply(geByClass('checked'cont'div')), function () {
      
removeClass(this'checked');
      
typeMask &= ~(<< cur.feedTypes[this.id.substr(7)]);
    });
    
addClass(ge('filter_' option), 'checked');
    
typeMask |= (<< value);
  }
  
cur.typeMask typeMask;
  
setCookie('remixtasks_feed_filter'typeMask100);
  
Tasks.filterFeed();
},

filterFeed: function() {
  
ge('feed_wrap').style.opacity 0.5;
  
ajax.post(Tasks.address, {act'feed'load1idcur.id}, {
    
onDone: function(textextra) {
      if (
extraextend(curextra);
      
ge('tasks_content').innerHTML text;
      if (
window.tooltipstooltips.hideAll();
      
Tasks.setupReply();
      if (
cur.id) {
        
nav.setLoc(extend(nav.objLoc, {idcur.id}));
      } else {
        
delete nav.objLoc.id;
        
nav.setLoc(nav.objLoc);
      }
    }
  });
},

showMore: function() {
  
hide('show_more');
  
show('show_more_progress');
  
cur.loadingFeed true;
  
ajax.post(Tasks.address, {act'feed'fromcur.fromoffsetcur.offsetidcur.idmore1}, {
    
onDone: function(textshow_moreobj) {
      
delete cur.loadingFeed;
      
show('show_more');
      
hide('show_more_progress');
      
ge('feed').innerHTML += text;
      
ge('show_more_box').innerHTML show_more;
      if (
objextend(curobj);
      
Tasks.setupReply();
    },
    
onFail: function() {
      
delete cur.loadingFeed;
      
show('show_more');
      
hide('show_more_progress');
    }
  });

  return 
false;
},

showPhoto: function(urlphoto_id) {
  var 
pic vkImage();
  
pic.src url;
  var 
onload = function() {
    
showFastBox({bodyStyle"line-height: 0px;"widthMath.min(pic.width1024) + 30}, '<img class="tasks_preview_img" src="' url '" />');
    
hide('tasks_loading');
    
removeEvent(pic'load');
  };

  if (!
pic.width) {
    
show('tasks_loading');
    
addEvent(pic'load'onload);
  } else {
    
onload();
  }
  return 
false;
},

subscribe: function(bidsubscribehash) {
  
show('tasks_loading');
  var 
full_id;
  if (
bid.toString().indexOf("_") != -1) {
    
full_id bid;
    
bid bid.split("_");
    
bid parseInt(bid[0]);
  }
  
ajax.post(Tasks.address, {act'subscribe'fromcur.actsubscribesubscribebidbidfull_idfull_idhashhash}, {
    
onDone:function(res) {
      switch (
cur.act) {
        case 
'viewbug':
          
ge('task_actions').innerHTML res;
          break;
        case 
'settings':
          
ge('subscribe'+bid).innerHTML res;
          break;
        case 
'feed':
          
cont ge('comment'+full_id).firstChild;
          if (!
subscribe) {
            if (
window.tooltips) {
              
tooltips.hide(ge('update_hide'+full_id))
            }
            if (!
cur.unsubscribedcur.unsubscribed = new Array();
            
cur.unsubscribed[full_id] = cont.innerHTML;
            
cont.innerHTML res;
          } else {
            
cont.innerHTML cur.unsubscribed[full_id];
          }
          
removeClass(cont'over');
          
setStyle(ge('update_hide' full_id), {opacity0.5});
          break;
      }
      
hide('tasks_loading');
    }
  });
},

filterChanged: function(filtervalue) {
  switch (
cur.act) {
    case 
'feed':
      if (
filter == 'id') {
        
cur.id intval(value);
        if (
cur.id) {
          
hide('feed_filters_block');
        } else {
          
show('feed_filters_block');
        }
        
Tasks.filterFeed();
      }
      break;
    case 
'settings':
      if (
filter == 'section') {
        
Tasks.filterSettings(cur.offsetvalue);
      }
    case 
'my':
    case 
'bugs':
    case 
'features':
    case 
'news':
    case 
'support':
      
Tasks.filterBugs(filtervalue);
      break;
  }
  return 
false;
},

filterSettings: function(offsetvalue) {
  
show('tasks_loading');
  
ajax.post(Tasks.address, {actcur.actload1sectionvalue}, {
    
onDone: function(textscript) {
      
hide('tasks_loading');
      
ge('tasks_content').innerHTML text;
      if (
window.tooltipstooltips.hideAll();
      if (
script) eval(script);
      
Tasks.setupReply();
      if (
value) {
        
nav.setLoc(extend(nav.objLoc, {sectionvalue}));
      } else {
        
delete nav.objLoc.section;
        
nav.setLoc(nav.objLoc);
      }
    }
  });
},

subscribeSections: function(hashvalue) {
  
ajax.post(Tasks.address, {act'subscribe_sections'sectionsvaluehashhash});
},

filterBugs: function(filtervalue) {
  
show('tasks_loading');
  
nav.objLoc[filter] = value;
  var 
_n nav.objLoc;
  
delete nav.objLoc.offset;
  
ajax.post(this.address, {actcur.actq_n.qsection_n.sectiontype_n.typesent_n.sentopened_n.openedpriority_n.priorityid_n.idload1}, {
    
onDone: function(contentscript) {
      
hide('tasks_loading');
      
ge('tasks_content').innerHTML content;
      if (
window.tooltipstooltips.hideAll();
      if (
script) eval(script);
      
nav.setLoc(nav.objLoc);
    }
  });
},

selectDev: function(elval) {
  if (
window.tooltips) {
    
tooltips.hide(el.parentNode);
  }
  
cur.idSelect.val(valtrue);
  return 
false;
},

addScreenshotLink: function(idevt) {
  var 
txtarea ge('task_reply_field'),
      
scrollPos txtarea.scrollTop,
      
strPos 0,
      
br = ((txtarea.selectionStart || txtarea.selectionStart == '0') ?
    
"ff" : (document.selection "ie" false ) ),
      
text ' [[screen'+id+']]n';
  if (
br == "ie") {
    
txtarea.focus();
    var 
range document.selection.createRange();
    
range.moveStart ('character', -txtarea.value.length);
    
strPos range.text.length;
  } else if (
br == "ff"strPos txtarea.selectionStart;

  
strPos strPos text.length;
  if (
br == "ie") {
    
txtarea.focus();
    var 
range document.selection.createRange();
    
range.moveStart ('character', -txtarea.value.length);
    
range.moveStart ('character'strPos);
    
range.moveEnd ('character'0);
    
range.select();
  } else if (
br == "ff") {
    
txtarea.selectionStart strPos;
    
txtarea.selectionEnd strPos;
    
txtarea.focus();
  }
  var 
front = (txtarea.value).substring(0,strPos-text.length);
  var 
back = (txtarea.value).substring(strPos-text.length,txtarea.value.length);
  
txtarea.value=front+text+back;
  
txtarea.scrollTop scrollPos;
  
cancelEvent(evt);
},

addScreenshot: function() {
  
showBox(this.address, {act'add_screenshot'}, {params: {width'430px'bodyStyle'padding: 0px; position: relative;'}});
},

uploadScreenshot: function(el) {
  
hide('screenshot_error');
  
ge('tasks_add_screen').submit();
  
el.disabled true;
  
curBox().showProgress();
},

removeScreenshot: function(idhashevt) {
  var 
cont ge('image'+id);
  
animate(cont, {width0opacity0}, 100, function() {
    
re(cont);
    var 
images geByClass('tasks_image_row'ge('task_images_wrap'));
    if (
images.length == 0) {
      
re('task_images_wrap');
    }
  });
  
ajax.post(Tasks.address, {act'delete_screenshot'sc_ididbidcur.bug_idhashhash});
  
cancelEvent(evt);
},

changeTaskStatus: function(statushash) {
  var 
doChangeStatus = function(statushashbox) {
    
show('tasks_loading');
    var 
query = {act'change_status'statusstatusbidcur.bug_idhashhash};
    if (
cur.hideAutoanswer && ge('task_closed_autoanswer')) {
      
query.no_autoanswer cur.hideAutoanswer.val();
      
query.answer_text ge('task_closed_autoanswer').value;
    }
    
ajax.post(Tasks.addressquery, {
      
onDone:function(summaryactionscomments) {
        if (
boxbox.hide();
        
hide('tasks_loading');
        if (
summaryge('task_summary').innerHTML summary;
        if (
actionsge('task_actions').innerHTML actions;
        if (
commentsge('task_comments').innerHTML comments;
      }
    });
  }
  var 
sendReq = function (hashboxstart) {
    if (
cur.forceStop) return;
    var 
query = {act'add_auto_reply'statusstatusbidcur.bug_idhashhashstartstart||''};
    if (
cur.hideAutoanswer && ge('task_closed_autoanswer')) {
      
query.no_autoanswer cur.hideAutoanswer.val();
      
query.answer_text ge('task_closed_autoanswer').value;
    }
    if (
ge('task_closed_autoanswer_addressing_m')) {
      
query.addressing_m ge('task_closed_autoanswer_addressing_m').value;
    }
    if (
ge('task_closed_autoanswer_addressing_f')) {
      
query.addressing_f ge('task_closed_autoanswer_addressing_f').value;
    }
    var 
attachs = [], chosen cur.ticketsAutoMedia && cur.ticketsAutoMedia.chosenMedias;
    if (
chosen) {
      for (var 
i in chosen) {
        var 
att chosen[i], type att[0], value att[1];
        if (
type == 'photo' || type == 'doc') {
          
attachs.push(type+','+value);
        }
      }
    }
    if (
attachs.lengthquery.attachs attachs;
    
ajax.post(Tasks.addressquery, {
      
onDone: function(finishedprogressWidthnewStart) {
        
animate(ge('task_status_progress'), {widthprogressWidth}, 200);
        if (
finished) {
          
box.showProgress();
          
doChangeStatus(statushashbox);
          return;
        } else {
          
setTimeout(sendReq.pbind(hashboxnewStart), 100);
        }
      }, 
onFail: function () {
        
box.hideProgress();
        
box.hide();
      }
    });
  }
  
cur.forceStop false;
  if (
status == && cur.binded_tickets && cur.binded_tickets.length) {
    var 
box showFastBox({titlecur.lang['close_task'], width430bodyStyle"line-height: 160%;"}, cur.lang['sure_close'], getLang('global_close'), function() {
        
box.changed true;
        
show('tasks_status_progress_wrap');
        
hide('tasks_sure_close_wrap');
        
sendReq(hashbox);
        
box.removeButtons();
        
box.addButton(getLang('global_close'), function() {
          
cur.forceStop true;
          
box.hide();
        });
      }, 
getLang('global_cancel'), function() {
        
cur.forceStop true;
        
box.hide();
      });
      
cur.hideAutoanswer = new Checkbox(ge('tasks_ignore_autoanswer'), {labelcur.lang.no_autoansweronChangetoggle.pbind(ge('tasks_sure_close'), this.val)});
      
ajax.post(Tasks.address, {act'get_attach_data'}, {
        
cache1,
        
onDone: function(script) {
          if (
script) eval(script);
        }
      })
  } else {
    var 
box showFastBox({titlegetLang('tasks_please_wait'), width430bodyStyle"line-height: 160%;"}, '<div id="tasks_status_progress_wrap" class="tasks_upload_progress_wrap" style="margin: 20px auto"><div id="task_status_progress" class="tasks_upload_progress" style="width: 0%;"></div></div>'getLang('global_cancel'), function() {
        
cur.forceStop true;
        
box.hide();
      }
    );
    
sendReq(hashbox);
  }
},

addAutoScreen: function() {
  var 
doShow = function() {
    var 
box showBox('/helpdesk', {act'choose_photo_box'scrollbar_widthwindow.sbWidth()}, {params: {bodyStyle'padding: 0px'}, cache1onFail: function() {show('tasks_sure_close_error'); hide('tis_add_lnk'); return true;}});
  }
  if (
window.Tickets) {
    
doShow();
  } else {
    
stManager.add(['tickets.js''tickets.css'], doShow);
  }
},

showNotifyBox: function() {
  var 
box showBox('al_friends.php', {act'select_friends_box'from'tasks'privacycur.view_privacybidcur.bug_idauthorcur.author_iddevcur.dev_id}, {stat: ['privacy.js''privacy.css''indexer.js'], params: {onHide: function() {
    
each(cur.flistScrollbar.destroy, function (kf) {f();});
  }}});
  
cur.onFlistSave = function(ids, list, hash) {
    
box.leaveOnSave true;
    
ajax.post(Tasks.address, {act'notify_users'idsids.join(','), bidcur.bug_idhashhash}, {
      
onDone:function(headercontent) {
        
box.removeButtons();
        
box.addButton(global_cancelbox.hide'yes');
        
box.setOptions({titleheaderwidth'430px'bodyStyle'padding: 15px;'});
        
box.content(content);
        
setTimeout(function() {
          
box.hide();
        }, 
3000);
      },
      
progressbox.progress
    
});
  }
},

notifyUser: function(idhash) {
  
showBox(Tasks.address, {act'notify_users'idsidbidcur.bug_idhashhash}, { params: {width'430px'}});
},

moveTask: function() {
  
showBox(Tasks.address, {act'move_task'}, {stat: ['ui_controls.js''ui_controls.css'], width'430px'});
},

changeDeveloper: function(devhash) {
  
show('tasks_loading');
  
ajax.post(Tasks.address, {act'change_dev'bidcur.bug_iddevdevhashhash}, {
    
onDone:function(headeractionscomments) {
      
hide('tasks_loading');
      if (
headerge('task_header').innerHTML header;
      if (
actionsge('task_actions').innerHTML actions;
      if (
commentsge('task_comments').innerHTML comments;
      if (
curBox()) curBox().hide();
    }
  });
},

takeTask: function(hash) {
  
Tasks.changeDeveloper(vk.idhash);
},

sendTask: function(hash) {
  
Tasks.changeDeveloper(cur.task_change_dev.val(), hash);
},

bindTicket: function() {
  return !
showBox(Tasks.address, {act'bind_ticket'}, {width'430px'});
},

unbindTicket: function(ticket_idhash) {
  var 
doUnbind = function() {
    var 
box cur.unbindBox;
    
ajax.post(Tasks.address, {act'unbind_ticket'ticket_idticket_idbug_idcur.bug_idhashhash}, {
      
cache1,
      
onDone: function(script) {
        var 
el ge('ticket_row'+ticket_id), par el.parentNode;
        
slideUp(el200, function() {
          
re(el);
          if (!
par.hasChildNodes()) re(par);
        });
        
box.hide();
        if (
script) eval(script);
      },
      
showProgressbox.showProgress,
      
hideProgressbox.hideProgress
    
});
  }
  var 
enterUnbind = function(e) {
    if (
e.keyCode == KEY.ENTER && __bq.count()) {
      
doUnbind();
      return 
false;
    }
  }
  if (!
browser.mobile) {
    
addEvent(document'keydown'enterUnbind);
  }
  
cur.unbindBox showFastBox({titlecur.lang['delete_ticket_bind'], width430onHide: function() {
    
removeEvent(document'keydown'enterUnbind);
  }}, 
cur.lang['delete_ticket_text'], cur.lang['delete'], doUnbindgetLang('global_cancel'));
},

_eof1};try{stManager.done('tasks.js');}catch(e){}
?>
Онлайн: 0
Реклама