%PDF- %PDF-
| Direktori : /home/bitrix/www/bitrix/components/bitrix/socialnetwork.blog.post.edit/templates/.default/ |
| Current File : /home/bitrix/www/bitrix/components/bitrix/socialnetwork.blog.post.edit/templates/.default/script.js |
;(function(){
if (window["SBPETabs"])
return;
window.SBPEFullForm = function()
{
this.lazyLoad = null;
this.ajaxUrl = '';
this.inited = false;
this.loaded = false;
this.container = null;
this.containerMicro = null;
this.containerMicroInner = null;
this.clickDisabled = false;
this.lastWait = [];
this.animationStartHeight = 0;
this.initedEditorsList = [];
};
window.SBPEFullForm.instance = null;
window.SBPEFullForm.getInstance = function()
{
if (window.SBPEFullForm.instance == null)
{
window.SBPEFullForm.instance = new SBPEFullForm();
}
return window.SBPEFullForm.instance;
};
window.SBPEFullForm.prototype = {
init : function(params)
{
if (this.inited !== true)
{
this.inited = true;
this.lazyLoad = typeof params.lazyLoad != 'undefined' ? params.lazyLoad : null;
this.ajaxUrl = typeof params.ajaxUrl != 'undefined' ? params.ajaxUrl : '';
this.container = typeof params.container != 'undefined' ? params.container : null;
this.containerMicro = typeof params.containerMicro != 'undefined' ? params.containerMicro : null;
this.containerMicroInner = typeof params.containerMicroInner != 'undefined' ? params.containerMicroInner : null;
}
},
get : function(params)
{
var _this = this;
if (_this.clickDisabled)
{
return;
}
if (
_this.lazyLoad
&& !_this.loaded
)
{
_this.clickDisabled = true;
_this.animationStartHeight = this.containerMicro.offsetHeight;
_this.containerMicroInner.style.display = 'none';
_this.showWait(_this.containerMicro);
BX.ajax({
method: 'POST',
dataType: 'json',
url: this.ajaxUrl,
data: {
action: 'SBPE_get_full_form',
sessid: BX.bitrix_sessid()
},
onsuccess: BX.delegate(function(result) {
_this.loaded = true;
_this.clickDisabled = false;
_this.closeWait();
if(result.success)
{
_this.processAjaxBlock(result.PROPS, params.callback);
}
else
{
}
}),
onfailure: function(result) {
_this.clickDisabled = false;
_this.closeWait();
_this.containerMicroInner.style.display = 'block';
}
});
}
else
{
params.callback();
}
},
processAjaxBlock : function(block, callbackExternal)
{
if (!block)
{
return;
}
var _this = this;
var htmlWasInserted = false;
var scriptsLoaded = false;
processCSS(insertHTML);
processExternalJS(processInlineJS);
function processCSS(callback)
{
if (
BX.type.isArray(block.CSS)
&& block.CSS.length > 0
)
{
BX.load(block.CSS, callback);
}
else
{
callback();
}
}
function insertHTML()
{
_this.container.appendChild(BX.create('DIV', {
html: block.CONTENT
}));
htmlWasInserted = true;
if (scriptsLoaded)
{
processInlineJS();
}
}
function processExternalJS(callback)
{
if (
BX.type.isArray(block.JS)
&& block.JS.length > 0
)
{
BX.load(block.JS, callback); // to initialize
}
else
{
callback();
}
}
function processInlineJS()
{
scriptsLoaded = true;
if (htmlWasInserted)
{
BX.ajax.processRequestData(block.CONTENT, {
scriptsRunFirst: false,
dataType: "HTML"
});
callbackExternal();
}
}
},
showWait : function(node)
{
node = BX(node) || document.body || document.documentElement;
var obMsg = node.bxmsg = document.body.appendChild(BX.create('DIV', {
props: {
id: 'wait_' + node.id,
className: 'feed-add-post-loader-cont'
},
html: '<svg class="feed-add-post-loader" viewBox="25 25 50 50"><circle class="feed-add-post-loader-path" cx="50" cy="50" r="20" fill="none" stroke-miterlimit="10"></circle><circle class="feed-add-post-loader-inner-path" cx="50" cy="50" r="20" fill="none" stroke-miterlimit="10"></circle></svg>'
}));
setTimeout(BX.delegate(this.adjustWait, node), 10);
this.lastWait[this.lastWait.length] = obMsg;
return obMsg;
},
adjustWait : function()
{
if (!this.bxmsg) return;
var arContainerPos = BX.pos(this),
div_top = arContainerPos.top + 15;
if (div_top < BX.GetDocElement().scrollTop)
div_top = BX.GetDocElement().scrollTop + 5;
this.bxmsg.style.top = (div_top + 5) + 'px';
if (this == BX.GetDocElement())
{
this.bxmsg.style.right = '5px';
}
else
{
this.bxmsg.style.left = (arContainerPos.left + parseInt((arContainerPos.width - this.bxmsg.offsetWidth) / 2)) + 'px';
}
},
closeWait : function()
{
var node = this.containerMicro;
obMsg = node.bxmsg;
if (obMsg && obMsg.parentNode)
{
for (var i=0,len=this.lastWait.length;i<len;i++)
{
if (obMsg == this.lastWait[i])
{
this.lastWait = BX.util.deleteFromArray(this.lastWait, i);
break;
}
}
obMsg.parentNode.removeChild(obMsg);
if (node)
node.bxmsg = null;
BX.cleanNode(obMsg, true);
}
},
tasksTaskEvent : function(taskId)
{
this.showTaskPopup(taskId);
},
showTaskPopup : function(taskId)
{
this.createTaskPopup = new BX.PopupWindow("blogPostEditCreateTaskPopup", null, {
autoHide: false,
zIndex: 0,
offsetLeft: 0,
offsetTop: 0,
overlay: false,
lightShadow: true,
closeIcon: {
right : "12px",
top : "10px"
},
draggable: {
restrict:true
},
closeByEsc: false,
contentColor : 'white',
contentNoPaddings: true,
buttons: [],
content: BX.create('DIV', {
attrs: {
id: 'blogPostEditCreateTaskPopup_content'
},
props: {
className: 'feed-create-task-popup-content'
}
}),
events: {
onAfterPopupShow: BX.proxy(function()
{
this.setTaskPopupContent(BX.create('DIV', {
children: [
BX.create('DIV', {
props: {
className: 'feed-create-task-popup-title'
},
html: BX.message('sonetBPECreateTaskSuccessTitle')
}),
BX.create('DIV', {
props: {
className: 'feed-create-task-popup-description'
},
html: BX.message('sonetBPECreateTaskSuccessDescription')
})
]
}));
this.createTaskPopup.setButtons([
new BX.PopupWindowButton({
text : BX.message('sonetBPECreateTaskButtonTitle'),
events : {
click : BX.proxy(function() {
this.createTaskPopup.destroy();
var taskLink = BX.message('PATH_TO_USER_TASKS_TASK').replace('#user_id#', BX.message('USER_ID')).replace('#task_id#', taskId).replace('#action#', 'view');
if (
typeof BX.Bitrix24 != 'undefined'
&& typeof BX.Bitrix24.PageSlider != 'undefined'
)
{
BX.Bitrix24.PageSlider.open(taskLink);
}
else
{
window.open(taskLink, '_blank');
}
}, this)
}
})
]);
}, this),
onPopupClose: BX.proxy(function() {
this.createTaskPopup.destroy();
}, this)
}
});
this.createTaskPopup.params.zIndex = (BX.WindowManager ? BX.WindowManager.GetZIndex() : 0);
this.createTaskPopup.show();
},
setTaskPopupContent : function(contentNode)
{
if (BX('blogPostEditCreateTaskPopup_content'))
{
var containerNode = BX('blogPostEditCreateTaskPopup_content');
BX.cleanNode(containerNode);
containerNode.appendChild(contentNode);
}
}
};
window.SBPETabs = function()
{
if (window.SBPETabs.instance != null)
{
throw "SBPETabs is a singleton. Use SBPETabs.getInstance to get an object.";
}
this.tabs = {};
this.bodies = {};
this.active = null;
this.animation = null;
this.animationStartHeight = 0;
this.menu = null;
this.menuItems = [];
this.lastWait = [];
this.clickDisabled = false;
this.createTaskPopup = null;
if (this.inited !== true)
this.init();
window.SBPETabs.instance = this;
};
window.SBPETabs.instance = null;
window.SBPETabs.getInstance = function()
{
if (window.SBPETabs.instance == null)
{
window.SBPETabs.instance = new SBPETabs();
}
return window.SBPETabs.instance;
};
window.SBPETabs.changePostFormTab = function(type, iblock)
{
var tabsObj = window.SBPETabs.getInstance();
if (tabsObj.clickDisabled)
return false;
return tabsObj.setActive(type, iblock);
};
window.SBPETabs.prototype = {
_createOnclick : function(id, name, onclick)
{
return function()
{
var btn = BX("feed-add-post-form-link-more", true);
var btnText = BX("feed-add-post-form-link-text", true);
btnText.innerHTML = name;
if (id != 'lists')
{
btn.className = "feed-add-post-form-link feed-add-post-form-link-more feed-add-post-form-link-active feed-add-post-form-" + id + "-link";
window.SBPETabs.changePostFormTab(id);
}
else
{
btn.className = "feed-add-post-form-link feed-add-post-form-link-more feed-add-post-form-" + id + "-link";
}
if (BX.type.isNotEmptyString(onclick))
{
BX.evalGlobal(onclick);
}
this.popupWindow.close();
}
},
init : function()
{
this.tabContainer = BX('feed-add-post-form-tab');
var arTabs = BX.findChildren(this.tabContainer, {'tag':'span', 'className': 'feed-add-post-form-link'}, true);
this.arrow = BX('feed-add-post-form-tab-arrow');
this.tabs = {}; this.bodies = {};
for (var i = 0; i < arTabs.length; i++)
{
var id = arTabs[i].getAttribute("id").replace("feed-add-post-form-tab-", "");
this.tabs[id] = arTabs[i];
if (this.tabs[id].style.display == "none")
{
this.menuItems.push({
tabId : id,
text : arTabs[i].getAttribute("data-name"),
className : "menu-popup-no-icon feed-add-post-form-" + id + " feed-add-post-form-" + id + "-more",
onclick : this._createOnclick(id, arTabs[i].getAttribute("data-name"), arTabs[i].getAttribute("data-onclick"))
});
this.tabs[id] = this.tabs[id].parentNode;
}
this.bodies[id] = BX('feed-add-post-content-' + id);
}
if (!!this.tabs['file'])
this.bodies['file'] = [this.bodies['message']];
if (!!this.tabs['calendar'])
this.bodies['calendar'] = [this.bodies['calendar']];
if (!!this.tabs['vote'])
this.bodies['vote'] = [this.bodies['message'], this.bodies['vote']];
if (!!this.tabs['more'])
this.bodies['more'] = null;
if (!!this.tabs['important'])
this.bodies['important'] = [this.bodies['message'], this.bodies['important']];
if (!!this.tabs['grat'])
this.bodies['grat'] = [this.bodies['message'], this.bodies['grat']];
if (!!this.tabs['lists'])
this.bodies['lists'] = [this.bodies['lists']];
if (!!this.tabs['tasks'])
this.bodies['tasks'] = [this.bodies['tasks']];
for (var ii in this.bodies)
{
if (this.bodies.hasOwnProperty(ii) && BX.type.isDomNode(this.bodies[ii]))
this.bodies[ii] = [this.bodies[ii]];
}
this.inited = true;
this.previousTab = false;
if (BX('bx-b-uploadfile-blogPostForm'))
{
BX('bx-b-uploadfile-blogPostForm').setAttribute("bx-press", "pressOut");
BX.bind(BX('bx-b-uploadfile-blogPostForm'), "mousedown", BX.delegate(function(){
BX('bx-b-uploadfile-blogPostForm').setAttribute("bx-press", (BX('bx-b-uploadfile-blogPostForm').getAttribute("bx-press") == "pressOut" ? "pressOn" : "pressOut"));
}, this));
}
BX.onCustomEvent(this.tabContainer, "onObjectInit", [this]);
var form = BX('blogPostForm');
if (form)
{
if (!form.changePostFormTab)
{
form.appendChild( BX.create('INPUT', {
props : {
'type': 'hidden',
'name': 'changePostFormTab',
'value': ''
}
}));
}
BX.addCustomEvent(window, "changePostFormTab", function(type) {
if (type != "more")
{
form.changePostFormTab.value = type;
}
});
if (form["UF_BLOG_POST_IMPRTNT"])
{
BX.addCustomEvent(window, "changePostFormTab", function(type) {
if (type != "more")
{
form["UF_BLOG_POST_IMPRTNT"].value = type == "important" ? 1 : 0;
}
});
}
}
},
setActive : function(type, iblock)
{
if (type == null || this.active == type && type != 'lists')
return this.active;
else if (!this.tabs[type])
return false;
var ii, jj;
var needAnimation = (type !== "tasks" || this.isTaskTabLoaded());
if (needAnimation)
{
this.startAnimation();
}
for (ii in this.tabs)
{
if (this.tabs.hasOwnProperty(ii) && ii != type)
{
BX.removeClass(this.tabs[ii], 'feed-add-post-form-link-active');
if (this.bodies[ii] == null || this.bodies[type] == null)
continue;
for (jj = 0; jj < this.bodies[ii].length; jj++)
{
if (this.bodies[type][jj] != this.bodies[ii][jj])
BX.adjust(this.bodies[ii][jj], {style : {display : "none"}});
}
}
}
if (!!this.tabs[type])
{
this.active = type;
var tabPosTab = BX.pos(this.tabs[type], true);
this.arrow.style.display = "block";
this.arrow.style.top = tabPosTab.bottom + "px";
var leftStart = parseInt(this.arrow.style.left) || 0;
var widthStart = parseInt(this.arrow.style.width) || 0;
(new BX.easing({
duration : 200,
start : { left: leftStart, width: widthStart },
finish : { left: tabPosTab.left, width: tabPosTab.width },
transition : BX.easing.makeEaseInOut(BX.easing.transitions.quart),
step : BX.proxy(function(state){
this.arrow.style.left = state.left + "px";
this.arrow.style.width = state.width + "px";
}, this),
complete : BX.proxy(function() {
this.arrow.style.display = "none";
BX.addClass(this.tabs[type], 'feed-add-post-form-link-active');
}, this)
})).animate();
if (this.previousTab == 'file' || type == 'file')
{
var
nodeFile = null,
nodeDocs = null,
hasValuesFile = false,
hasValuesDocs = false,
messageBody = BX('divoPostFormLHE_blogPostForm');
if (
!!messageBody
&& !!messageBody.childNodes
&& messageBody.childNodes.length > 0
)
{
for (ii in messageBody.childNodes)
{
if (messageBody.childNodes.hasOwnProperty(ii) && messageBody.childNodes[ii].className == "file-selectdialog")
{
nodeFile = messageBody.childNodes[ii];
var
values1 = BX.findChild(nodeFile, {'className': 'file-placeholder-tbody'}, true),
values2 = BX.findChildren(nodeFile, {'className': 'feed-add-photo-block'}, true);
if (values1.rows > 0 || !!values2 && values2.length > 1)
hasValuesFile = true;
}
else if (BX.type.isNotEmptyString(messageBody.childNodes[ii].className) &&
(messageBody.childNodes[ii].className.indexOf("wduf-selectdialog") >= 0 ||
messageBody.childNodes[ii].className.indexOf('diskuf-selectdialog') >= 0))
{
nodeDocs = messageBody.childNodes[ii];
var webdavValues = BX.findChildren(nodeDocs, {"className" : "wd-inline-file"}, true);
hasValuesDocs = (!!webdavValues && webdavValues.length > 0);
}
else if(
BX.type.isElementNode(messageBody.childNodes[ii])
&& !BX.hasClass(messageBody.childNodes[ii], 'urlpreview')
)
{
BX.adjust(messageBody.childNodes[ii], {style : {display : (type == 'file' ? "none" : "")}});
}
}
if (type == 'file')
{
if (!!window["PlEditorblogPostForm"])
{
if (!window["PlEditorblogPostForm"]["SBPEBinded"])
{
window["PlEditorblogPostForm"].SBPEBinded = true;
BX.addCustomEvent(window["PlEditorblogPostForm"].eventNode, "onUploadsHasBeenChanged", function(wdObj)
{
if (wdObj.dialogName == 'AttachFileDialog' && wdObj.urlUpload.indexOf('&dropped=Y') < 0)
{
wdObj.urlUpload = wdObj.agent.uploadFileUrl = wdObj.urlUpload.replace('&random_folder=Y', '&dropped=Y');
}
BX('bx-b-uploadfile-blogPostForm').setAttribute("bx-press", "pressOn");
if (window.SBPETabs.getInstance().active != 'file')
{
window.SBPETabs.changePostFormTab("message");
}
});
}
window["PlEditorblogPostForm"].controllerInit('show');
}
window["PlEditorblogPostForm"].controllerInit('show');
BX.addClass(messageBody, "feed-add-post-form");
BX.addClass(messageBody, "feed-add-post-edit-form");
BX.addClass(messageBody, "feed-add-post-edit-form-file");
}
else
{
BX.removeClass(messageBody, "feed-add-post-form");
BX.removeClass(messageBody, "feed-add-post-edit-form");
BX.removeClass(messageBody, "feed-add-post-edit-form-file");
if (!hasValuesFile && !hasValuesDocs && BX('bx-b-uploadfile-blogPostForm').getAttribute("bx-press")=="pressOut" && !!window["PlEditorblogPostForm"]) {
window["PlEditorblogPostForm"].controllerInit('hide');
}
}
}
}
if (
BX('divoPostFormLHE_blogPostForm')
&& BX('divoPostFormLHE_blogPostForm').style.display == "none"
)
{
BX.onCustomEvent(BX('divoPostFormLHE_blogPostForm' ), 'OnShowLHE', ['justShow']);
}
if(type == 'lists')
{
BX.onCustomEvent('onDisplayClaimLiveFeed', [iblock]);
}
this.previousTab = type;
if (!!this.bodies[type])
{
for (jj = 0; jj < this.bodies[type].length; jj++)
{
if (!!this.bodies[type][jj])
{
BX.adjust(this.bodies[type][jj], {style : {display : "block"}});
}
}
}
}
if (needAnimation)
{
this.endAnimation();
}
if(type != 'lists')
this.restoreMoreMenu();
BX.onCustomEvent(window, "changePostFormTab", [type]);
return this.active;
},
startAnimation : function()
{
if (this.animation)
{
this.animation.stop();
}
var container = BX("microblog-form", true);
if (!container)
{
return false;
}
if (window.SBPEFullForm.getInstance().animationStartHeight > 0)
{
this.animationStartHeight = window.SBPEFullForm.getInstance().animationStartHeight;
window.SBPEFullForm.getInstance().animationStartHeight = 0;
}
else
{
this.animationStartHeight = container.parentNode.offsetHeight;
}
container.parentNode.style.height = this.animationStartHeight + "px";
container.parentNode.style.overflowY = "hidden";
container.parentNode.style.position = "relative";
container.style.opacity = 0;
},
endAnimation : function()
{
var container = BX("microblog-form", true);
if (!container)
{
return false;
}
this.animation = new BX.easing({
duration : 500,
start : { height: this.animationStartHeight, opacity : 0 },
finish : { height: container.offsetHeight + container.offsetTop, opacity : 100 },
transition : BX.easing.makeEaseOut(BX.easing.transitions.quart),
step : function(state){
container.parentNode.style.height = state.height + "px";
container.style.opacity = state.opacity / 100;
},
complete : BX.proxy(function() {
container.style.cssText = "";
container.parentNode.style.cssText = "";
this.animation = null;
}, this)
});
this.animation.animate();
},
collapse : function()
{
window.SBPETabs.changePostFormTab("message");
if (window.SBPEFullForm.getInstance().containerMicroInner)
{
window.SBPEFullForm.getInstance().containerMicroInner.style.display = 'block';
}
this.startAnimation();
BX.onCustomEvent(BX("divoPostFormLHE_blogPostForm"), "OnShowLHE", [false]);
BX.onCustomEvent(window, 'onExtAutoSaveReset_blogPostForm', []);
this.endAnimation();
this.active = null;
},
showMoreMenu : function()
{
if (!this.menu)
{
this.menu = BX.PopupMenu.create(
"feed-add-post-form-popup",
BX("feed-add-post-form-link-text"),
this.menuItems,
{
className: "feed-add-post-form-popup",
closeByEsc : true,
offsetTop: 5,
offsetLeft: 3,
angle: true
}
);
}
this.menu.popupWindow.show();
},
restoreMoreMenu : function()
{
var itemCnt = this.menuItems.length;
if (itemCnt < 1)
{
return;
}
for (var i = 0; i < itemCnt; i++)
{
if (this.active == this.menuItems[i]["tabId"])
{
return;
}
}
var btn = BX("feed-add-post-form-link-more", true);
var btnText = BX("feed-add-post-form-link-text", true);
btn.className = "feed-add-post-form-link feed-add-post-form-link-more";
btnText.innerHTML = BX.message("SBPE_MORE");
},
getLists : function()
{
var tabContainer = (BX('feed-add-post-form-tab-lists') && BX('feed-add-post-form-tab-lists').style.display != 'none' ? BX('feed-add-post-form-tab-lists') : BX('feed-add-post-form-link-more')),
tabs = BX.findChildren(tabContainer, {'tag':'span', 'className': 'feed-add-post-form-link-lists'}, true),
tabsDefault = BX.findChildren(tabContainer, {'tag':'span', 'className': 'feed-add-post-form-link-lists-default'}, true),
menuItemsListsDefault = [],
menuItemsLists = [];
if(tabs.length)
{
menuItemsLists = this.getMenuItems(tabs, this.createOnclickLists);
menuItemsListsDefault = this.getMenuItemsDefault(tabsDefault);
menuItemsLists = menuItemsLists.concat(menuItemsListsDefault);
this.showMoreMenuLists(menuItemsLists);
}
else
{
var showMoreMenuLists = this.showMoreMenuLists,
getMenuItems = this.getMenuItems,
getMenuItemsDefault = this.getMenuItemsDefault,
createOnclickLists = this.createOnclickLists,
siteId = null;
if(BX('bx-lists-select-site-id'))
{
siteId = BX('bx-lists-select-site-id').value;
}
BX.ajax({
method: 'POST',
dataType: 'json',
url: '/bitrix/components/bitrix/socialnetwork.blog.post.edit/post.ajax.php',
data: {
bitrix_processes: 1,
siteId: siteId,
sessid: BX.bitrix_sessid()
},
onsuccess: BX.delegate(function(result) {
if(result.success)
{
var k = null;
for(k in result.lists)
{
if (result.lists.hasOwnProperty(k))
{
tabContainer.appendChild(BX.create('span', {
attrs: {
'data-name': result.lists[k].NAME,
'data-picture': result.lists[k].PICTURE,
'data-description': result.lists[k].DESCRIPTION,
'data-picture-small': result.lists[k].PICTURE_SMALL,
'data-code': result.lists[k].CODE,
'iblockId': result.lists[k].ID
},
props:{
className: 'feed-add-post-form-link-lists',
id: 'feed-add-post-form-tab-lists'
},
style : {
display: 'none'
}
}));
}
}
tabs = BX.findChildren(tabContainer, {'tag':'span', 'className': 'feed-add-post-form-link-lists'}, true);
menuItemsLists = getMenuItems(tabs, createOnclickLists);
if(!tabsDefault.length)
{
for(k in result.permissions)
{
if (result.permissions.hasOwnProperty(k))
{
var onclick;
if(k == 'new')
{
onclick = 'document.location.href = "'+BX('bx-lists-lists-page').value+'0/edit/"';
}
else if(k == 'market')
{
if(result.admin && BX('bx-lists-lists-page'))
{
onclick = 'document.location.href = "'+BX('bx-lists-lists-page').value+'?bp_catalog=y"';
}
else
{
if(BX('bx-lists-random-string'))
{
onclick = 'BX.Lists["LiveFeedClass_'+BX('bx-lists-random-string').value+'"].errorPopup("'+BX.message('LISTS_CATALOG_PROCESSES_ACCESS_DENIED')+'");';
}
}
}
else if(k == 'settings')
{
onclick = 'document.location.href = "'+BX('bx-lists-lists-page').value+'"';
}
tabContainer.appendChild(BX.create('span', {
attrs: {
'data-name': result.permissions[k],
'data-picture-small': '',
'data-key': k,
'data-onclick': onclick
},
props:{
className: 'feed-add-post-form-link-lists-default',
id: 'feed-add-post-form-tab-lists'
},
style : {
display: 'none'
}
}));
}
}
tabsDefault = BX.findChildren(tabContainer, {'tag':'span', 'className': 'feed-add-post-form-link-lists-default'}, true);
}
menuItemsListsDefault = getMenuItemsDefault(tabsDefault);
menuItemsLists = menuItemsLists.concat(menuItemsListsDefault);
showMoreMenuLists(menuItemsLists);
}
else
{
tabContainer.appendChild(BX.create('span', {
attrs: {
'data-name': result.error,
'data-picture-small': ''
},
props:{
className: 'feed-add-post-form-link-lists-default',
id: 'feed-add-post-form-tab-lists'
},
style : {
display: 'none'
}
}));
tabs = BX.findChildren(tabContainer, {'tag':'span', 'className': 'feed-add-post-form-link-lists-default'}, true);
menuItemsLists = getMenuItems(tabs, 0);
showMoreMenuLists(menuItemsLists);
}
})
});
}
},
isTaskTabLoaded: function() {
var contentContainer = BX('feed-add-post-content-tasks-container');
return contentContainer && contentContainer.children.length;
},
getTaskForm : function()
{
var tabContainer = (BX('feed-add-post-form-tab-tasks') && BX('feed-add-post-form-tab-tasks').style.display != 'none' ? BX('feed-add-post-form-tab-tasks') : BX('feed-add-post-form-link-more')),
content = BX('feed-add-post-content-tasks'),
contentContainer = BX('feed-add-post-content-tasks-container');
if (
contentContainer
&& contentContainer.innerHTML.length <= 0
&& !this.clickDisabled
)
{
this.clickDisabled = true;
window.SBPEFullForm.getInstance().showWait(contentContainer);
this.startAnimation();
var componentParameters = {
GROUP_ID: BX.message('TASK_SOCNET_GROUP_ID'),
PATH_TO_USER_TASKS: BX.message('PATH_TO_USER_TASKS'),
PATH_TO_USER_TASKS_TASK: BX.message('PATH_TO_USER_TASKS_TASK'),
PATH_TO_GROUP_TASKS: BX.message('PATH_TO_GROUP_TASKS'),
PATH_TO_GROUP_TASKS_TASK: BX.message('PATH_TO_GROUP_TASKS_TASK'),
PATH_TO_USER_PROFILE: BX.message('PATH_TO_USER_PROFILE'),
PATH_TO_GROUP: BX.message('PATH_TO_GROUP'),
PATH_TO_USER_TASKS_PROJECTS_OVERVIEW: BX.message('PATH_TO_USER_TASKS_PROJECTS_OVERVIEW'),
PATH_TO_USER_TASKS_TEMPLATES: BX.message('PATH_TO_USER_TASKS_TEMPLATES'),
PATH_TO_USER_TEMPLATES_TEMPLATE: BX.message('PATH_TO_USER_TEMPLATES_TEMPLATE'),
ENABLE_FOOTER: 'N',
TEMPLATE_CONTROLLER_ID: 'lifefeed_task_form',
ENABLE_FORM: 'N',
BACKURL: BX.message('TASK_SUBMIT_BACKURL')
};
BX.Tasks.Util.Query.runOnce(
'ui.task.edit',
{
parameters: {
COMPONENT_PARAMETERS: componentParameters
}
}
).then(
BX.proxy(function(result)
{
if(result.isSuccess())
{
BX.html(contentContainer, result.getData());
BX.adjust(content, {
style: {
display : 'block'
}
});
return true;
}
else
{
this.closeWait(contentContainer);
this.endAnimation();
throw new Error();
}
}, this),
BX.proxy(function(reason)
{
this.closeWait(contentContainer);
this.endAnimation();
throw new Error();
}, this)
).then(
BX.proxy(function()
{
this.clickDisabled = false;
this.closeWait(contentContainer);
this.endAnimation();
}, this)
);
}
else
{
this.startAnimation();
this.endAnimation();
}
BX.onCustomEvent(BX('lifefeed_task_form' ), 'OnShowLHE', ['justShow']);
},
closeWait : function(node)
{
obMsg = node.bxmsg;
if (obMsg && obMsg.parentNode)
{
for (var i=0,len=this.lastWait.length;i<len;i++)
{
if (obMsg == this.lastWait[i])
{
this.lastWait = BX.util.deleteFromArray(this.lastWait, i);
break;
}
}
obMsg.parentNode.removeChild(obMsg);
if (node)
node.bxmsg = null;
BX.cleanNode(obMsg, true);
}
},
getMenuItems : function(tabs, createOnclickLists)
{
var menuItemsLists = [];
for (var i = 0; i < tabs.length; i++)
{
var id = tabs[i].getAttribute("id").replace("feed-add-post-form-tab-", "");
if(createOnclickLists)
{
menuItemsLists.push({
tabId : id,
text : BX.util.htmlspecialchars(tabs[i].getAttribute("data-name")),
className : "feed-add-post-form-" + id + "feed-add-post-form-" + id + "-item",
onclick : createOnclickLists(
id,
[
tabs[i].getAttribute("iblockId"),
tabs[i].getAttribute("data-name"),
tabs[i].getAttribute("data-description"),
tabs[i].getAttribute("data-picture"),
tabs[i].getAttribute("data-code")
]
)
});
}
else
{
menuItemsLists.push({
tabId : id,
text : tabs[i].getAttribute("data-name"),
className : "feed-add-post-form-" + id,
onclick : ''
});
}
}
return menuItemsLists;
},
getMenuItemsDefault : function(tabs)
{
var menuItemsLists = [];
for (var i = 0; i < tabs.length; i++)
{
menuItemsLists.push({
text : BX.util.htmlspecialchars(tabs[i].getAttribute("data-name")),
className : "feed-add-post-form-lists-default-"+tabs[i].getAttribute("data-key"),
onclick : tabs[i].getAttribute("data-onclick")
});
}
return menuItemsLists;
},
showMoreMenuLists : function(menuItemsLists)
{
var menuBindElement = (BX('feed-add-post-form-tab-lists').style.display != 'none' ? BX('feed-add-post-form-tab-lists') : BX('feed-add-post-form-link-more'));
var menu = BX.PopupMenu.create(
"lists",
menuBindElement,
menuItemsLists,
{
closeByEsc : true,
offsetTop: 5,
offsetLeft: 12,
angle: true
}
);
var spanIcon = BX.findChildren(BX('popup-window-content-menu-popup-lists'), {'tag':'span', 'className': 'menu-popup-item-icon'}, true),
spanDataPicture = BX.findChildren(menuBindElement, {'tag':'span', 'className': 'feed-add-post-form-link-lists'}, true),
spanDataPictureDefault = BX.findChildren(menuBindElement, {'tag':'span', 'className': 'feed-add-post-form-link-lists-default'}, true);
spanDataPicture = spanDataPicture.concat(spanDataPictureDefault);
for(var i = 0; i < spanIcon.length; i++)
{
if(spanDataPicture[i].getAttribute('data-picture-small'))
{
spanIcon[i].innerHTML = spanDataPicture[i].getAttribute('data-picture-small');
}
}
menu.popupWindow.show();
},
createOnclickLists : function(id, iblock)
{
return function()
{
window.SBPETabs.changePostFormTab(id, iblock);
this.popupWindow.close();
}
}
};
window.BXfpGratSelectCallback = function(item/*, type_user, name*/)
{
BXfpGratMedalSelectCallback(item, 'grat');
};
window.BXfpMedalSelectCallback = function(item/*, type_user, name*/)
{
BXfpGratMedalSelectCallback(item, 'medal');
};
window.BXfpGratMedalSelectCallback = function(item, type)
{
if (type != 'grat')
type = 'medal';
var prefix = 'U';
BX('feed-add-post-'+type+'-item').appendChild(
BX.create("span", {
attrs : { 'data-id' : item.id },
props : { className : "feed-add-post-"+type+" feed-add-post-destination-users" },
children: [
BX.create("input", {
attrs : { 'type' : 'hidden', 'name' : (type == 'grat' ? 'GRAT' : 'MEDAL')+'['+prefix+'][]', 'value' : item.id }
}),
BX.create("span", {
props : { 'className' : "feed-add-post-"+type+"-text" },
html : item.name
}),
BX.create("span", {
props : { 'className' : "feed-add-post-del-but"},
events : {
'click' : function(e){
BX.SocNetLogDestination.deleteItem(item.id, 'users', window["BXSocNetLogGratFormName"]);
BX.PreventDefault(e)
},
'mouseover' : function(){
BX.addClass(this.parentNode, 'feed-add-post-'+type+'-hover')
},
'mouseout' : function(){
BX.removeClass(this.parentNode, 'feed-add-post-'+type+'-hover')
}
}
})
]
})
);
BX('feed-add-post-'+type+'-input').value = '';
BX.SocNetLogDestination.BXfpSetLinkName({
formName: (type == 'grat' ? window["BXSocNetLogGratFormName"] : window["BXSocNetLogMedalFormName"]),
tagInputName: 'bx-' + type + '-tag',
tagLink1: BX.message('BX_FPGRATMEDAL_LINK_1'),
tagLink2: BX.message('BX_FPGRATMEDAL_LINK_2')
});
};
if (!!BX.SocNetGratSelector)
return;
BX.SocNetPostDateEndData =
{
isInitialized: false,
popupShowingPeriods: null,
customDateStyleModifier: 'feed-add-post-expire-date-customize',
popupTriggerSelector: '.js-important-till-popup-trigger',
customDatePopupOptionClass: 'js-custom-date-end',
customDateFinalSelector: '.js-date-post-showing-custom',
postExpireDateBlockSelector: '.js-post-expire-date-block'
};
BX.SocNetGratSelector =
{
popupWindow: null,
obWindowCloseIcon: {},
sendEvent: true,
obCallback: {},
gratsContentElement: null,
itemSelectedImageItem: {},
itemSelectedInput: {},
searchTimeout: null,
obDepartmentEnable: {},
obSonetgroupsEnable: {},
obLastEnable: {},
obWindowClass: {},
obPathToAjax: {},
obDepartmentLoad: {},
obDepartmentSelectDisable: {},
obItems: {},
obItemsLast: {},
obItemsSelected: {},
obElementSearchInput: {},
obElementBindMainPopup: {},
obElementBindSearchPopup: {}
};
BX.SocNetPostDateEndData.init = function ()
{
if (this.isInitialized)
{
return;
}
this.addEventHandlers();
if (!this.formDateTimeEditing.value)
{
this.customDateSelectedTitle.innerText = this.getCurrentDate();
}
this.isInitialized = true;
};
BX.SocNetPostDateEndData.addEventHandlers = function ()
{
this.postExpireDateBlock = document.querySelector(this.postExpireDateBlockSelector);
this.formUfInputDateCustom = document.querySelector('.js-form-post-end-time');
this.formDateDuration = document.querySelector('.js-form-post-end-period');
this.formDateTimeEditing = document.querySelector('.js-form-editing-post-end-time');
this.popupTrigger = document.querySelector(this.popupTriggerSelector);
if (this.popupTrigger)
{
this.popupTrigger.addEventListener("click", function (event)
{
BX.SocNetPostDateEndData.showPostEndPeriodsPopup();
});
}
this.customDateSelectedTitle = document.querySelector(this.customDateFinalSelector);
if (this.customDateSelectedTitle)
{
this.customDateSelectedTitle.addEventListener("click", (function (event) {
var curDate = new Date();
var curTimestamp = Math.round(curDate / 1000) - curDate.getTimezoneOffset() * 60;
if (this.formDateTimeEditing.value)
{
curDate = BX.parseDate(this.formDateTimeEditing.value);
curTimestamp = BX.date.convertToUTC(curDate);
}
BX.calendar({
node: this.customDateSelectedTitle,
form: "blogPostForm",
value: curTimestamp,
bTime: false,
'callback': function(){
return true;
},
'callback_after': BX.SocNetPostDateEndData.onEndDateSet.bind(BX.SocNetPostDateEndData)
});
}).bind(this));
}
};
BX.SocNetPostDateEndData.showPostEndPeriodsPopup = function()
{
if (!this.popupShowingPeriods)
{
this.createPopupShowingPeriods();
}
this.popupShowingPeriods.popupWindow.show();
};
BX.SocNetPostDateEndData.createPopupShowingPeriods = function()
{
if (!this.menuItems)
{
this.menuItems = this.createPopupItems();
}
this.popupShowingPeriods = BX.PopupMenu.create(
"feed-add-post-form-popup42",
BX("js-post-expire-date-wrapper"),
this.menuItems,
{
className: "feed-add-post-expire-date-options",
closeByEsc : true,
angle: true
}
);
};
BX.SocNetPostDateEndData.createPopupItems = function()
{
var menuPostDurationItems = [];
var selectOptions = BX.findChildren(document.querySelector('.js-post-showing-duration-options-container'), {'className': 'js-post-showing-duration-option'}, true);
if (selectOptions)
{
selectOptions.forEach(function(element){
menuPostDurationItems.push({
onclick: this.onPopupItemClick.bind(this),
dataset: {
value: element.getAttribute('data-value'),
class: element.getAttribute('data-class')
},
text: element.getAttribute('data-text'),
className: 'menu-popup-item menu-popup-no-icon ' + element.getAttribute('data-class')
});
}.bind(this));
return menuPostDurationItems;
}
return [];
};
BX.SocNetPostDateEndData.onPopupItemClick = function(event) {
var element = event.currentTarget;
if (element.getAttribute('data-class') == this.customDatePopupOptionClass)
{
this.postExpireDateBlock.classList.add(this.customDateStyleModifier);
if (this.formDateTimeEditing.value)
{
this.formUfInputDateCustom.value = this.formDateTimeEditing.value;
this.customDateSelectedTitle.innerText = this.formDateTimeEditing.value;
}
else
{
this.formUfInputDateCustom.value = this.getCurrentDate();
}
}
else
{
this.postExpireDateBlock.classList.remove(this.customDateStyleModifier);
this.formUfInputDateCustom.value = null;
}
this.popupTrigger.innerText = element.innerText.toLowerCase();
this.formDateDuration.value = element.getAttribute('data-value').toUpperCase();
this.popupShowingPeriods.popupWindow.close();
};
BX.SocNetPostDateEndData.onEndDateSet = function (value)
{
if (!value)
{
return;
}
this.formDateTimeEditing.value = this.getFormattedDate(value);
this.formUfInputDateCustom.value = this.getFormattedDate(value);
this.customDateSelectedTitle.innerText = this.getFormattedDate(value);
};
BX.SocNetPostDateEndData.getFormattedDate = function (value)
{
return BX.date.format(BX.date.convertBitrixFormat(BX.message('FORMAT_DATE')), value);
};
BX.SocNetPostDateEndData.getCurrentDate = function ()
{
return BX.SocNetPostDateEndData.getFormattedDate(new Date());
};
BX.SocNetGratSelector.init = function(arParams)
{
if(!arParams.name)
arParams.name = 'lm';
BX.SocNetGratSelector.obCallback[arParams.name] = arParams.callback;
BX.SocNetGratSelector.obWindowCloseIcon[arParams.name] = typeof (arParams.obWindowCloseIcon) == 'undefined' ? true : arParams.obWindowCloseIcon;
BX.SocNetGratSelector.itemSelectedImageItem[arParams.name] = arParams.itemSelectedImageItem;
BX.SocNetGratSelector.itemSelectedInput[arParams.name] = arParams.itemSelectedInput;
};
/**
* @return boolean
*/
BX.SocNetGratSelector.openDialog = function(name)
{
if(!name)
name = 'lm';
if (BX.SocNetGratSelector.popupWindow != null)
{
BX.SocNetGratSelector.popupWindow.close();
return false;
}
var arGratsItems = [];
for (var i = 0; i < arGrats.length; i++)
{
arGratsItems[arGratsItems.length] = BX.create("span", {
props: {
className: 'feed-add-grat-box ' + arGrats[i].style
},
attrs: {
'title': arGrats[i].title
},
events: {
'click' : BX.delegate(function(e){
BX.SocNetGratSelector.selectItem(name, this.code, this.style, this.title);
BX.PreventDefault(e)
}, arGrats[i])
}
});
}
var arGratsRows = [];
var rownum = 1;
for (i = 0; i < arGratsItems.length; i++)
{
if (i >= arGratsItems.length/2)
rownum = 2;
if (arGratsRows[rownum] == null || arGratsRows[rownum] == 'undefined')
arGratsRows[rownum] = BX.create("div", {
props: {
className: 'feed-add-grat-list-row'
}
});
arGratsRows[rownum].appendChild(arGratsItems[i]);
}
BX.SocNetGratSelector.gratsContentElement = BX.create("div", {
children: [
BX.create("div", {
props: {
className: 'feed-add-grat-list-title'
},
html: BX.message('BLOG_GRAT_POPUP_TITLE')
}),
BX.create("div", {
props: {
className: 'feed-add-grat-list'
},
children: arGratsRows
})
]
});
BX.SocNetGratSelector.popupWindow = new BX.PopupWindow('BXSocNetGratSelector', BX('feed-add-post-grat-type-selected'), {
autoHide: true,
offsetLeft: 25,
bindOptions: { forceBindPosition: true },
closeByEsc: true,
closeIcon : BX.SocNetGratSelector.obWindowCloseIcon[name] ? { 'top': '5px', 'right': '10px' } : false,
events : {
onPopupShow : function() {
if(BX.SocNetGratSelector.sendEvent && BX.SocNetGratSelector.obCallback[name] && BX.SocNetGratSelector.obCallback[name].openDialog)
BX.SocNetGratSelector.obCallback[name].openDialog();
},
onPopupClose : function() {
this.destroy();
},
onPopupDestroy : BX.proxy(function() {
BX.SocNetGratSelector.popupWindow = null;
if(BX.SocNetGratSelector.sendEvent && BX.SocNetGratSelector.obCallback[name] && BX.SocNetGratSelector.obCallback[name].closeDialog)
BX.SocNetGratSelector.obCallback[name].closeDialog();
}, this)
},
content: BX.SocNetGratSelector.gratsContentElement,
angle: {
position: "bottom",
offset : 20
},
lightShadow: true
});
BX.SocNetGratSelector.popupWindow.setAngle({});
BX.SocNetGratSelector.popupWindow.show();
return true;
};
BX.SocNetGratSelector.selectItem = function(name, code, style, title)
{
var gratSpan = BX.findChild(BX.SocNetGratSelector.itemSelectedImageItem[name], { tag: 'span' }, false, false);
if (
typeof (gratSpan) != 'undefined'
&& gratSpan
)
{
gratSpan.className = 'feed-add-grat-box ' + style;
}
BX.SocNetGratSelector.itemSelectedImageItem[name].title = title;
BX.SocNetGratSelector.itemSelectedInput[name].value = code;
BX.SocNetGratSelector.popupWindow.close();
};
var BlogPostAutoSave = function (autoSaveRestoreMethod, initRestore) {
var
formId = 'blogPostForm',
form = BX(formId),
titleID = 'POST_TITLE',
title = BX(titleID),
tags = BX(formId).TAGS,
bindLHEEvents = function(_ob)
{
BX.bind(title, 'keydown', BX.proxy(_ob.Init, _ob));
BX.bind(tags, 'keydown', BX.proxy(_ob.Init, _ob));
};
if (!form)
return;
initRestore = (typeof initRestore != 'undefined' ? !!initRestore : true);
BX.addCustomEvent(form, 'onAutoSavePrepare', function (ob/*, h*/) {
ob.DISABLE_STANDARD_NOTIFY = true;
var _ob=ob;
setTimeout(function() { bindLHEEvents(_ob) }, 100);
});
BX.addCustomEvent(form, 'onAutoSave', function(ob, form_data) {
form_data['TAGS'] = BX(formId).TAGS.value;
delete form_data['POST_MESSAGE'];
});
if (autoSaveRestoreMethod == 'Y')
{
BX.addCustomEvent(form, 'onAutoSaveRestoreFound', function(ob, data) {
var text = (BX.util.trim(data['text' + formId]) || ''),
title = (BX.util.trim(data[titleID]) || '');
if (text.length < 1 && title.length < 1) return;
ob.Restore();
});
}
else
{
BX.addCustomEvent(form, 'onAutoSaveRestoreFound', BX.delegate(function(ob, data) {
var text = (BX.util.trim(data['text' + formId]) || ''),
title = (BX.util.trim(data[titleID]) || '');
if (text.length < 1 && title.length < 1) return;
var
messageBody = BX('microoPostFormLHE_blogPostForm'),
textNode = BX.create('DIV', {
attrs : {
className : "feed-add-successfully"
},
children : [
BX.create('SPAN', {
attrs : {
className : "feed-add-info-icon"
}}),
BX.create('A', {
attrs : {
className : "feed-add-info-text",
href : "#"
},
events : {
click : function(){
ob.Restore();
textNode.parentNode.removeChild(textNode);
return false;
}
},
text : BX.message('BLOG_POST_AUTOSAVE2')
})
]
});
if (messageBody)
{
messageBody.parentNode.insertBefore(textNode, messageBody);
}
}, this));
}
if (initRestore)
{
BX.addCustomEvent(form, 'onAutoSaveRestore', function(ob, data) {
BX(titleID).value = data[titleID];
if(data[titleID].length > 0 && data[titleID] != BX(titleID).getAttribute("placeholder"))
{
if(BX('divoPostFormLHE_blogPostForm').style.display != "none")
window['showPanelTitle_' + formId](true);
else
window["bShowTitle"] = true;
if (!!BX(titleID).__onchange)
BX(titleID).__onchange();
}
var formTags = window["BXPostFormTags_" + formId];
if(data['TAGS'].length > 0 && formTags)
{
var tags = formTags.addTag(data['TAGS']);
if (tags.length > 0)
{
BX.show(formTags.tagsArea);
}
}
if(BX.SocNetLogDestination)
{
var i, key;
if(data['SPERM[DR][]'])
{
for (i = 0; i < data['SPERM[DR][]'].length; i++ )
{
BX.SocNetLogDestination.selectItem(BXSocNetLogDestinationFormName, '', 3, data['SPERM[DR][]'][i], 'department', false);
}
}
if(data['SPERM[SG][]'])
{
for (i = 0; i < data['SPERM[SG][]'].length; i++ )
{
BX.SocNetLogDestination.selectItem(BXSocNetLogDestinationFormName, '', 3, data['SPERM[SG][]'][i], 'sonetgroups', false);
}
}
if(data['SPERM[U][]'])
{
for (i = 0; i < data['SPERM[U][]'].length; i++ )
{
BX.SocNetLogDestination.selectItem(BXSocNetLogDestinationFormName, '', 3, data['SPERM[U][]'][i], 'users', false);
}
}
if(!data['SPERM[UA][]'])
{
BX.SocNetLogDestination.deleteItem('UA', 'groups', BXSocNetLogDestinationFormName);
}
if(data['SPERM[UE][]'])
{
for (i = 0; i < data['SPERM[UE][]'].length; i++ )
{
key = data['SPERM[UE][]'][i];
BX.SocNetLogDestination.inviteEmailAddUser(BXSocNetLogDestinationFormName, {
email: data['SPERM[UE][]'][i],
name: (BX.type.isNotEmptyString(data['INVITED_USER_NAME[' + key + ']']) ? data['INVITED_USER_NAME[' + key + ']'] : ''),
lastName: (BX.type.isNotEmptyString(data['INVITED_USER_LAST_NAME[' + key + ']']) ? data['INVITED_USER_LAST_NAME[' + key + ']'] : ''),
createCrmContact: (BX.type.isNotEmptyString(data['INVITED_USER_CREATE_CRM_CONTACT[' + key + ']']) ? data['INVITED_USER_CREATE_CRM_CONTACT[' + key + ']'] == 'Y' : false)
});
}
}
}
bindLHEEvents(ob);
});
}
},
formParams = {},
reinit = function(formID)
{
if (formParams[formID] && formParams[formID]["editorID"])
{
if (formParams[formID]["editor"])
formParams[formID]["editor"](formParams[formID]['text']);
else
setTimeout(function(){reinit(formID);}, 50);
}
};
BX.SocnetBlogPostInit = function(formID, params)
{
this.disabled = false;
formParams[formID] = {
editorID : params['editorID'],
showTitle : (!!params['showTitle']),
submitted : false,
text : params['text'],
autoSave : params['autoSave'],
handler : (LHEPostForm && LHEPostForm.getHandler(params['editorID'])),
editor : (LHEPostForm && LHEPostForm.getEditor(params['editorID'])),
restoreAutosave : !!params['restoreAutosave']
};
window['showPanelTitle_' + formID] = function(show, saveChanges)
{
show = ( show === true || show === false ? show : (BX('blog-title').style.display == "none") );
saveChanges = (saveChanges !== false);
var
bShowTitleCopy = formParams[formID]['showTitle'],
node = BX("lhe_button_title_" + formID),
nodeBlock = BX("feed-add-post-block" + formID),
stv = (BX('show_title') || {});
if(show)
{
BX.show(BX('blog-title'));
BX.focus(BX('POST_TITLE'));
formParams[formID]['showTitle'] = true;
stv.value = "Y";
if (node)
{
BX.addClass(node, 'feed-add-post-form-btn-active');
}
if (nodeBlock)
{
BX.addClass(nodeBlock, 'blog-post-edit-open');
}
}
else
{
BX.hide(BX('blog-title'));
formParams[formID]['showTitle'] = false;
stv.value = "N";
if (node)
BX.removeClass(node, 'feed-add-post-form-btn-active');
}
if (saveChanges)
BX.userOptions.save('socialnetwork', 'postEdit', 'showTitle', (formParams[formID]['showTitle'] ? 'Y' : 'N'));
else
formParams[formID]['showTitle'] = bShowTitleCopy;
};
window["setBlogPostFormSubmitted"] = BX.proxy(function(value)
{
if (BX("blog-submit-button-save"))
{
if (value)
{
BX.addClass(BX("blog-submit-button-save"), 'ui-btn-clock');
}
else
{
BX.removeClass(BX("blog-submit-button-save"), 'ui-btn-clock');
}
}
formParams[formID]["submitted"] = value;
this.disabled = value;
}, this);
window["submitBlogPostForm"] = BX.proxy(function(editor, value)
{
if (this.disabled)
{
return;
}
if (typeof editor != "object")
{
value = editor;
editor = LHEPostForm.getEditor(formParams[formID]['editorID']);
}
if (editor && editor.id == formParams[formID]['editorID'])
{
if(formParams[formID]["submitted"])
return false;
editor.SaveContent();
if(!value)
{
value = 'save';
}
if(BX('blog-title').style.display == "none")
{
BX('POST_TITLE').value = "";
}
var submitButton = null;
if (
value == 'save'
&& BX("blog-submit-button-save")
)
{
submitButton = BX("blog-submit-button-save");
}
else if (
value == 'draft'
&& BX("blog-submit-button-draft")
)
{
submitButton = BX("blog-submit-button-draft");
}
if (submitButton)
{
BX.addClass(submitButton, 'ui-btn-clock');
this.disabled = true;
window.addEventListener('beforeunload', BX.proxy(function(event) { // is called on every sumbit, with or without dialog
var __submitButton = this.submitButton;
var __form = this.form;
setTimeout(function() {
BX.removeClass(__submitButton, 'ui-btn-clock');
__form.disabled = false;
formParams[formID]["submitted"] = false;
}, 3000); // timeout needed to process a form on a back-end
}, {
submitButton: submitButton,
form: this
}));
}
BX.submit(BX(formID), value);
formParams[formID]["submitted"] = true;
}
}, this);
var onHandlerInited = function(obj, form) {
if (form == formID)
{
formParams[formID]["handler"] = obj;
BX.addCustomEvent(obj.eventNode, 'OnControlClick', function() {window.SBPETabs.changePostFormTab('message');});
var OnAfterShowLHE = function()
{
var div = [BX('feed-add-post-form-notice-blockblogPostForm'),
BX('feed-add-buttons-blockblogPostForm'),
BX('feed-add-post-content-message-add-ins')];
for (var ii = 0; ii < div.length; ii++)
{
if (!!div[ii])
{
BX.adjust(div[ii], { style : { display : "block", height : "auto", opacity : 1 } } );
}
}
if(formParams[formID]["showTitle"])
window['showPanelTitle_' + formID](true, false);
},
OnAfterHideLHE = function()
{
var ii,
div = [
BX('feed-add-post-form-notice-blockblogPostForm'),
BX('feed-add-buttons-blockblogPostForm'),
BX('feed-add-post-content-message-add-ins')];
for (ii = 0; ii < div.length; ii++)
{
if (!!div[ii])
{
BX.adjust(div[ii], {style:{display:"block",height:"0px", opacity:0}});
}
}
if(formParams[formID]["showTitle"])
window['showPanelTitle_' + formID](false, false);
};
BX.addCustomEvent(obj.eventNode, 'OnAfterShowLHE', OnAfterShowLHE);
BX.addCustomEvent(obj.eventNode, 'OnAfterHideLHE', OnAfterHideLHE);
if (obj.eventNode.style.display == 'none')
OnAfterHideLHE();
else
OnAfterShowLHE();
}
},
onEditorInited = function(editor)
{
if (BX.util.in_array(editor.id, window.SBPEFullForm.getInstance().initedEditorsList))
{
return;
}
if (editor.id == formParams[formID]["editorID"])
{
formParams[formID]["editor"] = editor;
if(formParams[formID]["autoSave"] != "N")
new BlogPostAutoSave(formParams[formID]["autoSave"], formParams[formID]["restoreAutosave"]);
var
f = window[editor.id + 'Files'],
handler = LHEPostForm.getHandler(editor.id),
intId, id, node, needToReparse = [],
controller = null;
for (id in handler['controllers'])
{
if (handler['controllers'].hasOwnProperty(id))
{
if (handler['controllers'][id]["parser"] && handler['controllers'][id]["parser"]["bxTag"] == "postimage")
{
controller = handler['controllers'][id];
break;
}
}
}
var closure = function(a, b) { return function() { a.insertFile(b); } },
closure2 = function(a, b, c) { return function() {
if (controller)
{
controller.deleteFile(b, {});
BX.remove(BX('wd-doc' + b));
BX.ajax({ method: 'GET', url: c});
}
else
{
a.deleteFile(b, c, a, {controlID : 'common'});
}
} };
for (intId in f)
{
if (f.hasOwnProperty(intId))
{
if (controller)
{
controller.addFile(f[intId]);
}
else
{
id = handler.checkFile(intId, "common", f[intId]);
needToReparse.push(intId);
if (!!id && BX('wd-doc'+intId) && !BX('wd-doc'+intId).hasOwnProperty("bx-bound"))
{
BX('wd-doc'+intId).setAttribute('bx-bound', 'Y');
if ((node = BX.findChild(BX('wd-doc'+intId), {className: 'feed-add-img-wrap'}, true, false)) && node)
{
BX.bind(node, "click", closure(handler, id));
node.style.cursor = "pointer";
}
if ((node = BX.findChild(BX('wd-doc'+intId), {className: 'feed-add-img-title'}, true, false)) && node)
{
BX.bind(node, "click", closure(handler, id));
node.style.cursor = "pointer";
}
if ((node = BX.findChild(BX('wd-doc'+intId), {className: 'feed-add-post-del-but'}, true, false)) && node)
{
BX.bind(node, "click", closure2(handler, intId, f[intId]['del_url']));
node.style.cursor = "pointer";
}
}
}
if ((node = BX.findChild(BX('wd-doc'+intId), {className: 'feed-add-post-del-but'}, true, false)) && node)
{
BX.bind(node, "click", closure2(handler, intId, f[intId]['del_url']));
node.style.cursor = "pointer";
}
}
}
if (needToReparse.length > 0)
{
editor.SaveContent();
var content = editor.GetContent();
content = content.replace(new RegExp('\\&\\#91\\;IMG ID=(' + needToReparse.join("|") + ')([WIDTHHEIGHT=0-9 ]*)\\&\\#93\\;','gim'), '[IMG ID=$1$2]');
editor.SetContent(content);
editor.Focus();
}
window.SBPEFullForm.getInstance().initedEditorsList.push(editor.id);
}
};
BX.addCustomEvent(window, 'onInitialized', onHandlerInited);
if (formParams[formID]["handler"])
onHandlerInited(formParams[formID]["handler"], formID);
BX.addCustomEvent(window, 'OnEditorInitedAfter', onEditorInited);
if (formParams[formID]["editor"])
{
onEditorInited(formParams[formID]["editor"]);
}
BX.addCustomEvent(window, 'onSocNetLogMoveBody', function(p){ if(p == 'sonet_log_microblog_container') { reinit(formID); } } );
BX.ready(function() {
if (BX.browser.IsIE() && BX('POST_TITLE'))
{
var showTitlePlaceholderBlur = function(e)
{
if (!this.value || this.value == this.getAttribute("placeholder")) {
this.value = this.getAttribute("placeholder");
BX.removeClass(this, 'feed-add-post-inp-active');
}
};
BX.bind(BX('POST_TITLE'), "blur", showTitlePlaceholderBlur);
showTitlePlaceholderBlur.apply(BX('POST_TITLE'));
BX('POST_TITLE').__onchange = BX.delegate(
function(e) {
if ( this.value == this.getAttribute("placeholder") ) { this.value = ''; }
if ( this.className.indexOf('feed-add-post-inp-active') < 0 ) { BX.addClass(this, 'feed-add-post-inp-active'); }
},
BX('POST_TITLE')
);
BX.bind(BX('POST_TITLE'), "click", BX('POST_TITLE').__onchange);
BX.bind(BX('POST_TITLE'), "keydown", BX('POST_TITLE').__onchange);
BX.bind(BX('POST_TITLE').form, "submit", function(){if(BX('POST_TITLE').value == BX('POST_TITLE').getAttribute("placeholder")){BX('POST_TITLE').value='';}});
}
if (params['activeTab'] !== '')
window.SBPETabs.changePostFormTab(params['activeTab']);
});
};
})();