Планы на Храмы Украины (hram-ua.com)
Имеем
Главную http://hram-ua.com/
Страницу области http://hram-ua.com/odesskaya-oblast/
Страницу района http://hram-ua.com/odesskaya-oblast/
Страницу села http://hram-ua.com/odesskaya-oblast/velikomikhajlovskij-rajon/29230-preo...
Страницу объекта http://hram-ua.com/places/1018671-vladimirovka-cerkov-mixaila-arxangela/
Необходимо:
- Добавить текст на главную - есть
- Добавить тексты на страницы областей - есть
- Доделать скрипт, который будет заливать все объекты, которых еще нет в БД в нее.
- Вывести церкви на странице района и названия населенных пунктов. Так же вывести все населенные пункты для которых церкви уже есть в БД и ниже те, для которых церквей нет.
- Добавить обложку на странице села с церковью села, если она добавлена.
- Добавить список храмов села, которые в нем расположены.
- Добавить все ближайшие села, в которых есть церкви либо нет.
- Добавить возможность редактировать объект.
- Добавить возможность добавить объект.
- Добавить предложение установить на свой сайт блок с фото.
28/07/2015
Дорабатываем импорт появившихся церквей.
Файл
/var/www/gallery/data/www/hram-ua.com/Panoramio/assets/jquery.panoramio.js
В строке 156 формируется подпись под. найденным на panoramio объектом:
var p = $('<p class="photo" align="center">' + options.title + ', '/* + options.e + ', ' + options.n + '; ' + options.latitude + ', ' + options.longitude + ' - ' */ + '<font color="green"><b>'+ calculateDistance(options.e, options.n, options.latitude, options.longitude) + 'km</b></font> (' + options.latitude + ', ' + options.longitude + ')' + '<div id="new-info' + options.entry.photo_id + '"></div><script>$("#new-info' + options.entry.photo_id + '").load("/api-item-bligayshiy.php?radius=100&E=' + options.latitude +'&N=' + options.longitude + '");</script>' + '<div id="new-gorod-info' + options.entry.photo_id + '"></div><script>$("#new-gorod-info' + options.entry.photo_id + '").load("/api-item-bligayshiy-gorod.php?radius=100&E=' + options.latitude +'&N=' + options.longitude + '");</script>'+ '</p>');// + ' (автор: <a href="' + options.entry.owner_url + '">' + options.entry.owner_name + '</a>)</p>');
Вот как это выглядит, на примере 4 фото:
Нас интересует код, помеченный красным, в частности файл bligayshiy.php
Возьмем, к примеру, http://hram-ua.com/api-item-bligayshiy.php?radius=100&E=46.680286&N=32.6...
Логика файла очень простая:
Если мы уже нашли объект в БД находящийся близко от местоположения фотографии на panoramio с изображением церкви, то вычисляем расстояние:
if($value[d] < 1000) echo "<font color='red'><b>".round($value[d]/1000,1)."km"."</b></font>, "; else echo round($value[d]/1000,1)."km".", "; echo "<a target='new_item' href='/".$value[url]."'>".$value[itemID]." - ".$value[title]."</a>";
Если это дальше километра, то добавляем в БД новый объект.
Нам нужно еще заголовок и описание нашего объекта.
В общем добавляем такой код:
if($value[d] < 1000) echo "<font color='red'><b>".round($value[d]/1000,1)."km"."</b></font>, "; else { echo round($value[d]/1000,1)."km".", "; //Добавляем новый объект в БД. file_put_contents('new_object_hram.txt',$_GET['E'].";".$_GET['N'].";".str_replace(";",",",$_GET['title']).";".$_GET['photo'].";".(round($value[d]/100)/10)."\r\n" , FILE_APPEND); }
Теперь при запуске скрипта с обновленным апи http://hram-ua.com/sela/index-withaut-jquery.php?E=47.197522&N=32.223040...
Получаем список всех объектов, которые есть на панорамио, но их нет в БД http://hram-ua.com/new_object_hram.txt . Скорее всего нет, поскольку в радиусе 1км ничего не найдено.
Этот список будет накапливаться, данные в нем будут повторяться, но позже получится неплохая база таких объектов.
Мы их отсортируем по имени почистим от «плохих» объектов с некрасивыми заголовками и добавим в БД.
- Для комментирования войдите или зарегистрируйтесь