Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > Разработка расширений / TYPO3 extension development

Ответ
 
Опции темы Опции просмотра
Старый 10.07.2012, 12:09   #1
brd
Продвинутый
 
Регистрация: 16.06.2011
Сообщений: 96
Post Typo3 и ГИС

Здравствуйте дорогое сообщество! Занялся разработкой ГИС модуля, сейчас изучаю что есть по этому поводу в typo3 ext. Просьба к вам если кто крутил уже ГИС typo3, поделитесь информацией что есть интересного в данном направлении! Заранее спасибо.
brd вне форума   Ответить с цитированием
Старый 19.07.2012, 19:16   #2
Ивано
Guest
 
Сообщений: n/a
Smile Если правильно понял - то ГИС - это прогноз погоды:

Начальный шаблон - но требует доработки:

PHP код:
<?php
//Скрипт парсинга погоды
//http://informer.gismeteo.ru/getcode/xml.php

//require_once(PATH_tslib.'class.tslib_pibase.php');
class userBlock_weather /* extends tslib_pibase */{
 
    function 
output() {
    
        
//Если данные о погоде не доступны выводим ошибку
        
if (file_get_contents ("http://informer.gismeteo.ru/getcode/xml.php") == false)
        return 
"Данные прогноза погоды не доступны!";
    
        
            
//Шаг 1. Данные
            
                
$arList [0] = array ('title' => 'Москва''weather_code' => '27612_1',  'xml' =>  file_get_contents ("http://informer.gismeteo.ru/xml/27612_1.xml")   ); //Москва
                
$arList [1] = array ('title' => 'Санкт-Петербург''weather_code' => '26063_1',  'xml' =>  file_get_contents ("http://informer.gismeteo.ru/xml/26063_1.xml")   ); //Москва
            
            
            //Шаг 2. Выводим только те города, которые выбраны из БД
            
for ($i 0$i count ($arList); $i ++)
            {
                
//[NumCode][CharCode][Nominal][Value]
                //$arr = t3lib_div::xml2array ($val); //преобразуем xml в массив
            
                //Пропускаем не выбранные в списках валюты
                //if ($arList [ $arr['CharCode'] ] == false)
                //continue;
                
                
                
                
                //Создаем контент
                
$content .= $this->contentHTML_tpl$arList [$i] );
            }
            
/* */
            
        
return "<table border='0' width='100%' cellspacing='0' cellpadding='0'><tr><td></td>
        <td>&nbsp;Ночь&nbsp;</td><td>&nbsp;Утро&nbsp;</td><td>&nbsp;День&nbsp;</td><td>&nbsp;Вечер&nbsp;</td></tr>"
.$content."</table> <br /> <i>Предоставлено <a href='http://informer.gismeteo.ru/' target='_blank' style='text-decoration: none;'>Gismeteo.ru</a></i>";
    }
    
    
//Функция сборки контента Html
    
