LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
27.05.2012, 18:33:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Новые классы в Joomla 2.5 CMS  (Прочитано 789 раз)
0 Пользователей и 1 Гость смотрят эту тему.
bzzik
JComments Tester
*

Репутация: +219/-0
Offline Offline

Пол: Мужской
Сообщений: 3798


Contra Gaming Community


« : 30.01.2012, 14:44:14 »

JOOMLA 2.5 INCLUDES NEW VERSION OF Joomla PHP FRAMEWORK

Начиная с 2.5 для разработчиков стали доступны новые классы:

Кто-то уже успел "пощупать" на практике?
Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #1 : 30.01.2012, 15:26:57 »

меня больше интересует чего они там мутят с классом JInput и когда они собираются избавиться от JReguest.
Записан
bzzik
JComments Tester
*

Репутация: +219/-0
Offline Offline

Пол: Мужской
Сообщений: 3798


Contra Gaming Community


« Ответ #2 : 30.01.2012, 16:21:57 »

когда они собираются избавиться от JReguest.
Ну сюдя по всему в Платформе 12.1 можно будет использовать JInput.
Цитировать
* @deprecated  12.1  Get the JInput object from the application instead
Но врядли они от него полностью избавятся так быстро. Он плотно завязан с предыдущими вресиями.

Но все равно обидно, JRequest был хорошим классом  Angry А нас ждет JInput::Get  Roll Eyes
Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #3 : 30.01.2012, 16:29:17 »

Ну сюдя по всему в Платформе 12.1 можно будет использовать JInput.
Его уже добавили в 1.7 если мне память не изменяет.
Цитировать
* @deprecated  12.1  Get the JInput object from the application instead
т.е. по сути это означает что в первом билде платформы в этом году получается тю тю.
Учитывая что 2.5 будет с долгой поддержкой, не думаю что они платформу не будут обновлять.
Но все равно обидно, JRequest был хорошим классом  Angry
по сути тот же класс.
А нас ждет JInput::Get  Roll Eyes
там через Application его вроде рекомендуют вызывать.
Записан
bzzik
JComments Tester
*

Репутация: +219/-0
Offline Offline

Пол: Мужской
Сообщений: 3798


Contra Gaming Community


« Ответ #4 : 30.01.2012, 16:53:12 »

там через Application его вроде рекомендуют вызывать.
Да, нашел в JApplication свойство $input, которое содержит объект JInput. Причем свойство инициализируется сразу в конструкторе:

Код
// Create the input object
if (class_exists('JInput'))
{
$this->input = new JInput;
}
То есть получается, что доступ к JInput осуществляем вот так - JFactory::getApplication()->input ? И JRequest::getVar() у нас преварщается в JFactory::getApplication()->input->get(). Не слишком ли намудрили.

По идее проще:
Код:
$input = new JInput();
$input->get();

Или я чего-то не допонял и все таки будет просто JInput:get() ?
« Последнее редактирование: 30.01.2012, 16:57:24 от bzzik » Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #5 : 30.01.2012, 16:57:05 »

Или я чего-то не допонял?
хз, мне тоже проще 2 вариант и он работает. Просто видел в мануале такую конструкцию, тоже немного удивился))
Записан
bzzik
JComments Tester
*

Репутация: +219/-0
Offline Offline

Пол: Мужской
Сообщений: 3798


Contra Gaming Community


« Ответ #6 : 30.01.2012, 16:59:29 »

хз, мне тоже проще 2 вариант и он работает. Просто видел в мануале такую конструкцию, тоже немного удивился))
Вово, все таки скорее всего будет JInput::get.  В описании к getVar и setVar так и написано:
Цитировать
* @deprecated   12.1  Use JInput::Get
Записан
frisian
Давно я тут
****

Репутация: +25/-1
Offline Offline

Пол: Мужской
Сообщений: 338



« Ответ #7 : 31.01.2012, 01:24:25 »

А есть инфа что делает каждый класс? и примеры их использования?!
ато с англицким у меня туговато да и в коде ковыряться сейчас нет сил с температурой...
и кстати что такое JInput?

UPDATE
c Jimage разобрался (нравица  Cheesy)
с JGrid тоже.. но разочаровался.. что бы вывести банальную таблицу не понятно зачем юзать класс... да и верстальщика может ввести в ступор...
ещё и в классе есть метод на удаление ряда.. но я сколько ни думал не могу представить где может в процессе формирования таблички понадобится удаление какого то ряда..?!

