стили для элементов сцен

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Благодарил (а): 99 раз
Поблагодарили: 140 раз
Контактная информация:

Re: стили для элементов сцен

Сообщение ErmolenkoM » Пт фев 13, 2015 7:47 am

Предложу маленькое дополнение.
Вместо(или вместе с) времени отсутствия можно показывать текстовое наименование места где находится человек.
Делаем так:
1. понадобится функция декодирующая ГПС координаты в текст. Например используя яндекс. Создаем файл, например myfunction.php в каталоге LIB с текстом:

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

function Getgeocode($lon, $lat)  {
  $data_file="http://geocode-maps.yandex.ru/1.x/?geocode=E".$lon.",N".$lat; // адрес xml файла
  $xml = simplexml_load_file($data_file); // раскладываем xml на массив
  $res=$xml->{'GeoObjectCollection'}->{'featureMember'}[0]->{'GeoObject'}->{'metaDataProperty'}->{'GeocoderMetaData'}->{'AddressDetails'}->{'Country'}->{'AddressLine'};
  return $res;
}
 
поправьте, если такую уже добавили в стандартные библиотеки, просто у меня своя.
2. У класса Users создаем метод:
SetLocation

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

$Coordinates=$this->getProperty("Coordinates");
$lat=substr($Coordinates,0,strpos($Coordinates,","));
$lon=substr($Coordinates,strpos($Coordinates,",")+1);
$this->setProperty("Location",Getgeocode($lon,$lat));
теперь достаточно вызвать его и у пользователя обновится текстовое поле с местоположением. Город в начале можно отрезать для краткости.
у меня запуск этого метода настроен на изменение поля Coordinates, но можно повесить и на таймер, например раз в 30 минут, что бы не грузить яндекс лишними запросами.
3. Все. Теперь можем использовать поле Location, например на тех же сценах на картинках с юзерами.
За это сообщение автора ErmolenkoM поблагодарили (всего 2):
Vit (Пн фев 16, 2015 2:42 am) • layet (Пн фев 16, 2015 8:25 am)
Рейтинг: 2.33%
aka msh555
Cubian на Cubietruck, Connect
Supermin
Сообщения: 4
Зарегистрирован: Вт янв 27, 2015 10:49 am
Благодарил (а): 17 раз
Поблагодарили: 0

Re: стили для элементов сцен

Сообщение Supermin » Пт фев 13, 2015 11:46 pm

А вот мой вариант использования новых элементов сцены :) Все индикаторы и выключатели на данный момент только для красоты :) на проекте не так давно, поэтому только учусь!!!

P.S. Ну и раз уж сегодня пятница 13, не мог не добавить элемент вечеринки под календариком :) :) :)
Вложения
сцена1.jpg
сцена1.jpg (207.35 КБ) 12545 просмотров
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: стили для элементов сцен

Сообщение Vit » Пт фев 13, 2015 11:51 pm

msh555 писал(а):Предложу маленькое дополнение.
Вместо(или вместе с) времени отсутствия можно показывать текстовое наименование места где находится человек.
Делаем так:
1. понадобится функция декодирующая ГПС координаты в текст. Например используя яндекс. Создаем файл, например myfunction.php в каталоге LIB с текстом:

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

function Getgeocode($lon, $lat)  {
  $data_file="http://geocode-maps.yandex.ru/1.x/?geocode=E".$lon.",N".$lat; // адрес xml файла
  $xml = simplexml_load_file($data_file); // раскладываем xml на массив
  $res=$xml->{'GeoObjectCollection'}->{'featureMember'}[0]->{'GeoObject'}->{'metaDataProperty'}->{'GeocoderMetaData'}->{'AddressDetails'}->{'Country'}->{'AddressLine'};
  return $res;
}
поправьте, если такую уже добавили в стандартные библиотеки, просто у меня своя.
2. У класса Users создаем метод:
SetLocation

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

$Coordinates=$this->getProperty("Coordinates");
$lat=substr($Coordinates,0,strpos($Coordinates,","));
$lon=substr($Coordinates,strpos($Coordinates,",")+1);
$this->setProperty("Location",Getgeocode($lon,$lat));
 
