OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

Вы, конечно, знаете о свободной карте OpenStreetMap. Это настоящая народная карта, создаваемая такими же людьми как и вы! Это такой же opensource-проект как Linux и как Википедия. Конечно же, как и в других картах, в OpenStreetMap имеются ошибки, но в отличие от тех же Яндекс.Карт, где ошибки не исправляются годами из-за сложной бюрократической процедуры (я уже не говорю о намеренных ошибках), в OpenStreetMap всё гораздо проще и лучше для всех нас...
Подробнее..

CloudMade Navigation поддерживает ограничения манёвров

CloudMade Navigation поддерживает ограничения манёвров

Не так давно CloudMade выделил несколько приоритетных направлений, среди которых оказалась и навигация. Решено было создать специальный проект Navi Studio, который объединял бы в себе несколько более мелких сервисов и позволял пользоваться ими, для создания полноценного навигационного программного обеспечения. В Navi Studio вошли: Работа закипела и уже появилось несколько приложений использующих данный проект. Но полноценной навигации без соблюдения правил ПДД не существует, а потому данному вопросу было также уделено не мало времени...
Подробнее..

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Недавно наткнулся в сети на один занимательный интернет-сервис, именующийся Web 2.0 Suicide machine . Предназначен он для того, чтобы позволить людям, обремененным «социальной жизнью в интернете», в пару кликов удалить свои аккаунты на Facebook (в данный момент сервис блокирован администрацией по IP), Twitter, Linkedin и Myspace. В общем-то судя по количеству положительных отзывов и «успешных очищений» — пипл хавает зависимые от социальных сетей успешно пользуются сервисом и довольны...
Подробнее..




Добавляем тег [not-xfgiven_...] для работы с дополнительными полями

Веб разработка - Хаки для dle

добавляем тег  [not-xfgiven_...]  для работы с дополнительными полями


Описание: хак, позволяющий выводить замещающий текст, если не заполнены дополнительные поля. Работает аналогично тегам [not-group=...], [not-aviable=...] и т.д.

По сути, если надо сделать так, чтобы при отсутствии текста в доп. поле, вместо него выводилось какое-то сообщение и т.д. - этот хак будет самым простым решением этой проблемы.

Итак, нам надо будет сделать одинаковые изменения в трех файлах движка:
/engine/modules/show.custom.php
/engine/modules/show.short.php
/engine/modules/show.full.php


По очереди открываем каждый из них,
находим в каждом из них такой кусок кода:


// Обработка дополнительных полей
$xfieldsdata = xfieldsdataload( $row['xfields'] );

foreach ( $xfields as $value ) {
$preg_safe_name = preg_quote( $value[0], ' );

if( empty( $xfieldsdata[$value[0]] ) ) {
$tpl->copy_template = preg_replace( '[xfgiven_{$preg_safe_name}](.*?)[/xfgiven_{$preg_safe_name}]'is , , $tpl->copy_template );
} else {
$tpl->copy_template = preg_replace( '[xfgiven_{$preg_safe_name}](.*?)[/xfgiven_{$preg_safe_name}]'is , 1 , $tpl->copy_template );
}

$tpl->copy_template = str_replace( [xfvalue_{$preg_safe_name}] , stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );
}
// Обработка дополнительных полей




и заменяем его на такой:


// Обработка дополнительных полей
$xfieldsdata = xfieldsdataload( $row['xfields'] );

foreach ( $xfields as $value ) {
$preg_safe_name = preg_quote( $value[0], ' );

if( empty( $xfieldsdata[$value[0]] ) ) {
$tpl->copy_template = preg_replace( '[xfgiven_{$preg_safe_name}](.*?)[/xfgiven_{$preg_safe_name}]'is , , $tpl->copy_template );
$tpl->copy_template = preg_replace( '[not-xfgiven_{$preg_safe_name}](.*?)[/not-xfgiven_{$preg_safe_name}]'is , 1 , $tpl->copy_template );
} else {
$tpl->copy_template = preg_replace( '[xfgiven_{$preg_safe_name}](.*?)[/xfgiven_{$preg_safe_name}]'is , 1 , $tpl->copy_template );
$tpl->copy_template = preg_replace( '[not-xfgiven_{$preg_safe_name}](.*?)[/not-xfgiven_{$preg_safe_name}]'is , , $tpl->copy_template );
}

$tpl->copy_template = str_replace( [xfvalue_{$preg_safe_name}] , stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );
}
// Обработка дополнительных полей



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

Пример shortstory.tpl:


post
post-info-bg


post-info-mid class= post-title

class= post-category


post-info-bg


0 cellspacing= 0 border= 0





class= post-story short-story}[/not-xfgiven_shortstory_en]



class= post-data {date}

float:right; color=#CA5829; padding-bottom:10px; [full-link]Read more »[/full-link]

 


Читайте:


Добавить комментарий


Защитный код
Обновить

News image

Новые возможности Adobe Online Marketing Suite

Пакет программ Adobe Online Marketing Suite, Powered by Omniture получает новую функциональность для работы с социальными сетевыми сервисами и мобил...

News image

Что такое AJAX API для Google Переводчика?

Благодаря AJAX API для Google Переводчика можно переводить и определять язык блоков текста на веб-странице, используя только JavaScript. Кроме того,...

News image

Apple заставила разработчиков писать приложения для iPad вслепую

Многие разработчики приложений для Apple iPad остались недовольны возможностями эмулятора устройства, пишет The New York Times. Они ждут поступления...

News image

Новый JDBC-драйвер для СУБД SQL Server уже доступен в виде предварител

Компания Microsoft сделала еще один шаг к обеспечению совместимости своей флагманской СУБД SQL Server с промышленными Java-приложениями, выпустив оз...

News image

Adobe представляет пакет LiveCycle Enterprise Suite 2

Компания Adobe Systems Incorporated представила пакет Adobe LiveCycle Enterprise Suite 2 (ES2) – новую версию программного обеспечения, с помощью ко...

Топ технологий:

News image

Оздана новая система беспроводной связи - она в 10

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

News image

Как взломали Twitter

В Интернетах, наряду с iPad, сканерами в аэропортах и войне между Google и Apple, уже второй день подряд активно обсуждается тема взлома и...