﻿
//begin БАЗОВЫЙ ДИАЛОГ **********************************************************************************************

function CreateHintDialog(RootSelector, DlgContent)
{
  if (!CreateHintDialog.IdCounter) CreateHintDialog.IdCounter = 0;
  CreateHintDialog.IdCounter++;
  var NewId = "dlg_" + CreateHintDialog.IdCounter;
  DlgContent = DlgContent.replace(/{id}/g, NewId);
  $(RootSelector).append(DlgContent);

  var NewDlg = $("#" + NewId);

  NewDlg.bind("click", function() { NewDlg[0].issrc = true; });
  $(document).bind("click",
      function(event)
      {

        if (NewDlg[0].issrc)
        {
          NewDlg[0].issrc = false;
        }
        else
        {
          if (event.button != 0) return;
          NewDlg.remove();
          $(document).unbind(event);
        }
      }
      );
  return NewDlg;
}
//end БАЗОВЫЙ ДИАЛОГ **********************************************************************************************

//begin ДИАЛОГ - ОТПРАВКА КАРТИНКИ В СМС ТОП**********************************************************************************************

var ContentGoSmsTopDlg =
  '<div id="{id}" class="DlgGoSmsTop" >' +
    '<div class="DlgTopPanel"><a href="#" name="but_ok" >x</a></div>' +
      '<div class="DlgGoSmsTopMainContent" >' +
          'Размещение картинки в SMS-Ленте<br/><br/>' +
          'Отправьте SMS с кодом<br/>' +
          '<input name="tb_CodeImg" class="SmsInput" type="text" /><br/>' +
          'на номер<br/>' +
          '<input name="tb_NumPhone" class="SmsInput" value="7375" type="text" /><br/> ' +
          'если вы в <br/>' +
            '<select name="cb_Country">' +
               '<option value="7375" selected="selected" >Россия</option>' +
             '</select>' +
             '<br/>' +
             '<br/>' +
             'Стоимость отправки SMS 0.99 у.е. без НДС.' +
      '</div>' +
    '<div class="DlgBottomPanel"><div style="float:left;" ><a class="ButClose2" href="#" name="but_ok" >Закрыть</a></div><div style="text-align:right;" ><a href="/smsabout.aspx" target="_blank" > Условия предоставления услуги</a></div></div>' +
  '</div>';

function ShowGoSmsTopDlg(RootSelector, IsSrc)
{
  var Dlg = CreateHintDialog(RootSelector, ContentGoSmsTopDlg);
  Dlg.find("[name=but_ok]").bind("click",
      function()
      {
        if (Dlg[0].cl) Dlg[0].cl();
        Dlg.remove();
        return false;
      });

  Dlg.find("[name=cb_Country]").bind("change",
        function()
        {
          Dlg.find("[name=tb_NumPhone]")[0].value = Dlg.find("[name=cb_Country]")[0].value;
          return false;
        });
  Dlg[0].setImgCode = function(ImgCode)
  {
    Dlg.find("[name=tb_CodeImg]")[0].value = "888+" + ImgCode;
  };

  if (IsSrc)
  {
    Dlg[0].issrc = true;
  }
  else
  {
    Dlg[0].issrc = false;
  }

  return Dlg[0];
}
//end ДИАЛОГ - ОТПРАВКА КАРТИНКИ В СМС ТОП**********************************************************************************************

//begin ДИАЛОГ - ОБ АДМИН-ТОПЕ**********************************************************************************************
var Content4DlgAboutAdminTop =
      '<div id="{id}" class="DlgAboutAdminTop" >' +
        '<div class="DlgTopPanel"><a href="#" name="but_ok" >x</a></div> ' +
        '<div class="DlgAboutAdminTopMainContent" >' +
          'Эти изображения выбраны администратором Радикал-Фото. Администратор ресурса помещает сюда картинки пользователей, которые, на его субъективный взгляд, заслуживают всеобщего внимания. Источником изображений служат галереи проекта.' +
        '</div>' +
          '<br/>' +
        '<div class="DlgBottomPanel" ><a href="#" name="but_ok" >Закрыть</a> </div>' +
      '</div>';