а вот с остальными пока непонятно что и с чем )
« Последнее редактирование: 31.01.2012, 03:17:23 от frisian » Записан
bzzik
JComments Tester
*

Репутация: +219/-0
Offline Offline

Пол: Мужской
Сообщений: 3798


Contra Gaming Community


« Ответ #8 : 31.01.2012, 11:11:07 »

JApplicationWeb - это базовый класс для платформы и для CMS. Походу он нужен для того, чтобы расширять и подстраивать под свои нужды вэб часть фреймворка.
JWebClient - это класс для определения платформы клиента: ОС, браузер, язык.
JInput - по сути это замена класса JRequest. Его суть в управлении получением данных, которые поступают из приложения.
JGrid - да уж, согласен. Перемудрили чутка.
JImage - полезный класс, который наконец-то принесет единую форму обработки изображений в расширениях.

P.S.
А английский надо учить. Без него в разработке никуда  Roll Eyes
Записан
frisian
Давно я тут
****

Репутация: +25/-1
Offline Offline

Пол: Мужской
Сообщений: 338



« Ответ #9 : 31.01.2012, 11:24:17 »

to bzzik
Спасибо )
Ну с теми двумя я так и подозревал ) но были какие то сомненья )
Jinput интересно ) надо будет поковыряться)
ну я уже больше 3-х лет работаю программистом ) пока что английский не особо нужен был (там где нужен были менеджеры), так слабенько на техническом читаю ( все нету времени на изучение
Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #10 : 31.01.2012, 16:23:27 »

описал несколько примеров работы с этими классами.
Записан
frisian
Давно я тут
****

Репутация: +25/-1
Offline Offline

Пол: Мужской
Сообщений: 338



« Ответ #11 : 31.01.2012, 18:08:18 »

описал несколько примеров работы с этими классами.
Маленькие замечания есть:
1. для JImage не надо jimport('joomla.image.image'); (возможно это пока что .. но сейчас у меня работает без jimport как в бакенде так и во фронтенде)

2. $newimg = $image->resize($new_width, $new_height, true); можно не создвать новый экземпляр если просто ресайзить! если нужно какие то действия выполнить тогда да! надо создать экземпляр!
$image->resize('200', '200', fase);
$image->saveToFile('1.jpg');
3. у resize 4-ре параметра.. последний тип преобразования..
4.  $image = new JImage($path_to_image); можно в конструкторе передать путь к рисунку!


5. JGrid зачем: echo $table->toString(); ?!
ведь echo $table; и так вызывает function __toString(){ return $this->toString(); }
« Последнее редактирование: 31.01.2012, 18:16:13 от frisian » Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #12 : 31.01.2012, 18:39:00 »

1. для JImage не надо jimport('joomla.image.image'); (возможно это пока что .. но сейчас у меня работает без jimport как в бакенде так и во фронтенде)
на всякий случай
2. $newimg = $image->resize($new_width, $new_height, true); можно не создвать новый экземпляр если просто ресайзить! если нужно какие то действия выполнить тогда да! надо создать экземпляр!
$image->resize('200', '200', fase);
$image->saveToFile('1.jpg');
я пример всего лишь один пример, который вроде расписанный (что как и зачем он делает).
Описывать все нюансы не вижу смысла, кому надо тот может открыть класс и посмотреть его возможности
4.  $image = new JImage($path_to_image); можно в конструкторе передать путь к рисунку!
может и можно опять же на любителя.
5. JGrid зачем: echo $table->toString(); ?!
ведь echo $table; и так вызывает function __toString(){ return $this->toString(); }
не обратил внимание на магический метод.
Но опять же суть дело это не меняет и на быстродействие никак не сказывается.
Записан
bzzik
JComments Tester
*

Репутация: +219/-0
Offline Offline

Пол: Мужской
Сообщений: 3798


Contra Gaming Community


« Ответ #13 : 31.01.2012, 19:40:11 »

Чего-то ты перемудрил в статье с $client->__get('mobile') Wink
__get - это же аксессор. Можно просто $client->mobile;
Записан
shprota
Разработчик расширений для Joomla 1.5
*

Репутация: +46/-1
Offline Offline

Пол: Мужской
Сообщений: 834


Тружусь, не покладая рук


« Ответ #14 : 12.05.2012, 03:24:20 »

На всякий случай мои три копейки:
класс JInput имеет таки методы getInt, getFloat, getCmd  и т.д.
Просто эти методы реализованы через __get.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet