;***************************************************
dialog sms_adds {
  title "Добавление операторов"
  size -1 -1 772 583
  option pixels
  edit "", 13, 77 275 245 20, autohs
  edit "", 14, 77 295 245 20, autohs
  edit "", 15, 77 315 245 20, autohs
  edit "", 16, 77 335 245 20, autohs
  edit "", 17, 77 355 245 20, autohs
  edit "", 48, 117 32 205 20, autohs
  edit "", 38, 117 52 205 20, autohs
  edit "", 40, 117 72 205 20, autohs
  edit "", 2, 454 33 279 20, autohs
  edit "", 5, 454 54 277 20, read
  edit "", 26, 117 250 205 20, autohs
  edit "", 29, 127 445 205 20, autohs
  edit "", 30, 357 123 361 122, multi return vsbar
  edit "", 43, 447 325 281 20, autohs
  button "Проверить", 4, 354 54 85 20
  button "Проверить", 6, 117 475 75 20
  button "Сохранить", 46, 540 496 75 27
  button "Загрузить", 49, 535 399 75 27
  button "Проверить", 50, 247 377 75 20
  button "Отправить на сайт", 59, 541 528 73 32, multi
  button "Выйти", 60, 635 523 105 44, cancel
  button "Закачать", 67, 79 99 89 20
  button "Закачать", 68, 240 99 89 20, disable
  button "Удалить", 57, 535 430 75 27
  icon 27, 207 475 120 60
  check "Есть картинка", 19, 27 420 95 14
  check "multipart/form-data", 56, 465 104 115 14, hide
  combo 21, 247 420 75 78, size drop
  combo 23, 17 495 85 73, size drop
  combo 63, 14 121 154 102, sort size edit vsbar
  combo 64, 181 121 147 102, sort size vsbar
  list 24, 347 375 172 193, size vsbar
  radio "Get", 33, 405 83 45 14
  radio "Post", 34, 465 83 45 14
  box "Отсылка", 31, 347 9 392 287
  box "Ответ сервера", 42, 347 300 391 64
  box "Оператор", 1, 7 9 330 221
  box "Ключи", 7, 7 235 330 165
  box "Картинка", 18, 7 405 330 165
  text "Страна", 65, 14 101 38 16
  text "Регион", 66, 183 101 36 16
  text "Путь до картинки", 28, 27 445 95 14
  text "Путь до скрипта", 3, 354 33 95 20
  text "Ключ 1", 8, 17 275 45 14
  text "Ключ 2", 9, 17 295 45 14
  text "Ключ 3", 10, 17 315 45 14
  text "Ключ 4", 11, 17 335 45 14
  text "Ключ 5", 12, 17 355 45 14
  text "Тип картинки:", 20, 167 420 75 14
  text "Путь к картинке:", 22, 17 475 95 14
  text "Путь до страницы", 25, 17 250 95 14
  text "Метод:", 32, 355 81 45 14
  text "Что отсылать:", 35, 355 104 75 14
  text "Параметры: ключ1, ключ2, ключ3, ключ4, ключ5, код, текст, преф, номер, ключпр", 36, 357 255 360 34
  text "Префиксы", 37, 17 52 75 14
  text "Длина текста", 39, 17 72 75 14
  text "Отправлено", 41, 357 325 75 14
  text "Оператор", 47, 17 32 75 14
  text "Скачано", 51, 47 535 45 14
  text "", 52, 167 535 165 14
  text "", 53, 167 550 165 14
  text "страница:", 54, 97 535 55 14
  text "картинка:", 55, 97 550 55 14
  box "Текущий", 44, 529 474 100 94
  box "Выделенный", 45, 527 378 100 96
  button "Почитать помощь", 58, 643 400 90 38, multi
  link "Дом. страница", 61, 644 471 87 16
  link "Форум", 62, 644 489 87 16
  box "Полезное", 69, 638 378 100 135
  button "Мои данные", 70, 643 442 90 21, multi
}

;Блок картинки
alias sms_adds.enable.p { if ($1 == 0) did -b sms_adds 23,21,6,29 | if ($1 == 1) did -e sms_adds 23,21,6,29 }
alias sms_adds.enable.f { if ($1 == 0) did -b sms_adds 56 | if ($1 == 1) did -e sms_adds 56 }
;***************************************************
;Сохранить параметр. 1 - откуда брать. 2 - имя сохр. знач. Если 3 = 1 или 3 = 2 и картинки выключены то неважно, есть ли или нет в поле что-нибудь
alias sms_adds_save {
  if ($4 == 1) writeini " $+ $nofile($script) $+ %sms.save.operator $+ " %sms_adds.op $2 $did(sms_adds,$1).state
  else {
    if ($did(sms_adds,$1) == $null) { 
      if (($3 == 0) || ($3 == $null) || ($3 == 2 && $did(sms_adds,19).state == 1)) {
        if (%sms_adds.error == $null) %sms_adds.error = $1
        else { %sms_adds.error =  %sms_adds.error $+ , $1 }
      }
      remini " $+ $nofile($script) $+ %sms.save.operator $+ " %sms_adds.op $2
      return
    }
    if ($4 == 2) {
      writeini " $+ $nofile($script) $+ %sms.save.operator $+ " %sms_adds.op $2 $sms_odnostr_mess($1)
      return
    }
    writeini " $+ $nofile($script) $+ %sms.save.operator $+ " %sms_adds.op $2 $did(sms_adds,$1)
} }

alias sms_save_all {
  if ($readini($nofile($script) $+ option.ini,about_me,name) == $null) { sms_extra.at Сначала заполните информацию о себе
    sms_prefer
    return
  }
  %sms_curdate = $date(yymmdd) $+ $time(HHnn)
  if ($1 == upload) %sms.save.operator = $replace($did(48),$chr(32),$chr(160)) $+ . $+ %sms_curdate
  else %sms.save.operator = operators.ini
  %sms_adds.error = 
  %sms_adds.op = $replace($did(63) $+ . $+ $did(64) $+ . $+ $did(48),$chr(32),$chr(160)) 
  writeini " $+ $nofile($script) $+ %sms.save.operator $+ " %sms_adds.op whosadd $sms_readpref(name) $+ $chr(1) $+ $sms_readpref(site) $+ $chr(1) $+ $sms_readpref(e-mail) $+ $chr(1) $+ $sms_readpref(icq) $+ $chr(1) $+ $sms_readpref(irc) $+ $chr(1) $+ $sms_readpref(chan)
  writeini " $+ $nofile($script) $+ %sms.save.operator $+ " %sms_adds.op ver %sms_curdate
  sms_adds_save 38 pref | sms_adds_save 40 maxs 
  sms_adds_save 2 spath | sms_adds_save 26 spage 1
  sms_adds_save 13 key1 1 | sms_adds_save 14 key2 1 
  sms_adds_save 15 key3 1 | sms_adds_save 16 key4 1 
  sms_adds_save 17 key5 1 | sms_adds_save 30 sms 0 2
  sms_adds_save 43 yes 
  sms_adds_save 29 pic 2 | sms_adds_save 21 type 2 
  sms_adds_save 23 ppicp 2 | sms_adds_save 19 ppict 2 1 
  sms_adds_save 33 get 0 1 | sms_adds_save 34 post 0 1

}
;***************************************************
;Загрузить значение
alias sms_adds_load {
  if ($readini($nofile($script) $+ operators.ini, $did(sms_adds,24).seltext, $2) == $null) { if ($3 == $null) did -r sms_adds $1 | if ($3 == 2) did -u sms_adds $1 | return }
  if ($3 == $null) { did -r sms_adds $1 | did -o sms_adds $1 1 $replace($readini($nofile($script) $+ operators.ini, $did(sms_adds,24).seltext, $2),$chr(1),$crlf) }
  if ($3 == 1) did -c sms_adds $1 $didwm(sms_adds,$1,$readini($nofile($script) $+ operators.ini, $did(sms_adds,24).seltext, $2))
  if ($3 == 2) {
    if ($readini($nofile($script) $+ operators.ini, $did(sms_adds,24).seltext, $2) == 1) did -c sms_adds $1
    if ($readini($nofile($script) $+ operators.ini, $did(sms_adds,24).seltext, $2) == 0) did -u sms_adds $1
  }
}
alias sms_load_all {
  did -o sms_adds 48 1 $gettok($did(sms_adds,24).seltext,3,46)
  sms_adds_load 38 pref | sms_adds_load 40 maxs 
  sms_adds_load 2 spath | sms_adds_load 26 spage
  sms_adds_load 13 key1 | sms_adds_load 14 key2 
  sms_adds_load 15 key3 | sms_adds_load 16 key4 
  sms_adds_load 17 key5 | sms_adds_load 30 sms
  sms_adds_load 43 yes
  sms_adds_load 29 pic | sms_adds_load 21 type 1
  sms_adds_load 23 ppicp 1 | sms_adds_load 19 ppict 2
  sms_adds_load 33 get 2 |  sms_adds_load 34 post 2
  sms_adds.enable.p $did(19).state | sms_adds.enable.f $did(34).state
  did -r sms_adds 63,64 
  did -o sms_adds 63 0 $gettok($did(sms_adds,24).seltext,1,46) |  did -o sms_adds 64 0 $gettok($did(sms_adds,24).seltext,2,46) 
}
;Добавляем операторов в список
alias sms_adds_addsp {
  did -r sms_adds 24
  %sms_adds.num = 1
  while ($ini($nofile($script) $+ operators.ini,%sms_adds.num) != $null) {
    did -i sms_adds 24 %sms_adds.num $ini($nofile($script) $+ operators.ini,%sms_adds.num)
    %sms_adds.num = %sms_adds.num + 1
  }
  if ($did(sms_adds,24).lines == 0) did -b sms_adds 49
  did -c sms_adds 24 1
}
;***************************************************
on 1:dialog:sms_adds:init:*:{
  did -o sms_adds 21 1 jpg
  did -o sms_adds 21 2 bmp
  did -o sms_adds 21 3 gif
  did -o sms_adds 21 4 png
  did -o sms_adds 23 1 Локальный
  did -o sms_adds 23 2 Глобальный
  did -c sms_adds 21,23,33 1
  sms_adds.enable.p $did(19).state | sms_adds.enable.f $did(34).state
  sms_adds_addsp
}
;###################################################
on 1:dialog:sms_adds:sclick:*:{
  %sms_dialog = sms_adds | %sms_text_read = 52
  %sms_pic_read = 53 
  %sms_icon = 27
  %sms.pics.type = $did(sms_adds,21).text

  if ($did == 4) { 
    sms_http_razd $did(2)
    ; if (%sms_adds.path == $null) %sms_adds.path = /
    sockopen sms_page_ex %sms_http.host 80
  }
  if ($did == 6) {
    %sms.pics.locgl = $did(23).text
    sms_http_razd $did(26)
    %sms_http.key0 = $did(29)
    sockopen sms_page %sms_http.host 80
    sms_setpic path
  }
  if ($did == 19) sms_adds.enable.p $did(19).state
  if (($did == 34) || ($did == 33)) sms_adds.enable.f $did(34).state
  if ($did == 46) {
    sms_save_all
    if (%sms_adds.error != $null) sms_extra.at Сохранено, но вы не заполнили графы: $replace(%sms_adds.error,38,префиксы,40,длина текста,29,путь до картинки,30,что отсылать,43,ответ сервера: отправлено,63,страна,64,регион,2,путь до скрипта)
    else sms_extra.ok Сохранено!
    sms_adds_addsp
  }
  if ($did == 49) sms_load_all
  if ($did == 50) {
    sms_http_razd $did(26)
    %sms_http.key1 = $did(13)
    %sms_http.key2 = $did(14)
    %sms_http.key3 = $did(15)
    %sms_http.key4 = $did(16)
    %sms_http.key5 = $did(17)
    sockopen sms_page_testk %sms_http.host 80
    sms_setpic path
  }
  if ($did == 67) { %sms.curcombo = 63 | %sms.blbut = 68 | sms_update }
  if ($did == 68 && $did(63)) { %sms.curcombo = 64 | %sms.blbut =  | sms_update $did(63).seltext } 
  if ($did == 59) {
    sms_save_all upload
    if (%sms_adds.error != $null) { sms_extra.at Не может быть отправлено, потому что не заполнены графы: $replace(%sms_adds.error,38,префиксы,40,длина текста,29,путь до картинки,30,что отсылать,43,ответ сервера: отправлено,63,страна,64,регион,2,путь до скрипта) 
    return }
    sms_upload $did(63) $did(64) $nofile($script) $+ %sms.save.operator
  }
  if ($did == 57) {
    remini " $+ $nofile($script) $+ operators.ini $+ " $did(24).seltext
    sms_adds_addsp
  }
  if ($did == 61) run http://msms.camc.ru
  if ($did == 62) run http://forum.camc.ru
  if ($did == 70) sms_prefer
  if ($did == 58) run $nofile($script) $+ add_op.html
}
;###################################################
on 1:dialog:sms_adds:dclick:*:{
  if ($did == 61) run http://msms.camc.ru
  if ($did == 62) run http://forum.camc.ru
  if ($did == 24 && $did(24).seltext != $null) sms_load_all
}
;###################################################
on 1:dialog:sms_adds:close:*:{
  if (($dialog(sms_dialog) == $null) && ($dialog(sms_upgrade) == $null)) .unload -rs sms_http.mrc
  if (($dialog(sms_dialog) == $null) && ($dialog(sms_upgrade) == $null) && ($dialog(sms_add_user) == $null) && ($dialog(sms_log) == $null) && ($dialog(sms_extra) == $null) && ($dialog(sms_prefer) == $null)) .unload -rs sms_other.mrc
  .unload -rs sms_add.mrc
}
