Новости Joomla

Joomla официально признана цифровым общественным благом Joomla с гордостью сообщает, что была...

Joomla официально признана цифровым общественным благом 🙏🎉Joomla с гордостью сообщает, что была официально признана цифровым общественным благом (Digital Public Good, DPG) Альянсом цифровых общественных благ (Digital Public Goods Alliance, DPGA) — инициативой, поддерживаемой Организацией Объединённых Наций.Это признание ставит Joomla! в ряд международных open-source проектов, которые разделяют ценности открытости, прозрачности, защиты данных и социального воздействия. Важно отметить, что статус цифрового общественного блага присвоен самому программному решению Joomla!, а не организации Joomla как юридическому лицу.Альянс цифровых общественных благ (DPGA) ведёт международный реестр цифровых общественных благ и оценивает проекты на основе чётко определённых стандартов. Его миссия — поддержка открытых технологий, способствующих достижению Целей устойчивого развития ООН (UN SDGs) и решению глобальных задач развития. 🌐Чтобы получить статус цифрового общественного блага, проект должен соответствовать Стандарту цифровых общественных благ (Digital Public Goods Standard), который включает следующие критерии:✔️ Открытое лицензирование (например, использование признанных open-source лицензий)✔️ Защита данных и безопасность✔️ Соответствие правовым и этическим нормам✔️ Вклад в достижение Целей устойчивого развития ООН✔️ Прозрачное управление и долгосрочная устойчивость✔️ Активное вовлечение сообществаПолучение статуса цифрового общественного блага — процесс далеко не автоматический. Joomla прошла тщательную процедуру оценки, которая потребовала предоставления подробной документации и доказательств соответствия строгим стандартам.Благодаря самоотверженной работе множества участников сообщества, этот результат стал наглядным подтверждением универсальности и открытости Joomla, а также бесчисленных способов, с помощью которых она помогает людям создавать веб-решения.Это достижение подчёркивает позицию Joomla как одной из самых надёжных и гибких open-source CMS в мире — системы, которая продолжает давать возможность разработчикам, организациям и государственным структурам создавать открытые, безопасные и инклюзивные цифровые решения.Оригинал новости

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

ankoch

  • Захожу иногда
  • 498
  • 50 / 1
При помощи плагина lastvewtab отобразил последних пользователей, которые просматривают анкету (здесь прикреплён плагин), но вкладка доступна всем, кто входит в профиль пользователя. А хотелось бы, чтобы она была доступна только владельцу аккаунта. Как это можно сделать (в настройках СВ не нашёл такой возможности)?
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
К сожалению у меня этот плагин не пошел...
но вот код валидации на просмотр юзером или модером:
Код: php-brief
<?php
$isModerator=isModerator($_CB_framework->myId());

if(($_CB_framework->myId()!= $user->id) && !$isModerator) {
$isME=false;
} else {
if ($_CB_framework->myId() == $user->id) {
$isME=true;
} else {
$isME=false;
}
?>

обычно применяется перед функцией getDisplayTab...

надеюсь поможет...

- удачи ;)
"The Lord Of A SandBox"
*

ankoch

  • Захожу иногда
  • 498
  • 50 / 1
migus спасибо, что откликнулся. Вставляю этот код в файл lastviews.php, который лежит в components/com_comprofiler/plugin/user/plug_cblastviewstab-0_2_8 как раз перед функцией getDisplayTab и сразу перестаёт работать весь СВ. Может его нужно как-то по частям вставлять?

Да, кстати, а какая у Вас версия СВ и Joomla (интересно почему не стал плагин)?
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
migus спасибо, что откликнулся. Вставляю этот код в файл lastviews.php, который лежит в components/com_comprofiler/plugin/user/plug_cblastviewstab-0_2_8 как раз перед функцией getDisplayTab и сразу перестаёт работать весь СВ. Может его нужно как-то по частям вставлять?

Читайте какие ошибки пишет. Если совсем не работает, скорее всего неправильно вставили...

Да, кстати, а какая у Вас версия СВ и Joomla (интересно почему не стал плагин)?

J1.5.20 php-5.2.10
CB1.2.2
"The Lord Of A SandBox"
*

ankoch

  • Захожу иногда
  • 498
  • 50 / 1
Цитировать
Читайте какие ошибки пишет. Если совсем не работает, скорее всего неправильно вставили...
Ошибки вообще не выдаёт, совсем не грузятся страницы с СВ.

Вот как я вставляю код:
Код

<?php

/**

* LastView Tab Class for handling the CB tab api

* @version $Id$

* @package Community Builder

* @subpackage lastviews.php

* @author Trail

* @copyright (C) 2005-2006 Trail, www.djtrail.nl

* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL

*/



class getLastViewsTab extends cbTabHandler {

/**

* Constructor

*/



function getLastViewsTab() {

$this->cbTabHandler();

}


КОД, КОТОРЫЙ ВСТАВЛЯЮ:
________________________________________________________________________

<?php
$isModerator=isModerator($_CB_framework->myId());
 
if(($_CB_framework->myId()!= $user->id) && !$isModerator) {
$isME=false;
} else {
if ($_CB_framework->myId() == $user->id) {
$isME=true;
} else {
$isME=false;
}
?>
______________________________________________________________________________
КОНЕЦ КОДА, КОТОРЫЙ ВСТАВЛЯЮ


function getDisplayTab($tab,$user,$ui) {

global $mosConfig_lang, $mosConfig_absolute_path, $mosConfig_live_site, $mosConfig_offset, $database, $my;

$return = "";



$params = $this->params;

$LVexclusionlist = $params->get('LVexclusionlistTXT', '0');

$LVdateformat = $params->get('LVdateformatOPTION', '0');

$LVadmingroup = $params->get('LVadmingroupTXT', '18');

$LVhideadmin = $params->get('LVhideadminOPTION', '1');

$LVhideguests = $params->get('LVhideguestsOPTION', '1');

$listlimit = $params->get('LVlistlimit', '10');

$LVthelast = $params->get('LVthelastTXT', 'The Last');

$LVadmin = $params->get('LVadminTXT', '(admin)');

$LVviews = $params->get('LVviewsTXT', 'views');

$LVavatar = $params->get('LVavatarTXT', 'Avatar');

$LVname = $params->get('LVnameTXT', 'Name');

$LVtime = $params->get('LVtimeTXT', 'Time');

$LVtotal = $params->get('LVtotalTXT', 'Total');

$LVguests = $params->get('LVguestsTXT', 'Guests have visited this profile.');

$LVshowtotal = $params->get('LVshowtotalOPTION', '0');

$LVhidetotal = $params->get('LVhidetotalOPTION', '0');

$LVusername = $params->get('LVusernameOPTION', '0');

$JPKarmaWare = $params->get('JPKarmaWareOPTION', '0');



if (trim($LVexclusionlist == '')) $LVexclusionlist = '0';



$dateFormat = '';

if ($LVdateformat == '0') {

$dateFormat = '%d/%m %H:%M';

} elseif ($LVdateformat == '1') {

$dateFormat = '%d-%m %H:%M';

} elseif ($LVdateformat == '2') {

$dateFormat = '%d/%m/%Y %H:%M';

} elseif ($LVdateformat == '3') {

$dateFormat = '%d-%m-%Y %H:%M';

} elseif ($LVdateformat == '4') {

$dateFormat = '%m/%d %H:%M';

} elseif ($LVdateformat == '5') {

$dateFormat = '%m-%d %H:%M';

} elseif ($LVdateformat == '6') {

$dateFormat = '%m/%d/%Y %H:%M';

} elseif ($LVdateformat == '7') {

$dateFormat = '%m-%d-%Y %H:%M';

} elseif ($LVdateformat == '98') {

$dateFormat = _DATE_FORMAT_LC;

} elseif ($LVdateformat == '99') {

$dateFormat = _DATE_FORMAT_LC2;

}



$sql =

"SELECT "

. "\n v.viewer_id, "

. "lastview, "

. "\n v.viewscount, c.avatar, c.avatarapproved, c.banned, u.username, u.name "

. "\n FROM "

. "\n `#__comprofiler_views` v, `#__comprofiler` c, `#__users` u "

. "\n WHERE "

. "\n v.profile_id = " . $database->getEscaped($user->id)

. "\n AND c.id=v.viewer_id "

. "\n AND u.id=c.id "

. "\n AND c.id NOT IN (" . $database->getEscaped($LVexclusionlist). ") "

. "\n ORDER BY "

. "\n v.lastview DESC "

. "\n LIMIT " . $database->getEscaped($listlimit);

$database->setQuery($sql);

$lastviews = $database->loadObjectList();

$viewercount=count($lastviews);



if($tab->description != null) {

$return .=

"<div class=\"tab_Description\">"

. unHtmlspecialchars(getLangDefinition($tab->description))

. "</div>";

}



$return =

"<table cellpadding=\"0\" cellspacing=\"2\" border=\"0\" width=\"95%\" align=\"center\">";



$colspan = 0;

$text = '';

$showLVtotal = true;



if (($my->id == $user->id || $LVshowtotal == '1') && $LVhidetotal != '0') {

$colspan = 4;

$text = htmlspecialchars("$LVthelast $viewercount $LVviews");

$showLVtotal = true;

} elseif ($my->id && ($my->gid == 2 || $my->gid > $LVadmingroup) && ($LVhideadmin != '0')) {

$colspan = 4;

$text = htmlspecialchars("$LVthelast $viewercount $LVviews $LVadmin");

$showLVtotal = true;

} else {

$colspan = 3;

$text = htmlspecialchars("$LVthelast $viewercount $LVviews");

$showLVtotal = false;

}



$return .=

"<tr>"

. "<td class=\"sectiontableheader\" colspan=\"$colspan\" align=\"center\">"

. "<nobr>"

. "<font size=\"4\">$text</font>"

. "</nobr>"

. "</td>"

. "</tr>"

. "<tr>"

. "<td colspan=\"$colspan\" height=\"1\">&nbsp;</td>"

. "</tr>"

. "<tr>"

. "<td class=\"sectiontableheader\" align=\"center\">"

. "<b>" . htmlspecialchars($LVavatar). "</b>"

. "</td>"

. "<td class=\"sectiontableheader\" align=\"center\">"

. "<b>" . htmlspecialchars($LVname). "</b>"

. "</td>"

. "<td class=\"sectiontableheader\" align=\"center\">"

. "<b>" . htmlspecialchars($LVtime). "</b>"

. "</td>";



if ($showLVtotal) {

$return .=

"<td class=\"sectiontableheader\" align=\"center\">"

. "<b>" . htmlspecialchars($LVtotal). "</b>"

. "</td>";

}



$return .=

"</tr>";

 

   if ( $LVhideguests != '0') {

$sql =

"SELECT "

. "\n count(viewer_id) "

. "\n FROM "

. "\n `#__comprofiler_views` "

. "\n WHERE "

. "\n profile_id = " . $database->getEscaped($user->id). " AND viewer_id = 0";

$database->setQuery($sql);

$guestscount = $database->loadResult();

 }



if ($viewercount > 0) {

foreach ($lastviews as $lastview) {

//this cool sectiontableentry switch code line was contributed by viames :)

$class = (is_int(@$counter++ / 2)? 'sectiontableentry1' : 'sectiontableentry2');



if ($LVusername == '0') { $viewername = $lastview->username; }

if ($LVusername == '1') { $viewername = $lastview->name; }

if ($LVusername == '2') { $viewername = '' . $lastview->username . ' (' . $lastview->name . ')'; }

if ($LVusername == '3') { $viewername = '' . $lastview->name . ' (' . $lastview->username . ')'; }





if ($lastview->avatar && $lastview->banned != '1' && $lastview->avatarapproved !='0') {

$testimage = "/images/comprofiler/tn$lastview->avatar";



if (file_exists($mosConfig_absolute_path.$testimage)) {

$image = $mosConfig_live_site.$testimage;

} else {

$testimage = "/components/com_comprofiler/plugin/language/$mosConfig_lang/images/tnnophoto.jpg";



if (file_exists($mosConfig_absolute_path.$testimage)) {

$image = $mosConfig_live_site.$testimage;

} else {

$image = "$mosConfig_live_site/components/com_comprofiler/plugin/language/default_language/images/tnnophoto.jpg";

}

}

} else {

$testimage = "/components/com_comprofiler/plugin/language/$mosConfig_lang/images/tnnophoto.jpg";



if (file_exists($mosConfig_absolute_path.$testimage)) {

$image = $mosConfig_live_site.$testimage;

} else {

$image = "$mosConfig_live_site/components/com_comprofiler/plugin/language/default_language/images/tnnophoto.jpg";

}

}





$return.=

"<tr>"

. "<td class=\"$class\" width=\"1%\" align=\"center\">"

. "<font size=\"-3\">"

. "<nobr>&nbsp;"

. "<a href=\""

. JRoute::_("index.php?option=com_comprofiler&task=userProfile&user=$lastview->viewer_id")

. "\">"

. "<img border=\"0\" height=\"40\" src=\"$image\">"

. "</a>"

. "&nbsp;</nobr>"

. "</font>"

. "</td>"

. "<td class=\"$class\" align=\"center\">"

. "<font size=\"-3\">"

. "<nobr>&nbsp;"

. "<a href=\""

. JRoute::_("index.php?option=com_comprofiler&task=userProfile&user=$lastview->viewer_id")

. "\">"

. "<b>" . htmlspecialchars($viewername). "</b>"

. "</a>"

. "&nbsp;</nobr>"

. "</font>"

. "</td>"

. "<td class=\"$class\" align=\"center\">"

. "<font size=\"-3\">"

. "<nobr>&nbsp;"

. "<b>" . JHTML::_('date', $lastview->lastview, $dateFormat, "1"). "</b>"

. "&nbsp;</nobr>"

. "</font>"

. "</td>";



if ( $showLVtotal ) {

$return .=

"<td class=\"$class\" width=\"1%\" align=\"center\">"

. "<font size=\"-3\">"

. "<nobr>&nbsp;"

. "<b>$lastview->viewscount</b>"

. "&nbsp;</nobr>"

. "</font>"

. "</td>";

}



$return.="</tr>";

}



if ( $LVhideguests != '0') {

$return .=

"<tr>"

. "<td colspan=\"$colspan\" height=\"1\">&nbsp;</td>"

. "</tr>"

. "<tr>"

. "<td colspan=\"$colspan\" class=\"sectiontableheader\" align=\"center\">"

. "<font size=\"2\">"

. "<nobr>&nbsp;"

. "<b>$guestscount " . htmlspecialchars($LVguests). "</b>"

. "&nbsp;</nobr>"

. "</font>"

. "</td>"

. "</tr>";

}



if ($JPKarmaWare != '1') {





}



$return .=

"</table>";



return $return;

}

} //end getDisplayTab

} //end class getLastViewsTab.



?>

Может потому, что вот эти фишки
Код
<?php и ?>
находятся внутри такого же блока? Однако пробовал вставить кусок данного кода без них - результат тот же, пробовал вставить кусок кода целиком как есть только в самый верх файла - тот же самый результат  :(.
Наверное что-то не так делаю?
« Последнее редактирование: 07.09.2010, 11:49:05 от ankoch »
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
*

ankoch

  • Захожу иногда
  • 498
  • 50 / 1
Только без обид, вам сюда: http://joomlaforum.ru/index.php/topic,43730.0.html
Спасибо migus. А какие обиды - век живи, век учись! Сам давно задумываюсь об этом. Теперь всё, баста, буду читать.
« Последнее редактирование: 07.09.2010, 20:06:30 от ankoch »
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
"The Lord Of A SandBox"
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Возможность сделать разные типы регистрации

Автор kurz

Ответов: 0
Просмотров: 4388
Последний ответ 03.11.2022, 12:04:04
от kurz
Поле номера телефона в профиле CommunityBuilder

Автор Guran

Ответов: 1
Просмотров: 4352
Последний ответ 13.03.2017, 09:44:36
от Guran
Как сделать поле для отображения пола пользователя?

Автор Анаит

Ответов: 4
Просмотров: 2275
Последний ответ 10.01.2017, 14:25:36
от Санчо
Настройка CB pofile Pro отображается только профиль по умолчанию

Автор Жуковский

Ответов: 0
Просмотров: 1545
Последний ответ 09.09.2015, 20:10:35
от Жуковский
Как сделать в редактировании профиля юзера поял ввиде таблицы?

Автор Dusk09

Ответов: 0
Просмотров: 1488
Последний ответ 11.08.2015, 21:21:46
от Dusk09