function ShowAboutAdminTopDlg(RootSelector, IsSrc)
{
  var Dlg = CreateHintDialog(RootSelector, Content4DlgAboutAdminTop);
  Dlg.find("[name=but_ok]").bind("click",
      function()
      {
        if (Dlg[0].cl) Dlg[0].cl();
        Dlg.remove();
        return false;
      });
  if (IsSrc)
  {
    Dlg[0].issrc = true;
  }
  else
  {
    Dlg[0].issrc = false;
  }
  return Dlg[0];
}

//end ДИАЛОГ - ОБ АДМИН-ТОПЕ**********************************************************************************************



//begin ДИАЛОГ - ПОИСК КАРТИНКИ ПО URL**********************************************************************************************

var Content4DlgFindImg =
      '<div id="{id}" class="DlgFindImg" >' +
        '<div class="DlgTopPanel"><a href="#" name="but_ok" >x</a></div> ' +
        '<div name="PhSmsTopDlg" style="position:relative" ></div>' +
        '<div class="DlgFindImgMainContent" >' +
        'Что бы разместить изображение в SMS-Ленте, отправьте SMS со специальным кодом на короткий номер. ' +
        'Для получения кода нажмите на кнопку <img style="vertical-align: middle;" src="/BridgeLegacy/Static/Design/smstop.png" /> под нужной картинкой на странице с увеличенным изображением.<br/>' +
        '<br/>' +
        'SMS-Лента движется слева направо по мере поступления в неё новых изображений.' +

        '<div style="margin-top:20px;" >Если у вас есть ссылка на изображение, вы можете получить код для Sms здесь. Вставьте ссылку в текстовое поле и нажмите кнопку продолжить.</div>' +
          '<br/>' +
          '<div name="DivFindContent" >' +

            '<div>Ссылка</div>' +
            '<div style="margin-bottom:5px;"><input type="text" name="tb_ImgUrl" style="width:270px;" /> <input type="button" class="DlgButtonCorrect" name="but_GoFind" value="Продолжить" /></div>' +
            '<div name="DivResultFind" style="display:none;" >' +
              '<img style="vertical-align:middle;" name="phImg" />&nbsp;&nbsp;&nbsp;<input type="button" class="DlgButtonCorrect" name="but_smstop" value="Получить код для SMS" />' +
            '</div>' +

          '</div>' +
        '</div>' +
        '<br/>' +
        '<br/>' +
        '<div class="DlgBottomPanel" ><a href="#" name="but_ok" >Закрыть</a> </div>' +

      '</div>';

function ShowFindImgDlg(RootSelector, IsSrc)
{
  var Dlg = CreateHintDialog(RootSelector, Content4DlgFindImg);
  Dlg.find("[name=but_ok]").bind("click",
      function()
      {
        if (Dlg[0].cl) Dlg[0].cl();
        Dlg.remove();
        return false;
      });
  Dlg.find("[name=but_smstop]").bind("click",
      function()
      {
        if (Dlg.LastImgCode)
        {
          var SmsTopDlg = ShowGoSmsTopDlg(Dlg.find("[name=PhSmsTopDlg]")[0], false);
          SmsTopDlg.setImgCode(Dlg.LastImgCode);
          $(SmsTopDlg).css("left", "30px");
        }
        return false;
      });

  Dlg.find("[name=but_GoFind]").bind("click",
     function()
     {
       var param = { ImgUrl: Dlg.find("[name=tb_ImgUrl]")[0].value };
       var ajsett =
          {
            url: "/BridgeLegacy/ImgService.asmx/FindImg4Url",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            data: JSON.stringify(param),
            success:
            function(data)
            {
              if (data.d)
              {
                Dlg.find("[name=DivResultFind]").show();
                //Dlg.find("[name=phImg]").html("<img  src='" + data.d.ImgXUrl + "' />");
                Dlg.find("[name=phImg]")[0].src = data.d.ImgXUrl;
                Dlg.LastImgCode = data.d.ID_DISPLAY_FOR_USER;
              }
              else
              {
                Dlg.find("[name=DivResultFind]").hide();
                Dlg.LastImgCode = null;
                alert("Не удалось найти картинку.");
              }
            },
            error:
            function(XMLHttpReqObj, textStatus, errorThrown)
            {
              alert("Ошибка обращения к серверу");
            }
          };
       $.ajax(ajsett);
     });

  if (IsSrc)
  {
    Dlg[0].issrc = true;
  }
  else
  {
    Dlg[0].issrc = false;
  }

  return Dlg[0];
}
//end ДИАЛОГ - ПОИСК КАРТИНКИ ПО URL**********************************************************************************************

//begin ДИАЛОГ - КОДЫ КАРТИНКИ**********************************************************************************************

var Content4DlgGetImgCode =
      '<div id="{id}" class="DlgCodeImg" >' +
        '<div class="DlgTopPanel"><a href="#" name="but_ok" >x</a></div>' +
          '<div class="DlgCodeImgMainContent" >' +
              ' <div>     <span>Коды</span>     <br />     <select name="sel4typelinks" style="width: 250px">       <option value="1">1. Ссылка</option>       <option value="2">2. Картинка</option>       <option value="3">3. Превью</option>       <option value="6">6. HTML: картинка</option>       <option value="7">7. HTML: превью</option>       <option value="8">8. BBCode: картинка</option>       <option value="9">9. BBCode: превью</option>       <option value="10">10. Картинка на странице просмотра</option>       <option value="0" selected="selected">Все</option>     </select>     <br />     <span>Переход с превью</span>     <br />     <select name="sel4modelinks">       <option value="0" selected="selected">На страницу просмотра</option>       <option value="1">На графический файл</option>     </select>     <br />     <span>Полноразмерное изображение</span><br />     <select name="sel4modeisburl">       <option value="0">Не кликабельное</option>       <option value="1" selected="selected">Переход на URL</option>     </select>     <input name="tb_userbigurl" style="width: 200px;" type="text" value="http://www.radikal.ru" />     <br />        <br />     <div class="TrImgCode1">       <div>         1.<span>Ссылка</span></div>       <input name="tb_img_code_1" type="text" />     </div>     <div class="TrImgCode2">       <div>         2.<span>Картинка в тексте</span></div>       <input name="tb_img_code_2" type="text" />     </div>     <div class="TrImgCode3">       <div>         3.<span>Превью - увеличение по клику </span>       </div>       <input name="tb_img_code_3" type="text" />     </div>     <div class="TrImgCode6">       <div>         6.<span>HTML: картинка в тексте </span>       </div>       <input name="tb_img_code_6" type="text" />     </div>     <div class="TrImgCode7">       <div>         7.<span>HTML: превью - увеличение по клику</span>       </div>       <input name="tb_img_code_7" type="text" />     </div>     <div class="TrImgCode8">       <div>         8.<span>BBCode, строчные буквы: картинка в тексте </span>       </div>       <input name="tb_img_code_8" type="text" />     </div>     <div class="TrImgCode9">       <div>         9.<span>BBCode, строчные буквы: превью - увеличение по клику </span>       </div>       <input name="tb_img_code_9" type="text" />     </div>     <div class="TrImgCode10">       <div>         10.<span>Картинка на странице просмотра полноразмерного изображения </span>       </div>       <input name="tb_img_code_10" type="text" />     </div>   </div>' +
          '</div>' +
        '<div class="DlgBottomPanel" ><a href="#" name="but_ok" >Закрыть</a> </div>' +
      '</div>';

function CreateCodeImgDialog(p_img, RootSelector, IsSrc)
{
  var Dlg = CreateHintDialog(RootSelector, Content4DlgGetImgCode);
  Dlg[0].MainImg = p_img;

  Dlg.find("[name=but_ok]").bind("click",
      function()
      {
        if (Dlg[0].cl) Dlg[0].cl();
        Dlg.remove();
        return false;
      });
  Dlg.find("select").bind("change",
      function()
      {
        MakeAllImgCode(Dlg[0]);
      });
  Dlg.find("input[name=tb_userbigurl]").bind("change",
      function()
      {
        MakeAllImgCode(Dlg[0]);
      });

  Dlg.find("input[name^=tb_img_code_]").bind("click",
      function(event)
      {
        this.focus(); this.select();
      });

  Dlg.find("select[name=sel4typelinks] option[value='" + Dlg[0].MainImg.CodeParams.codeset + "']").attr("selected", "selected");
  Dlg.find("select[name=sel4modelinks] option[value='" + Dlg[0].MainImg.CodeParams.codetype + "']").attr("selected", "selected");
  Dlg.find("select[name=sel4modeisburl] option[value='" + Dlg[0].MainImg.CodeParams.codeisburl + "']").attr("selected", "selected");
  Dlg.find("input[name=tb_userbigurl]")[0].value = Dlg[0].MainImg.CodeParams.codeburl;


  if (IsSrc)
  {
    Dlg[0].issrc = true;
  }
  else
  {
    Dlg[0].issrc = false;
  }
  return Dlg[0];
}


function MakeAllImgCode(DlgImgCode)
{
  var v_ml = $(DlgImgCode).find("[name=sel4modelinks]")[0].value;
  var v_sl = $(DlgImgCode).find("[name=sel4typelinks]")[0].value;
  var v_codeburl = $(DlgImgCode).find("[name=tb_userbigurl]")[0].value;
  var v_codeisbur = $(DlgImgCode).find("[name=sel4modeisburl]")[0].value;
  var v_tmp_codeisburl = "";
  if (v_codeisbur == "1") v_tmp_codeisburl = "b1";

  var CodeNums = ["1", "2", "3", "6", "7", "8", "9", "10"];
  if (v_sl == "0")
  {
    $(DlgImgCode).find("[class^=TrImgCode]").css("display", "block");
  }
  else
  {
    $(DlgImgCode).find("[class^=TrImgCode]").css("display", "none");
    $(DlgImgCode).find(".TrImgCode" + v_sl).css("display", "block");
  }

  for (var i = 0; i < CodeNums.length; i++)
  {
    $(DlgImgCode).find("[name=tb_img_code_" + CodeNums[i] + "]")[0].value = MakeLink(CodeNums[i] + "t" + v_ml + v_tmp_codeisburl, DlgImgCode.MainImg.Url, DlgImgCode.MainImg.SUrl, DlgImgCode.MainImg.FUrl, v_codeburl);
  }

  if (v_sl != "0")
  {
    var TargInput = $(DlgImgCode).find("input[name=tb_img_code_" + v_sl + "]")[0];
    //TargInput.focus();
    TargInput.select();
  }

  DlgImgCode.MainImg.CodeParams.codetype = v_ml;
  DlgImgCode.MainImg.CodeParams.codeset = v_sl;
  DlgImgCode.MainImg.CodeParams.codeisburl = v_codeisbur;
  DlgImgCode.MainImg.CodeParams.codeburl = v_codeburl;

  var param = { p_codeset: v_sl, p_codetype: v_ml, p_codeisburl: v_codeisbur, p_codeburl: v_codeburl };
  var ajsett =
      {
        url: "/ImgLinksService.asmx/SetModeImgLinks",
        type: "POST",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: JSON.stringify(param)
      };
  $.ajax(ajsett);
}

function MakeLink(p_templ, p_url, p_urlpr, p_urlf, p_url4big)
{
  var template_st = "";
  switch (p_templ)
  {
    case "1t0": template_st = "{0}";
      break;
    case "2t0": template_st = "[IMG]{0}[/IMG]";
      break;
    case "3t0": if (p_urlpr != "") template_st = "[URL={3}][IMG]{1}[/IMG][/URL]";
      break;
    case "6t0": template_st = "<img src=\"{0}\" >";
      break;
    case "7t0": if (p_urlpr != "") template_st = "<a target=\"_blank\" href=\"{3}\"><img src=\"{1}\" ></a>";
      break;
    case "8t0": template_st = "[img]{0}[/img]";
      break;
    case "9t0": if (p_urlpr != "") template_st = "[url={3}][img]{1}[/img][/url]";
      break;
    case "10t0": template_st = "{3}";
      break;

    case "1t1": template_st = "{0}";
      break;
    case "2t1": template_st = "[IMG]{0}[/IMG]";
      break;
    case "3t1": if (p_urlpr != "") template_st = "[URL={0}][IMG]{1}[/IMG][/URL]";
      break;
    case "6t1": template_st = "<img src=\"{0}\" >";
      break;
    case "7t1": if (p_urlpr != "") template_st = "<a target=\"_blank\" href=\"{0}\"><img src=\"{1}\" ></a>";
      break;
    case "8t1": template_st = "[img]{0}[/img]";
      break;
    case "9t1": if (p_urlpr != "") template_st = "[url={0}][img]{1}[/img][/url]";
      break;
    case "10t1": template_st = "{3}";
      break;

    case "1t0b1": template_st = "{0}";
      break;
    case "2t0b1": template_st = "[URL={5}][IMG]{0}[/IMG][/URL]";
      break;
    case "3t0b1": if (p_urlpr != "") template_st = "[URL={3}][IMG]{1}[/IMG][/URL]";
      break;
    case "6t0b1": template_st = "<a target=\"_blank\" href=\"{5}\"><img src=\"{0}\" ></a>";
      break;
    case "7t0b1": if (p_urlpr != "") template_st = "<a target=\"_blank\" href=\"{3}\"><img src=\"{1}\" ></a>";
      break;
    case "8t0b1": template_st = "[url={5}][img]{0}[/img][/url]";
      break;
    case "9t0b1": if (p_urlpr != "") template_st = "[url={3}][img]{1}[/img][/url]";
      break;
    case "10t0b1": template_st = "{3}";
      break;

    case "1t1b1": template_st = "{0}";
      break;
    case "2t1b1": template_st = "[URL={5}][IMG]{0}[/IMG][/URL]";
      break;
    case "3t1b1": if (p_urlpr != "") template_st = "[URL={0}][IMG]{1}[/IMG][/URL]";
      break;
    case "6t1b1": template_st = "<a target=\"_blank\" href=\"{5}\"><img src=\"{0}\" ></a>";
      break;
    case "7t1b1": if (p_urlpr != "") template_st = "<a target=\"_blank\" href=\"{0}\"><img src=\"{1}\" ></a>";
      break;
    case "8t1b1": template_st = "[url={5}][img]{0}[/img][/url]";
      break;
    case "9t1b1": if (p_urlpr != "") template_st = "[url={0}][img]{1}[/img][/url]";
      break;
    case "10t1b1": template_st = "{3}";
      break;
  }

  var res_st = template_st;
  res_st = res_st.replace("{0}", p_url);
  res_st = res_st.replace("{1}", p_urlpr);
  res_st = res_st.replace("{3}", p_urlf);

  if (!p_url4big) p_url4big = "";
  res_st = res_st.replace("{5}", p_url4big);
  return res_st;
}

//end  ДИАЛОГ - КОДЫ КАРТИНКИ***********************************************************************************************
  
  


