Новости Joomla

Astroid обновился до версии 3.3.7!

Astroid обновился до версии 3.3.7!

Astroid — это мощный фреймворк для дизайнеров и разработчиков, позволяющий создавать адаптивные, быстрые и надежные веб-сайты и шаблоны на базе Joomla.

Главное в новой версии:

-   Исправлена загрузка файлов макетов

В предыдущем крупном релизе Astroid 3.3.6 были сделаны важные улучшения:

Основные моменты:

  • Улучшенный UI/UX в ключевых областях конфигурации
  • Повышенная стабильность и согласованность в Layout Builder и Form Builder
  • Исправления ошибок на основе отзывов сообщества
  • Улучшенная обработка визуальных эффектов, границ и шрифтов

Улучшения:

  • Обновленный UX Layout Builder
  • Улучшенный эффект предзагрузчика
  • Улучшенный стиль границ
  • Улучшенный UI/UX вкладки «Layout» в Template Options

Исправления ошибок:

  • Решены проблемы с некорректными динамическими значениями
  • Исправлен Color Transform при прокрутке
  • Устранены проблемы с работой Form Builder в Article Layout и Module Layout Builder
  • Исправлена проблема с созданием ненужных временных файлов при обработке шрифтов

Скачать: https://github.com/templaza/astroid-framework/releases/tag/v3.3.7

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 6615 Просмотров
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
День добрый.
Использую mod_adsmanager_menu для вывода меню объявлений.
Столкнулся с проблемой - как выделить активный пункт меню и чтобы выделение сохранялось при переходе по пунктам постраничной навигации?
Заранее спасибо.
*

asdf27

  • Захожу иногда
  • 120
  • 7 / 0
Re: Выделить активный пункт меню
« Ответ #1 : 27.02.2012, 17:17:12 »
Opera - правой кнопкой на активный элемент - проинспектировать элемент. У меня обычный модуль меню, опишу на его примере:

Имеем код
Код
<a href="/" class="mainlevel" id="active_menu">Лазаревское 2012</a>

Если бы это был код вашего модуля, то в CSS модуля добавил бы следующие строки:

Код
#active_menu a.mainlevel {font-weight:bold;}

Может синтаксис неправильно написал, пользую CSS с яндексом, но направление верное.
*

asdf27

  • Захожу иногда
  • 120
  • 7 / 0
Re: Выделить активный пункт меню
« Ответ #2 : 27.02.2012, 17:18:30 »
За небольшую услугу (не деньги) с вашей стороны, помогу с кодом.
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
Re: Выделить активный пункт меню
« Ответ #3 : 27.02.2012, 18:39:51 »
что за услуга?
*

asdf27

  • Захожу иногда
  • 120
  • 7 / 0
Re: Выделить активный пункт меню
« Ответ #4 : 27.02.2012, 18:56:09 »
Туристический сайт делаю для себя на перспективу, стал лениться контент писать :) Если вы отдыхали где-нибудь на Черном море, хотелось бы ваш отзыв на сайт запихнуть. Буквально, 1500 букав с пробелами :) А можно и без отзыва вовсе обойтись, как совесть позволит. Прикрепите модуль, как раз на одном из сайтов у меня есть ads, там посмотрю.
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
Re: Выделить активный пункт меню
« Ответ #5 : 27.02.2012, 19:18:53 »
Отзыв втиснуть наверное смогу.. раньше не наполнял..
Вот код из FireBuga
Код
<table cellspacing="0" cellpadding="0" border="0" width="100%">
   
<tr align="left"><td>
<a class="mainlevel" href="#">Сантехника (16)</a> <!-- Категория -->
<div style="padding-left: 10px">
    <a class="sublevel" href="#">Европейская сантехника (16)</a></div> <!-- Подкатегория 1 -->
<div style="padding-left: 10px">
    <a class="sublevel" href="#">Установка санузлов (0)</a></div> <!-- Подкатегория 2-->
</td></tr>

<tr align="left">
    <td>
<a class="mainlevel" href="#">Отопление и кондиционирование (0)</a></td></tr>

<tr align="left"><td>
<a class="mainlevel" href="#">Отделочные материалы (0)</a></td></tr>

<tr align="left"><td>
<a class="mainlevel" href="#">Окна и двери (0)</a></td></tr>

</tbody></table>
Если ты уже выделял активные пункты модуля 'mod_adsmanager_menu' то глянь, пожалуйста.
Только нужно с дочерними страницами...
С помощью javascript активный пункт меню я выделил. вот код
Код
<script type="text/javascript">
try{
var el=document.getElementById('ads_menu').getElementsByTagName('a');
var url=document.location.href;
for(var i=0;i<el.length; i++){
if (url==el[i].href){
el[i].className += ' active';
};
};
}catch(e){}
</script>
Но используется сапописный вывод товаров и пагинация с помощью классв JPagination и при переходе по пунктам пагинации активная ссылка пропадает.
Заранее спасибо.
*

asdf27

  • Захожу иногда
  • 120
  • 7 / 0
Re: Выделить активный пункт меню
« Ответ #6 : 28.02.2012, 02:03:54 »
У меня ads 2.6, модуль под 2.5 ошибками плюёт. Дай адрес сайта (можно и в личку, хотя чего стесняться), на нем посмотрю. Из твоего кода я не вижу активный элемент.
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
Re: Выделить активный пункт меню
« Ответ #7 : 28.02.2012, 10:17:19 »
Сайт на локале... А насчёт активного элемента... В FireBuge и в Опере активный элемент выбивает следующее
Код
<a class="mainlevel" href="#">Сантехника (16)</a>
для категории и
Код
<a class="sublevel" href="#">Европейская сантехника (16)</a>
для подкатегорий.. Теже самые классы стоят и для неактивных пунктов..
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
Re: Выделить активный пункт меню
« Ответ #8 : 28.02.2012, 11:02:06 »
Проблема решилась с помощью скрипта jQuery
Код
<script type="text/javascript">
jQuery(document).ready (function () {
var active_url=document.location.pathname; 
if (active_url.split ('/')[2]!=0) {
jQuery.each (jQuery("#ads_menu a[href*=/"+active_url.split('/')[2]+"]"),
function (){$(this).addClass ('active');});
}
});
</script>
Если вдруг кому-нибудь понадобиться пояснения к коду - пишите.
*

fle4er

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Выделить активный пункт меню
« Ответ #9 : 14.03.2012, 00:50:02 »
Поясните пожалуйста куда мне этот скрип вставить адс 2.6, Joomla 2.5             Vse72.ru
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
Re: Выделить активный пункт меню
« Ответ #10 : 14.03.2012, 10:17:28 »
fle4er, у меня Joomla 1.5+adsmanager 2.5
Данный скрипт вставил в конец файла mod_adsmanager_menu.php, который лежит в modules/mod_adsmanager_menu
*

fle4er

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Выделить активный пункт меню
« Ответ #11 : 14.03.2012, 12:58:19 »
не работает скрипт у меня
 
вот код mod_ads_manager_menu.php
Код
<?php
// no direct access
defined('_JEXEC') or die( 'Restricted access' );

require_once(JPATH_BASE.'/administrator/components/com_adsmanager/models/category.php');

if (!function_exists("displayMenuCats")) {
function displayMenuCats($id, $level, &$children,$itemid,$current_list,$displaynumads) {
global $cur_template;
if (@$children[$id]) {
foreach ($children[$id] as $row) {
?>
<li>
<?php
$link = JRoute::_("index.php?option=com_adsmanager&view=list&catid=".$row->id."&Itemid=$itemid");
if ($displaynumads == 1)
{
echo '<a href="'.$link.'" ><span>'.$row->name.' ('.$row->num_ads.')</span></a>';
}
else
{
echo '<a href="'.$link.'" ><span>'.$row->name.'</span></a>';
}
if (@$current_list[count($current_list) - 1 -$level] == $row->id)
{
echo "<ul>";
displayMenuCats($row->id, $level+1, $children,$itemid,$current_list,$displaynumads);
echo "</ul>";
}
?>
</li>
<?php
}
}
}
}

/****************************************************/
$catid = JRequest::getInt('catid', -1 );
$displaynumads = $params->def('displaynumads',1);
$itemid = intval($params->get( 'default_itemid', JRequest::getInt('Itemid', 0 ) )) ;

$catmodel  = new AdsmanagerModelCategory();
$cats = $catmodel->getCatTree(true,true,$nbcontents);

$displayhome = $params->def('displayhome',1);
$displaywritead = $params->def('displaywritead',1);
$displayprofile = $params->def('displayprofile',1);
$displaymyads = $params->def('displaymyads',1);
$displayrules = $params->def('displayrules',1);
$displayallads = $params->def('displayallads',1);
$displaycategories = $params->def('displaycategories',1);
$displayseparators = $params->def('displayseparators',1);

if ($displaycategories == 1) {
$cc = $catmodel->getCategories();
$orderlist = array();
// first pass - collect children
foreach ($cc as $v ) {
$orderlist[$v->id] = $v;
}

$current_list[] = $catid;
if ($catid != -1)
{
$current = $catid;
while((isset($orderlist[$current])) && ($orderlist[$current]->parent != 0))
{
$current_list[] = $orderlist[$current]->parent;
$current = $orderlist[$current]->parent;
}
}
}

$lang = JFactory::getLanguage();
$lang->load("com_adsmanager");

$user = JFactory::getUser();

$link_front = JRoute::_("index.php?option=com_adsmanager&view=front&Itemid=$itemid");
$link_write_ad = JRoute::_("index.php?option=com_adsmanager&task=write&Itemid=$itemid");
$link_show_profile = JRoute::_("index.php?option=com_adsmanager&view=profile&Itemid=$itemid");
$link_show_user = JRoute::_("index.php?option=com_adsmanager&view=list&user=".$user->id."&Itemid=$itemid");
$link_show_rules = JRoute::_("index.php?option=com_adsmanager&view=rules&Itemid=$itemid");
$link_show_all = JRoute::_("index.php?option=com_adsmanager&view=list&Itemid=$itemid");

require(JModuleHelper::getLayoutPath('mod_adsmanager_menu'));
$content="";
$path = JPATH_ADMINISTRATOR.'/../libraries/joomla/database/table';
JTable::addIncludePath($path);



Может кто поможет что нужно изменить в коде чтобы выделенный пункт меню был жирным красным цветом
*

nik_neman

  • Захожу иногда
  • 52
  • 2 / 0
Re: Выделить активный пункт меню
« Ответ #12 : 14.03.2012, 13:36:09 »
fle4er, смотри...
у меня в index.php вот так вот
Код
<div id="ads_menu">
    <jdoc:include type="modules" name="ads_menu" />
</div>
Т.е. вывод модуля обёрнут в дивку ads_menu.
В скрипте указана дивка
Код
<script type="text/javascript">
jQuery(document).ready (function () {
var active_url=document.location.pathname; 
if (active_url.split ('/')[2]!=0) {
jQuery.each (jQuery("#ads_menu a[href*=/"+active_url.split('/')[2]+"]"),
function (){$(this).addClass ('active');});
}
});
</script>

В CSS файл (в моём случае это components/com_adsmanager/css/adsmanager.css) добавил
Код
#ads_menu a.active{
     color:red;
 }
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться