﻿var fnStartAnimation = function () { var b = ".main-nav", a = $(b), c = a.offset().left; a.css("left", -a.width() * .1).animate({ left: c }, 500, function () { $(this).removeAttr("style") }); if (location.hash != "") $(b).find("a.scroll-to[href=" + location.hash + "]").trigger("click"); else $(".first-scroll-to").trigger("click") }, fnSendMessageToNiichavo = function () { $("#sendEMailToNiichavo").kwindowShow() }, fnOnImgClickOpenVideo = function () { $("#contentGalery").delegate("img.video-click", "click", function () { var a = $(this); fnShowWindowVideo("youtube", a.attr("title"), a.attr("youtube")) }) }, fnOnLinkHoverShowImg = function () { $(".img-popup").bind("mouseenter", function (a) { var c = $(this), b = $('<div class="img-popup-div" style="position: absolute; opacity: 0"></div>'); b.append($('<img alt="" src="{0}" class="img-popup" />'.format(c.attr("link")))); var d = '<div class="kloading"><img style="position: absolute" src="/content/images/admin/design/ajax-loader.gif" alt="ajax" /></div>'; $(d).appendTo("body").css({ left: a.pageX + 30, top: a.pageY }); b.appendTo("body").children("img").load(function () { $("div.kloading").remove(); var b = $(this).height() * .5; if (!$.browser.msie || $.browser.msie && parseInt($.browser.version, 10) > 8) { var c = $('<img alt="" src="/content/images/admin/design/triangle.png" class="img-triangle" style="position:absolute;z-index:999"/>'); c.prependTo($(this).parent()).css({ left: -24, top: b - 25 }) } $(this).parent().css({ left: a.pageX + 104, top: a.pageY - b }).animate({ left: a.pageX + 54, opacity: 1 }, 300).addClass("img-popup-div-visible") }) }).bind("mouseleave", function () { $("div.img-popup-div-visible").animate({ left: "+=5", opacity: 0 }, 300, function () { $(this).remove() }) }) }, fnEnlargeImg = function () { var a = '<img src="{0}" alt="photo" style="width: inherit; height: auto" />', b = '<div class="kloading"><img src="/content/images/admin/design/ajax-loader.gif" alt="ajax" /></div>'; $("#contentGalery").delegate("img.img-click", "click", function () { $(b).appendTo("body").center().show(); var e = fnGetQueryString("a", $(this).attr("src")), c = $(a.format(e)), d = $.fn.kwindow({ header: "", isModal: true, showAfterCreate: false, cancelButtonText: "Закрыть", content: c, removeAfterClose: true, cancelAction: function (a) { a.winBody.empty() } }); c.load(function () { $("div.kloading").remove(); var b = $(window).height() * .85, a = $(this).width(); $(this).css("height", b > a ? a + "px" : "inherit"); d.kwindowSetBodyHeight((b > a ? a : b) + "px"); d.kwindowShow() }) }) }, fnFillImagesList = function (c, b) { var a = null; b.kgallery({ remoteFuncName: kcms.globalJsonWebServicePath + "GetListNamesOfImageFiles", dataToRemoteFunc: { RelativePath: c }, enableAutoChangePage: true, scrollTime: 1e3, itemsPerPage: 1, pageWidth: "auto", height: 146, showButtonOnHover: true, cssClassPageRightActive: a, cssClassPageRightDisabled: a, cssClassPageLeftActive: a, cssClassPageLeftDisabled: a, cssClassPageEndActive: a, cssClassPageEndDisabled: a, cssClassPageStartActive: a, cssClassPageStartDisabled: a, cssClassPagePlayActive: "kgallery-by-active", cssClassPagePauseActive: "kgallery-bp-active", cssClassPageItem: "slide", pagingButtonMarginTop: 0, pagingButtonPosition: "center", tmpl: '<div class="slide" style="margin-right: 5px"><img alt="студия Гарра Руфа, слайды" src="/service/Service.svc/web/GetImageThumb?a=${$data}&rh=146" /></div>' }) }, fnFillImagesList_ = function (c, b) { var a = null; b.kgallery({ remoteFuncName: kcms.globalJsonWebServicePath + "GetNews", dataToRemoteFunc: { _iUserSessionGuid: kcms.UserSessionGuid, _iPageIndex: 1, _iPageSize: 10 }, fnInTmpl: function (a) { var b = "", c = ""; if (a.Body) if (a.Body.length > 50) { b = a.Body.substring(0, 50); c = "..." } else b = a.Body; return "<div>{0}<span>{1}</span></div>".format(b, c) }, enableAutoChangePage: true, scrollTime: 1e3, itemsPerPage: 1, pageWidth: "auto", height: 146, showButtonOnHover: true, cssClassPageRightActive: a, cssClassPageRightDisabled: a, cssClassPageLeftActive: a, cssClassPageLeftDisabled: a, cssClassPageEndActive: a, cssClassPageEndDisabled: a, cssClassPageStartActive: a, cssClassPageStartDisabled: a, cssClassPagePlayActive: "kgallery-by-active", cssClassPagePauseActive: "kgallery-bp-active", cssClassPageItem: "slide", pagingButtonMarginTop: 0, pagingButtonPosition: "center", tmpl: '<div class="mini-news" style="margin-right: 5px"><span class="mini-news-header kword-wrap">${Header}</span><br /><span class="kcomment-date">${fnToLongDateString($item.data.CreateDate)}</span>{{html $item.fn($item.data)}}</div>' }) }, fnShowWindowVideo = function (g, d, f) { var a, e = '<object width="460" height="353"><param name="FileName" value="http://www.zman.com/video/2010/12/21/26070.asx"><param name="AutoStart" value="1"><param name="AutoSize" value="1"><param name="StretchToFit" value="1"><param name="EnableContextMenu" value="1"><param name="ShowStatusBar" value="1"><embed src="http://www.zman.com/video/2010/12/21/26070.asx" type="application/x-mplayer2" autosize="1" stretchtofit="0" enablecontextmenu="0" showstatusbar="0" width="460" height="353"></object><p><a href="http://www.zman.com/video/2010/12/21/26070.html" target="_blank">сcылка на источник</a></p>', b = '<p>с 44 по 47 минуту</p><object width="460" height="353"><embed width="460" height="353" align="middle" flashvars="stats=http://www.1tv.ru/addclick/" allowscriptaccess="always" swliveconnect="true" wmode="window" allowfullscreen="true" quality="high" bgcolor="white" name="videoportal" id="videoportal" src="http://www.1tv.ru/promoovideo/27155" type="application/x-shockwave-flash"></object><p><a href="http://www.zdorovieinfo.ru/zhitzdorovo/article/?article=1321918" target="_blank">сcылка на источник</a></p>', c = '<object style="height: 390px; width: 640px"><param name="movie" value="{0}"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="{0}" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="390"></object>'; switch (g) { case "israel": a = e; break; case "youtube": a = c.format(f); break; case "zdorovie": default: a = b } $.fn.kwindow({ header: d, isModal: true, showAfterCreate: true, cancelButtonText: "Закрыть", content: a, removeAfterClose: true, cancelAction: function (a) { a.winBody.empty() } }) }, fnCheckMessageSize = function (c, b) { var d = $("#sendEMailToNiichavo textarea"), a = d.next().children(); d.bind("keyup", function () { var d = "khidden", e = $(this).val().length; a.removeClass(d); if (e < c) a.removeClass(d).text("Размер сообщения на {0} меньше минимума ({1} знаков)".format(c - e, c)); else if (e > b) a.removeClass(d).text("Размер сообщения на {0} превышает ограничение ({1} знаков)".format(e - b, b)); else a.addClass(d) }) }, fnEmptySpaceSetWidth = function () { $(".empty-space").each(function () { var d = $(this), a = d.prev().height(), c = $(window).height(), b = 150; d.css({ height: (a + b > c ? b : c - a) + "px" }) }) }, fnAfterLogoutActions = function () { var a = ".kcomments"; $(a).each(function () { $(this).kgalleryGetInstance().fnReload(null, function () { kcms.fnReloadCommentGallery($(a)) }) }) }, fnShowLoginPanel = function () { var c = !kcms.UserAuthenticated ? "Вход" : "Выход", b = !kcms.UserAuthenticated ? "вход для зарегистрированных пользователей" : "", d = !kcms.UserAuthenticated ? "logon" : "logout", a = $('<div style="right:5px;top:0px;" class="{0}" title="{2}"><a class="{1}" ktype="{4}" href="javascript:"><span>{3}</span></a></div>'.format(kcms.cssLoginPanel, kcms.cssLoginButton, b, c, d)).css({ opacity: 0 }).appendTo("body"); a.animate({ opacity: 1 }, 500); $("." + kcms.cssLoginPanel).delegate("." + kcms.cssLoginButton, "click", function () { if ($(this).attr("ktype") == "logon") kcms.fnShowLogonResetPassWindow(null, function () { var a = ".kcomments"; $(a).each(function () { $(this).kgalleryGetInstance().fnReload(null, function () { kcms.fnReloadCommentGallery($(a)) }) }) }); else $(this).attr("ktype") == "logout" && kcms.sec.Logout(fnAfterLogoutActions) }) }, fnShowPartnersButton = function () { var b = '<a href="http://www.japmag.ru/" target="_about" style="padding-right: 3px"><img src="/service/Service.svc/web/GetImageThumb?a=/Content/images/partners/japmag.jpg&rh=80" alt="www.japmag.ru - японская косметика и бытовая химия" title="www.japmag.ru - японская косметика и бытовая химия"></a>', a = $('<div class="partners"><div class="partners-body">' + b + '</div><div><div class="partners-footer"><span>наши партнёры</span></div></div></div>'); a.appendTo("body"); a.appendTo(".partners-here").slideDown().bind("mouseenter mouseleave", function () { $(this).find(".partners-body").slideToggle(150) }) }, fnInitGallery = function () { $(".e-kgallery").first().empty().kgallery({ remoteFuncName: kcms.globalJsonWebServicePath + "GetListNamesOfImageFiles", dataToRemoteFunc: { RelativePath: "/content/images/photo/", searchMask: "photo_*b.*" }, scrollTime: 300, itemsPerPage: 4, cssClassPageRightActive: "kgallery-br-active", cssClassPageRightDisabled: "kgallery-br-disabled", cssClassPageLeftActive: "kgallery-bl-active", cssClassPageLeftDisabled: "kgallery-bl-disabled", cssClassPageEndActive: "kgallery-be-active", cssClassPageEndDisabled: "kgallery-be-disabled", cssClassPageStartActive: "kgallery-bs-active", cssClassPageStartDisabled: "kgallery-bs-disabled", cssClassPagePlayActive: null, cssClassPagePauseActive: null, tmpl: '<div class="kgallery-page-item"><img alt="студия Гарра Руфа, галерея" src="/service/Service.svc/web/GetImageThumb?a=${$data}&rw=350&cx=50&cw=260&ch=195" class="img-text img-click" /></div>' }) }, fnInitComments = function () { var a = "good", b = function (a) { var b = { obj: { $gallery: a.data.$c }, objParams: a.data.tmplItem.data, opName: a.data.opName }; kcms.fnShowAddAnswerEditCommentWindow(b, function (b) { if (a.data.opName == "answer") { var c = a.data.$c.kgalleryGetInstance(); c.fnReload(null, function () { }) } else { a.data.tmplItem.data.LastEditDate = Date.now(); a.data.tmplItem.data.Body = b._iBody; a.data.tmplItem.data.UserName = b._iUserName; if (b._iRemoveQuote) a.data.tmplItem.data.ReplyToComment = null; a.data.tmplItem.update() } }, a.data.winHeader) }, c = function (b) { var c = { _iUserSessionGuid: kcms.UserSessionGuid, _iObjGuid: b.data.tmplItem.data.Id, _iIsGood: b.data.opName == a }; kajaxCall("POST", c, {}, kcms.globalJsonWebServicePath + "AssessComment", function () { b.data.tmplItem.data.IsGood = b.data.opName == a; b.data.tmplItem.update() }) }; kcms.fnInitGalleryEx({ entityName: "Comment", entityTitle: "Отзыв", nameOfServerFnGet: "GetComments", fnSecTitle: function (a) { return 'Отзыв пользователя "{0}" от {1}'.format(a.UserName, fnToLongDateString(a.CreateDate)) }, $c: $(".e-comments"), actions: { create: { opName: "add", css: "kgallery-add", title: "Добавить отзыв", fnName: "kcms.fnShowAddAnswerEditCommentWindow"} }, filter: [{ id: "_iShowDeleted", name: "выводить удалённые отзывы" }, { id: "_iShowGoodOnly", name: "выводить только хорошие отзывы"}], itemActions: { create: { opName: "answer", css: "kcomment-a", title: "ответить", fnWinHeader: function (a) { return 'Ответить на вопрос "{0}, от {1}"'.format(a.UserName, fnToLongDateString(a.CreateDate)) }, fnAction: b }, good: { opName: a, css: "kcomment-good khidden", title: "хороший", fnAction: c }, bad: { opName: "bad", css: "kcomment-bad khidden", title: "ничего выдающегося", fnAction: c }, update: { opName: "edit", css: "kcomment-edit khidden", title: "изменить", fnWinHeader: function () { return "Изменить отзыв" }, fnAction: b, fnPerm: function (a) { var b = "khidden"; if (a.tmplItem.data.IsGood) a.itemActions.bad.$a.removeClass(b); else a.itemActions.good.$a.removeClass(b) } } }, kgallery: { fnInTmpl: function (a, d) { if (d === "body") return '<pre class="kcomment-body kword-wrap">{0}</pre>'.format(a); else { var b, c = "", e = '<span><b>цитата</b> (<span class="kcomment-header kword-wrap">' + a.ReplyToComment.UserName + '</span>, <span class="kcomment-date">' + fnToLongDateString(a.ReplyToComment.CreateDate) + "</span>)</span><br/>"; if (a.ReplyToComment.Body.length > 50) { b = a.ReplyToComment.Body.substring(0, 50) + "..."; c = '<a kid="' + a.ReplyToComment.Id + "\" onclick=\"kcms.fnShowCommentWindow({objParams: {Id: $(event.target).attr('kid')}, opName: 'question'}, null, '');\">...подробнее</a>" } else b = a.ReplyToComment.Body; return '<div class="kcomment-reply-to">{0}<pre class="kcomment-body kword-wrap">{1}</pre><span>{2}</span></div>'.format(e, b, c) } }, tmpl: '{{if (Id)}}<div class="kgallery-page-item {{if (WasDeleted)}}kopacity{{/if}}" id="${Id}"><span class="kcomment-header kword-wrap">{{if ($item.data.AuthorizedUser)}}<img class="img-gold-star-16" style="padding-right: 2px" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="/>{{/if}}${UserName}</span><span class="kcomment-date">, ${fnToLongDateString($item.data.CreateDate)}</span><div style="float: right">{{if (kcms.UserAuthenticated && $item.data.IsGood)}}<img class="img-good-16" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="/>{{/if}}</div>{{if ($item.data.ReplyToComment)}}{{html $item.fn($item.data)}}{{/if}}{{html $item.fn($item.data.Body, "body")}}<div class="kcomment-date">{{if (kcms.UserAuthenticated)}}<span>последнее изменение: ${fnToLongDateString($item.data.LastEditDate)}</span>{{/if}}{{if (WasDeleted)}}<br/><span style="color: red">удалён</span>{{/if}}</div></div>{{/if}}'} }) }, fnInitNews = function () { var a = function (a) { var b = { obj: { $gallery: a.data.$c }, objParams: a.data.tmplItem.data, opName: a.data.opName }; kcms.fnShowAddEditNewsWindow(b, function (b) { a.data.tmplItem.data.LastEditDate = Date.now(); a.data.tmplItem.data.Body = b._iBodyNews; a.data.tmplItem.data.Header = b._iHeader; a.data.tmplItem.update() }, a.data.winHeader) }; kcms.fnInitGalleryEx({ entityName: "News", entityTitle: "Новости", nameOfServerFnGet: "GetNews", fnSecTitle: function (a) { return 'Новости "{0}" от {1}'.format(a.Header, fnToLongDateString(a.CreateDate)) }, $c: $(".e-news"), actions: { create: { opName: "add", css: "kgallery-add", title: "Добавить новость", fnName: "kcms.fnShowAddEditNewsWindow", hideIfUserNotAuthenticated: true} }, filter: [{ id: "_iShowDeleted", name: "выводить удалённые записи"}], itemActions: { update: { opName: "edit", css: "kcomment-edit khidden", title: "изменить", fnWinHeader: function () { return "Изменить новость" }, fnAction: a} }, kgallery: { fnInTmpl: function (a) { return '<div class="kcomment-body" style="padding-top: 10px">{0}</div>'.format(a) }, tmpl: '{{if (Id)}}<div class="kgallery-page-item {{if (WasDeleted)}}kopacity{{/if}}" id="${Id}"><span class="kcomment-header kword-wrap">${Header}</span><br /><span class="kcomment-date">${fnToLongDateString($item.data.CreateDate)}</span>{{html $item.fn($item.data.Body, "body")}}<div class="kcomment-date">{{if (kcms.UserAuthenticated)}}<br/><span>последнее изменение: ${fnToLongDateString($item.data.LastEditDate)}</span>{{/if}}{{if (WasDeleted)}}<br/><span style="color: red">удалена</span>{{/if}}</div></div>{{/if}}'} }) }, fnCreateWinSendMailToNiichavo = function () { var a = "#sendEMailToNiichavo"; $(a).kwindow({ header: "Написать сообщение для niichavo", isModal: true, showAfterCreate: false, buttons: { sendMessageToNiichavo: { text: "Отправить", action: function () { var b = $(a), d = { SenderEmail: b.find("#SenderEmail").val(), Message: b.find("#MessageToNiichavo").val() }, c = function () { $.fn.kpopupMessage({ text: "сообщение отправлено" }) }; kajaxCall("POST", d, {}, kcms.globalJsonWebServicePath + "SendEmailToNiichavo", c) } }} }).bind("keypress", function (a) { a.keyCode == 13 && $(this).find("a#sendMessageToNiichavo").trigger("click") }) }, fnInitScrollTo = function () { var a = 0; if ($.browser.msie) a = 4; else if ($.browser.opera) a = 3; $(".scroll-to").bind("click", function () { var c = $($(this).attr("href")); if (c.length > 0) { var d = c.offset().top, b = c.find("h1"); (!$.browser.msie || $.browser.msie && parseInt($.browser.version, 10) > 8) && b.animate({ opacity: 0 }, 0); b.css("marginLeft", $("#content").width() - b.width() + "px"); $("html:not(:animated),body:not(:animated)").animate({ scrollTop: d + a }, 500); if (!$.browser.msie || $.browser.msie && parseInt($.browser.version, 10) > 8) b.animate({ opacity: 1, marginLeft: 0 }, 700); else b.animate({ marginLeft: 0 }, 700) } }) }, fnCheckBrowser = function () { if ($.browser.msie && parseInt($.browser.version, 10) < 8) { var a = '<b>У Вас устаревший браузер!</b><br/><br/>Для корректного отображения сайта установите<br />последнюю версию браузера <a href="http://windows.microsoft.com/ru-RU/internet-explorer/products/ie/home" target="_about">Internet Explorer</a><br />(не ниже 8 версии).'; $.fn.kpopupMessage({ text: a, delay: 3e4, type: "warning" }) } }, fnValidInit = function () { kcms.fnConfigureControls($("#loginWindow")); kcms.fnConfigureControls($("#sendEMailToNiichavo")) }; $(function () { fnInitScrollTo(); $.fn.preloadImages("/content/images/admin/design/ajax-loader.gif", "/service/Service.svc/web/GetImageThumb?a=/Content/images/partners/japmag.jpg&rh=80"); fnEmptySpaceSetWidth(); fnEnlargeImg(); fnOnImgClickOpenVideo(); fnOnLinkHoverShowImg(); fnFillImagesList("/content/images/photo/", $(".slideshow")); setTimeout(function () { fnStartAnimation(); kcms.fnLoadSecurityScripts(fnShowLoginPanel) }, 200); fnInitGallery(); fnValidInit(); fnCheckMessageSize(10, 3e3); fnCreateWinSendMailToNiichavo(); fnCheckBrowser(); setTimeout(function () { fnShowPartnersButton() }, 1e3); fnInitComments(); fnInitNews() });