function contentHTML_tpl $ar )
    {
        
//Загрузка документа в DOM для разборка
        
$dom = new DOMDocument;
        
$dom->loadXML($ar['xml']);
                                                     
//tod="3" tod="0"  tod="1"  tod="2"
        //Время суток: для которого составлен прогноз: 3 - вечер 0 - ночь 1 - утро, 2 - день, 
        
$tod simplexml_import_dom($dom);

        
//echo $s->book[0]->FORECAST; print "<hr>";

        //Утро, вечер, день, ночь
        
for ($i 0$i 4$i++)
        {
            
//print "<hr> $i -> ";
            /* 
                PHENOMENA  атмосферные явления: 
                    cloudiness облачность по градациям:  0 - ясно, 1- малооблачно, 2 - облачно, 3 - пасмурно 
                    precipitation тип осадков: 4 - дождь, 5 - ливень, 6,7 – снег, 8 - гроза, 9 - нет данных, 10 - без осадков 
                    rpower интенсивность осадков, если они есть. 0 - возможен дождь/снег, 1 - дождь/снег 
                    spower вероятность грозы, если прогнозируется: 0 - возможна гроза, 1 - гроза 
                PRESSURE атмосферное давление, в мм.рт.ст. 
                TEMPERATURE температура воздуха, в градусах Цельсия 
            */
            //print "Атмосферное давление:" . $tod->REPORT->TOWN[0]->FORECAST[$i]->PRESSURE['max'];
            //print "Температура воздуха:" . $tod->REPORT->TOWN[0]->FORECAST[$i]->TEMPERATURE['max'];
            
                
switch($i){
                    
                    
//0 - ночь
                    
case 0
                    
                        
$PHE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PHENOMENA['cloudiness']; //иконка
                        
$PRE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PRESSURE['max']; //Атмосферное давление
                        
$TEM[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->TEMPERATURE['max']; //Температура воздуха
                        
                        /* +- */
                        
$TEM[$i] = ($TEM[$i] < 0) ? "-" $TEM[$i] : "+" $TEM[$i];
                    
                    
                    break;
                    
                    
//1 - утро
                    
case 1
                    
                        
$PHE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PHENOMENA['cloudiness']; //иконка
                        
$PRE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PRESSURE['max']; //Атмосферное давление
                        
$TEM[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->TEMPERATURE['max']; //Температура воздуха
                        
                        /* +- */
                        
$TEM[$i] = ($TEM[$i] < 0) ? "-" $TEM[$i] : "+" $TEM[$i];
                    
                    break;
                    
                    
//2 - день
                    
case 2
                    
                        
$PHE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PHENOMENA['cloudiness']; //иконка
                        
$PRE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PRESSURE['max']; //Атмосферное давление
                        
$TEM[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->TEMPERATURE['max']; //Температура воздуха
                        
                        /* +- */
                        
$TEM[$i] = ($TEM[$i] < 0) ? "-" $TEM[$i] : "+" $TEM[$i];
                    
                    break;
                    
                    
//3 - вечер
                    
case 3
                    
                        
$PHE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PHENOMENA['cloudiness']; //иконка
                        
$PRE[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->PRESSURE['max']; //Атмосферное давление
                        
$TEM[$i] = $tod->REPORT->TOWN[0]->FORECAST[$i]->TEMPERATURE['max']; //Температура воздуха
                        
                        /* +- */
                        
$TEM[$i] = ($TEM[$i] < 0) ? "-" $TEM[$i] : "+" $TEM[$i];
                    
                    break;
                    
                }
            
            foreach(
$tod->REPORT->TOWN[0]->FORECAST[$i]->attributes() as $a => $b) {
            
                
            
                
//echo $a,'="',$b,"\"\n";
            
            
}
        }

    
        
//exit();
        
    //<img style='vertical-align: middle; padding-right: 5px;' src='/uploads/tx_infoblock/{$icoFlag}'>
        
$content  "<tr>";
        
$content .= "<td>".$ar['title']."</td>";
        
$content .= "<td align='center'><img src='/fileadmin/+components/ico/".$PHE[0].".png' width='80%' vspace='5'><br />".$TEM[0]."С </td>";
        
$content .= "<td align='center'><img src='/fileadmin/+components/ico/".$PHE[1].".png' width='80%' vspace='5'><br />".$TEM[1]."С </td>";
        
$content .= "<td align='center'><img src='/fileadmin/+components/ico/".$PHE[2].".png' width='80%' vspace='5'><br />".$TEM[2]."С </td>";
        
$content .= "<td align='center'><img src='/fileadmin/+components/ico/".$PHE[3].".png' width='80%' vspace='5'><br />".$TEM[3]."С </td>";
        
$content .= "</tr>";
        
        return 
$content;
    }
    
}

    
//Оптарвляем контент для сайта
    
$obj = new userBlock_weather();
    
$content $obj->output(); // Works

?>
# Прогноз погоды
subparts.weather = PHP_SCRIPT_INT
subparts.weather.file = fileadmin/+components/block.weather.php
  Ответить с цитированием
Ответ

Теги
gis, tca

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
API ядра TYPO3 - перевод официального руководства Андрей Аксенов Мастер-класс 6 26.04.2016 07:45
Typo3 и шаблоны... и новичек! Aha Вопросы выбора CMS 14 23.02.2014 23:16
Настройки параметров ImageMagick для TYPO3 на FreeBSD и Linux Valery Romanchev Мастер-класс 9 25.06.2013 22:38
TYPO3 4.7 beta3 released RSS Bot Новости TYPO3 (на английском) 0 02.04.2012 22:30
UPD: Требуется специалист(ы) по Typo3 в Rich Media Development. Pavel Antonov Работа и заказы / Job Offer and Request 0 20.05.2008 13:59


Часовой пояс GMT +4, время: 00:56.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория