Получите помощь, поддержку и профессиональное общение в Клубе CodeIgniter

CodeIgniter User Guide Version 2.1.3


Помощник Smiley

Файл помощника Smiley содержит функции, которые позволят вам управлять смайликами (эмотиконами).

Загрузка этого помощника

Этот помощник загружается следующим кодом:

$this->load->helper('smiley');

Обзор

Помощник Smiley принимает текстовые смайлики, вроде :-), и возвращает их в виде изображений, например smile!

Он также позволяет вам отображать набор кликабельных смайликов, при нажатии на которые соответствия будут вставлены в поле формы. Например, если вы имеете блог, в котором позволяете пользователям оставлять комментарии, то вы можете показать набор смайликов следом за формой. Пользователи могут кликать на смайлики, и с некоторой помощью JavaScript они будут помещены в поле формы.

Учебник по кликабельным смайликам

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

Важно: Перед тем как вы начнете, пожалуйста загрузите картинки смайликов, и поместите их в публично доступное место на вашем сервере. Этот помощник также предполагает, что вы имеете массив со списком смайликов, располагающийся в application/config/smileys.php

Контроллер

В вашей директории application/controller создайте файл smileys.php и поместите код, как показано ниже.

Важно: Измените URL в функции get_clickable_smileys() так, чтобы он указывал на вашу директорию smiley.

Обратите внимание, что помощник smiley использует Класс Table.

В вашей директории application/views создайте файл smiley_view.php и поместите в него код:

Когда вы создадите контроллер и отображение, загрузите их, посетив http://www.example.com/index.php/smileys/

Алиасы полей

При внесении изменений в отображение может быть неудобным задавать идентификатор поля в контроллере. Чтобы обойти это, вы можете дать ссылкам смайликов имя, которое будет связано с определенным идентификатором в отображении.

$image_array = get_smiley_links("http://example.com/images/smileys/", "comment_textarea_alias");

Чтобы сопоставить псевдоним с идентификатором функции, передайте их в функцию smiley_js:

$image_array = smiley_js("comment_textarea_alias", "comments");

Спавка по функциям

get_clickable_smileys()

Возвращает массив, содержащий смайлики, вписанные в кликабельные ссылки. Вы должны передать URL к директории со смайликами и идентификатор или псевдоним поля.

$image_array = get_smiley_links("http://example.com/images/smileys/", "comment");

Примечание: использование этой функции без второго параметра, в комбинации c js_insert_smiley является недопустимым.

smiley_js()

Генерирует JavaScript, который позволяет сделать кликабельные изображения, которые будут вставлять данные в поле формы. Если вы указали псевдоним вместо идентификатора, вы должны передать псевдоним и соответствующий идентификатор формы в функцию. Эта функция разработана так, чтобы размещать ее во фрагменте <head> вашей веб-страницы.

<?php echo smiley_js(); ?>

Примечание: эта функция замещает js_insert_smiley, которая в настоящее время является устаревшей.

parse_smileys()

Принимает строку на вход, и замещает все найденные смайлики эквивалентными изображениями. Первый параметр должен содержать строку, а второй — URL к директории со смайликами:

$str = 'Here are some simileys: :-) ;-)';
$str = parse_smileys($str, "http://example.com/images/smileys/");
echo $str;

Поделиться


Переведено в компании Аринт.

Спасибо!

Вы тоже можете оказать помощь проекту! Как это сделать?

Помощь и поддержка

Вы можете задать вопросы и получить ответы и советы от гуру CodeIgniter и веб-разработки: вступайте в Клуб CodeIgniter

Яндекс.Метрика