теперь достаточно вызвать его и у пользователя обновится текстовое поле с местоположением. Город в начале можно отрезать для краткости.
у меня запуск этого метода настроен на изменение поля Coordinates, но можно повесить и на таймер, например раз в 30 минут, что бы не грузить яндекс лишними запросами.
3. Все. Теперь можем использовать поле Location, например на тех же сценах на картинках с юзерами.

попробовал, с этой функцией ошибка...вообще страница перестает грузится....

даже если переименовываешь, все равно какие то грабли...
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: стили для элементов сцен

Сообщение Vit » Пт фев 13, 2015 11:52 pm

Вопрос Сергею....Сереж, в чем может быть ошибка...эта функция я так понимаю уже есть в системе...переименование ее тоде не дает результатов...возможно использование вышеуказанного функционала может как то уже через встроенные функции?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: стили для элементов сцен

Сообщение sergejey » Сб фев 14, 2015 9:25 am

Vit писал(а):Вопрос Сергею....Сереж, в чем может быть ошибка...эта функция я так понимаю уже есть в системе...переименование ее тоде не дает результатов...возможно использование вышеуказанного функционала может как то уже через встроенные функции?
Да нет, нету в системе такой функции. А что за ошибку выдаёт?

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: стили для элементов сцен

Сообщение Vit » Сб фев 14, 2015 8:56 pm

sergejey писал(а):
Vit писал(а):Вопрос Сергею....Сереж, в чем может быть ошибка...эта функция я так понимаю уже есть в системе...переименование ее тоде не дает результатов...возможно использование вышеуказанного функционала может как то уже через встроенные функции?
Да нет, нету в системе такой функции. А что за ошибку выдаёт?

как только ложу в папку lib файл myfunction.php c содержимым
СпойлерПоказать
function Getgeocode($lon, $lat) {
$data_file="http://geocode-maps.yandex.ru/1.x/?geoc ... .",N".$lat; // адрес xml файла
$xml = simplexml_load_file($data_file); // раскладываем xml на массив
$res=$xml->{'GeoObjectCollection'}->{'featureMember'}[0]->{'GeoObject'}->{'metaDataProperty'}->{'GeocoderMetaData'}->{'AddressDetails'}->{'Country'}->{'AddressLine'};
return $res;
}

сразу в панели управления вот это

http://c2n.me/3crDKxJ.png

и главная страница не грузится

http://c2n.me/3crDNQI.jpg


убираю все начинает работать

как то можно это привинтить брать наименование по координатам?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: стили для элементов сцен

Сообщение sergejey » Сб фев 14, 2015 9:05 pm

Виталий, поставь в начале файла первой строчкой
<?php

может в этом дело

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: стили для элементов сцен

Сообщение Vit » Сб фев 14, 2015 9:10 pm

sergejey писал(а):Виталий, поставь в начале файла первой строчкой
<?php

может в этом дело
да в этом, спасибо Сереж...
ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Благодарил (а): 99 раз
Поблагодарили: 140 раз
Контактная информация:

Re: стили для элементов сцен

Сообщение ErmolenkoM » Сб фев 14, 2015 9:30 pm

Прошу прощения - моя ошибка. Не подумал, что этой строчки может не быть.
Просто у меня в этом файле мои функции, что-то тестовое, что-то личное, что-то нужно, типа этой.
Поэтому весь выкладывать не стал. А с куском вот оно как получилось.
aka msh555
Cubian на Cubietruck, Connect
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: стили для элементов сцен

Сообщение Vit » Сб фев 14, 2015 9:32 pm

msh555 писал(а):Прошу прощения - моя ошибка. Не подумал, что этой строчки может не быть.
Просто у меня в этом файле мои функции, что-то тестовое, что-то личное, что-то нужно, типа этой.
Поэтому весь выкладывать не стал. А с куском вот оно как получилось.
все нормально, главное разобрались))

как обрезать длину до адреса, для элемента сцены?
Ответить