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

Google внедрила защиту от копирования в приложениях для Android

Компания Google предложила разработчикам добавить в свои программы модуль License Verification Library (LVL), чтобы защитить платные приложения для ...

News image

Технологии Microsoft для разработчиков сегодня и завтра

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

News image

Windows IT Pro :: Internet & Web-службы

Последнее время в Америке и Европе меняется модель использования приложений и все чаще традиционному внедрению информационных систем компании предпо...

News image

Apple выгодна российским программистам

Разработка приложений для iPhone и iPad наиболее выгодна для российских программистов и компаний, занимающихся разработкой мобильного софта. Android...

News image

Новый язык программирования от Apple?

Майк Цай из Daringfireball поделился своим мнением насчет нового языка программирования, который по слухам создает Apple. После просмотра официально...

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

News image

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

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

News image

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

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