Страница 2 из 4

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 10:05 am
adzam
Спасибо , жду.

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 12:12 pm
Antonq
а какого срипта? Метода или сценария?

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 1:01 pm
adzam
Я сделал все по образцу http://smartliving.ru/Main/ScEconomyMode
создал сценарий EconomChanged
создал меню с названием "Эконом-режим"
поставил на нее выключатель и привязал его состояния к свойству объекта ThisComputer.Econom и вызову скрипта EconomChanged.
В скрипт EconomChanged дописал

if (gg("Econom")) {
say("Перехожу в экономный режим");
// выполняем какие-то действия, например выключаем обогреватель
} else {
say("Выхожу из режима экономии");
// выполняем какие-то действия, например включаем обогреватель
}

Все работает переключается и говорит, но я хочу установить этот переключатель на домашнюю страницу и не могу его связать пусть даже с теми же свойствами или с другими
я потом уберу кнопку из панели меню.
короче надо в домашнюю страницу установить кнопку , чтоб можно было подать команду на открытие и закрытие вентиля воды с сохранением памяти положения после перезагрузки страницы

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 2:39 pm
Antonq
Вообщем как то так
1. Создал файл в директории php_scripts/waterswich.php
вот его текст

Код: Выделить всё

<?
chdir('../');
include_once("./config.php");
include_once("./lib/loader.php");


$db=new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME); // connecting to database
include_once("./load_settings.php");




$var = $_POST['flip'];


if ($var=="on") { setGlobal("ThisComputer.Water","on");
//    callMethod("ThisComputer.on_Water");
}

elseif ($var=="off")  { setGlobal("ThisComputer.Water","off");

    //   callMethod("Thiscoputer.Close_Water");


};
$val=getGlobal("ThisComputer.Water");
?>


<form id="idFormName" method="POST" action="" >
    <select onchange="javascript:document.getElementById('idFormName').submit()" class="labelc3"  name="flip" id="flip" data-role="slider">
        <option value="off" <?= $val == 'off' ? 'selected': '' ?> >Вода перекрыта</option>
        <option value="on"  <?= $val == 'on' ? 'selected': '' ?> >Вода открыта</option>
    </select>
</form>

там все в куче, все таки это немного коленный вариант, надо думаю попросить автора добавить возможность создавать управляющие элементы на домашник страницах или хотя бы сделать возможность там написания кода.
2. Вставил его следующим образом в домашней странице

Код: Выделить всё

<IFRAME SRC="/php_scripts/waterswich.php" CROLLING="no" [NORESIZE]></IFRAME>
3. Там закоментирован код, где вызывается метод вставьте там свой метод, если нужно сценарий, то нужно делать так runScript("myScript"); // myScript это заголовок сценария
вот тут подробно есть http://smartliving.ru/Main/BasicsScripts

Не без помощи обошлось:) подоставать разработчика знакомого:)

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 3:23 pm
sergejey
В код домашней страницы можно вставлять элементы из меню управления, правда они выглядят не так как там.

Например, чтобы вставить кнопку
Изображение

можно в код домашней страницы прописать вызов модуля меню с указанием id этой кнопки (в данном случае 70)
[#module name="commands" id="70"#] -- так можно вставлять любые элементы управления (кнопки, переключатели и т.п.), но, повторюсь, выглядят они не совсем так как в меню

ещё вариант это имитировать нажатие на кнопку через свою ссылку.
вот пример кода для вставки на домашнюю страницу:
<a href="#" onClick='$.get("/menu.html?ajax=1&op=value_changed&new_value=1&item_id=70");return false;'>Моя кнопка</a>

по нажатию на ссылку будет происходить в точности тоже самое, что и по нажатию на кнопку

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 4:01 pm
adzam
тоесть надо сначала поставить кнопку в меню управления а затем под тем же id дописать в домашнюю странице а потом можно убрать кнопку из меню или нет

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 4:01 pm
Antonq
Где же вы раньше были:)))))

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 4:03 pm
Antonq
но, повторюсь, выглядят они не совсем так как в меню

ещё вариант это имитировать нажатие на кнопку через свою ссылку.
А что мешает подключить в тот фрейм стили в шаблонах? Это будет работать?

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 4:36 pm
Antonq
Получилось, но я безразборно подгрузил все что есть и кнопка растянулась на всю ширину, поэтому надо все таки понимать где-то стили этой кнопки и нужно ли подключать яваскрипты..

Re: Элемент кнопка

Добавлено: Пт окт 18, 2013 4:51 pm
sergejey
adzam писал(а):тоесть надо сначала поставить кнопку в меню управления а затем под тем же id дописать в домашнюю странице а потом можно убрать кнопку из меню или нет
Нет, элемент в меню должен остаться. Но его можно запрятать в какую-нибудь ветку или скрыть через настройки прав доступа.