Спрятать ссылки на скачивания от гостей

Голоса: +1

Как спрятать ссылки от гостей на скачивания в модуле каталог статей?

Пробовал этот скрипт - не работает (во всех модулях работает, а здесь нет!): 

<?if(!$USER_LOGGED_IN$)?> 
<script type="text/javascript"> 
$('a.link').after('<a href="/index/3">Доступно только для пользователей</a>').remove(); 
</script> 
<?endif?>

И второй вопрос: в этом же модуле вместо прямой ссылки на скачивание, было так:

сейчас:

Скачатьhttp://www.northernsoftworks.com/yosemitecachecleaner.html

нужно:

Скачать: сайт разработчика - нужно чтоб такая форма автоматом появлялась после добавления материала (при добавлении материала, я в графу "Ссылка на скачивания" вставляю ссылку с сайта разработчика)...

Заранее благодарен за помощь!

 

Адрес сайта http://malroz.ru/
| Автор: | Категория: JavaScript
по 1 вопросу решение не до конца, где подвох?
Хотя этот вопрос еще не решен, но чтобы тем похожих не плодить, еще вопрос:
Как спрятать ссылки типа "Добавить новость" во всех модулях от всех кроме админа и модера?
Скрин: http://s012.radikal.ru/i319/1503/33/641dca2f89ca.png
вот так:
<?if($GROUP_ID$='3'||$GROUP_ID$='4')?><?if($ADD_ENTRY_LINK$)?>
<a href="$ADD_ENTRY_LINK$" style="text-align: right;">Добавить новость</a><?endif?><?endif?>
спасибо, вставляю в вид материалов, не прячет... Куда правильно вставить?
Правильно вставлять на главную страницу либо страницу архива либо раздела либо категории причем здесь вид материала. Куда вставить уже сами смотрите, я вместо вас не вставлю. Условие рабочее так как ранее до вас спрашивали и помогло. Если у вас не работает, значит вы что-то не верно делаете.

Ранее был вопрос, читаем тему - http://www.ucoz.ru/qa/index.php/16770
почитав указанную Вами тему, вроде все просто: "Откройте главную на редактирование, далее вы увидите следующий код нажав на кнопку - Источник в редакторе:

<?if($ADD_ENTRY_LINK$)?><a href="$ADD_ENTRY_LINK$" style="text-align: right;">Добавить новость</a><?endif?>

$LAST_NEWS$
Замените на:

<?if($GROUP_ID$='2'||$GROUP_ID$='3'||$GROUP_ID$='4')?><?if($ADD_ENTRY_LINK$)?>
<a href="$ADD_ENTRY_LINK$" style="text-align: right;">Добавить новость</a><?endif?><?endif?> $LAST_NEWS$
Сохранить."
но нет у меня такого "<?if($ADD_ENTRY_LINK$)?><a href="$ADD_ENTRY_LINK$" style="text-align: right;">Добавить новость</a><?endif?>

$LAST_NEWS$", может туплю, но найти не могу (
Конечно нет, так как вы добавляете в вид материалов, а не на главную.

Чтобы открыть главную, нужно перейти в Панель управления - Главная - Редактор страниц - Управление страницами сайта, далее находим главную и напротив нее жмем на иконку в виде ключика, вот здесь все редактируем.
нашел ) у меня код маленько другой:
<!--IF--><div style="text-align:right;padding-bottom:3px;">[ <a href="$ADD_ENTRY_LINK$">Добавить новость</a> ]</div><div style="text-align:right;padding-bottom:3px;"><font face="Verdana, Arial, Helvetica, sans-serif" size="3"><span style="font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;">$LAST_NEWS$
попробовал воткнул после <!--IF--> ($GROUP_ID$='3'||$GROUP_ID$='4')?><?if($ADD_ENTRY_LINK$)?> так у меня вообще перестало всю страницу открывать ), куда в этом коде нужно впихнуть эту строчку ? )
Ваш код заменить на:
<?if($GROUP_ID$='3'||$GROUP_ID$='4')?><?if($ADD_ENTRY_LINK$)?>
<div style="text-align:right;padding-bottom:3px;">[ <a href="$ADD_ENTRY_LINK$">Добавить новость</a> ]</div>
<?endif?><?endif?>

$LAST_NEWS$
Спасибо! Слава Богу все получилось! )

Ответов: 1

Голоса: +1
 
Лучший ответ

1. Попробуйте вот так:

 <?if(!$USER_LOGGED_IN$)?> 
<script type="text/javascript"> 
$('.eText a').after('<a href="/index/3">Доступно только для пользователей</a>').remove(); 
</script> 
<?endif?>

2. Вы наверное ошиблись, но в каталоге статей нет поля ссылка на скачивание, там есть поле - Ссылка на источник материала

Если вы именно им и пользуетесь, то на странице материала и комментариев код должен быть примерно таким:

Сейчас у вас стоит такой код:
<!--<s5174>-->Источник<!--</s>-->: <a href="javascript://" rel="nofollow" onclick="window.open('$SOURCE$');return false;">$SOURCE$</a><?endif?>

Должен быть примерно таким:
<!--<s5174>-->Источник<!--</s>-->: <a href="javascript://" rel="nofollow" onclick="window.open('$SOURCE$');return false;"><a href="$SOURCE$">сайт разработчика</a><?endif?>
| Автор:
Выбор ответа лучшим | | Автор: Alex Roznin
Спасибо!
1. Получилось, но почему то два раза пишет "Доступно для разработчиков"
2. ок
если пишет 2 раза, значит вы не удалил свой имеющийся код и установили текущий по второму кругу, проверяйте код
да нет, на 2 раза проверил, вот весь код:
<html>
<head>
<meta charset="utf-8">
<title>$ENTRY_TITLE$ - $CAT_NAME$</title>
<meta name="description" content="$AUTHOR_SITE$" />
<meta name="keywords" content="$AUTHOR_EMAIL$" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<script type="text/javascript">
 var browser = navigator.userAgent;
 var browserRegex = /(Android|BlackBerry|IEMobile|Nokia|iP(ad|hone|od)|Opera M(obi|ini))/;
 var isMobile = false;
 if(browser.match(browserRegex)) {
 isMobile = true;
 addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false);
 function hideURLbar(){
 window.scrollTo(0,1);
 }
 }
</script>
<link type="text/css" rel="StyleSheet" href="/_st/my.css" />
</head>
<body>
$ADMIN_BAR$
<header>
 <div id="header">
 <div class="wrapper">
 $GLOBAL_AHEADER$
 $GLOBAL_PROMO$
 </div>
 </div>
</header>
<div align="center"><script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- apple3-2 -->
<ins class="adsbygoogle"
 style="display:inline-block;width:728px;height:90px"
 data-ad-client="ca-pub-4455868598852164"
 data-ad-slot="8802862674"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></div>
<div id="casing">
 <div class="wrapper">
 <?if($MODULE_ID$='forum')?><div class="forum-box"><?endif?>
 <!-- <middle> -->
 <div class="part-l">
 <div id="content">
 <!-- <body> --><table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="80%"><a href="$HOME_PAGE_LINK$"><!--<s5176>-->Главная<!--</s>--></a> &raquo; <a href="$MODULE_URL$"><!--<s5208>-->Программы<!--</s>--></a> <?if($SECTION_NAME$)?>&raquo; <a href="$SECTION_URL$">$SECTION_NAME$</a><?endif?> &raquo; <a href="$CAT_URL$">$CAT_NAME$</a></td>
<td align="right" style="white-space: nowrap;"><?if($ADD_ENTRY_LINK$)?>[ <a href="$ADD_ENTRY_LINK$"><!--<s5202>-->Добавить программу<!--</s>--></a> ]<?endif?></td>
</tr>
</table>
<hr />
<div class="eTitle" style="padding-bottom:3px;"><?if($MODER_PANEL$)?><div style="float:right">$MODER_PANEL$</div><?endif?>$ENTRY_TITLE$</div>
<table border="0" width="100%" cellspacing="0" cellpadding="2" class="eBlock">
<tr><td class="eText" colspan="2">$MESSAGE$ <?if($SOURCE$)?><br /><br /><!--<s5174>-->Скачать<!--</s>-->: <a href="javascript://" rel="nofollow" onclick="window.open('$SOURCE$');return false;"><a href="$SOURCE$">сайт разработчика</a><?endif?></td></tr>
<tr><td class="eDetails1" colspan="2"><?if($RATING$)?><div style="float:right"><?$RSTARS$('15','/.s/t/1061/rating.png','1','float')?></div><?endif?><span class="e-category"><span class="ed-title"><!--<s3179>-->Категория<!--</s>-->:</span> <span class="ed-value"><a href="$CAT_URL$">$CAT_NAME$</a></span></span><span class="ed-sep"> | </span><span class="e-add"><span class="ed-title"><!--<s3178>-->Добавил<!--</s>-->:</span> <span class="ed-value"><a href="$PROFILE_URL$">$USER$</a> ($ADD_DATE$) </span></span>
<?if($AUTHOR_NAME$)?><span class="ed-sep"> | </span><span class="e-author"><span class="ed-title"><!--<s5173>-->Автор<!--</s>-->:</span> <span class="ed-value"><u>$AUTHOR_NAME$</u><?endif?> <?if($AUTHOR_EMAIL_JS$)?><a href="$AUTHOR_EMAIL_JS$" title="E-mail">E</a><?endif?> <?if($AUTHOR_SITE$)?><a rel="nofollow" href="javascript://" onclick="window.open('$AUTHOR_SITE$');return false;" title="Web-site">W</a><?endif?></span></span>
</td></tr>
<tr><td class="eDetails2" colspan="2"><span class="e-reads"><span class="ed-title"><!--<s3177>-->Просмотров<!--</s>-->:</span> <span class="ed-value">$READS$</span></span> <?if($COMMENTS_NUM$)?><span class="ed-sep"> | </span><span class="e-comments"><span class="ed-title"><!--<s3039>-->Комментарии<!--</s>-->:</span> <span class="ed-value">$COMMENTS_NUM$</span></span><?endif?>
<?if($TAGS$)?><span class="ed-sep"> | </span><span class="e-tags"><span class="ed-title"><!--<s5308>-->Теги<!--</s>-->:</span> <span class="ed-value">$TAGS$</span></span><?endif?>
<?if($RATING$)?><span class="ed-sep"> | </span><span class="e-rating"><span class="ed-title"><!--<s3119>-->Рейтинг<!--</s>-->:</span> <span class="ed-value"><span id="entRating$ID$">$RATING$</span>/<span id="entRated$ID$">$RATED$</span></span></span><script type="text/javascript">(function() {
 if (window.pluso)if (typeof window.pluso.start == "function") return;
 if (window.ifpluso==undefined) { window.ifpluso = 1;
 var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
 s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
 s.src = ('https:' == window.location.protocol ? 'https' : 'http') + '://share.pluso.ru/pluso-like.js';
 var h=d[g]('body')[0];
 h.appendChild(s);
 }})();</script>
<div class="pluso" data-background="transparent" data-options="small,round,line,horizontal,nocounter,theme=01" data-services="vkontakte,odnoklassniki,facebook,twitter,google,moimir,email,print"></div><?endif?></td></tr>
</table>
 <?if($COM_IS_ACTIVE$)?>
<?if($COM_CAN_READ$)?>
<?if($RELATED_ENTRIES$||$RELATED_ENTRIES$(7))?>
<div id="uRelated"> <span>Смотрите также:</span>
<?$RELATED_ENTRIES$(7)?>
</div>
<?else?><?endif?>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr><td width="60%" height="25"><!--<s5183>-->Всего комментариев<!--</s>-->: <b>$COM_NUM_ENTRIES$</b></td><td align="right" height="25">$COM_PAGE_SELECTOR$</td></tr>
<tr><td colspan="2">$COM_BODY$</td></tr>
<tr><td colspan="2" align="center">$COM_PAGE_SELECTOR1$</td></tr>
<tr><td colspan="2" height="10"></td></tr>
</table>
<?endif?>

<?if($COM_CAN_ADD$)?>
$COM_ADD_FORM$
<?else?>
<?if($USER_LOGGED_IN$)?><?else?><div align="center" class="commReg"><!--<s5237>-->Добавлять комментарии могут только зарегистрированные пользователи.<!--</s>--><br />[ <a href="$REGISTER_LINK$"><!--<s3089>-->Регистрация<!--</s>--></a> | <a href="$LOGIN_LINK$"><!--<s3087>-->Вход<!--</s>--></a> ]</div><?endif?>
<?endif?>
<?endif?><!-- </body> -->
 </div>
 </div>
 <div class="part-r">
 <aside>
 <div id="sidebar">
 $GLOBAL_CLEFTER$
 </div>
 </aside>
 </div>
 <!-- </middle> -->
 <div class="clr"></div>
 <?if($MODULE_ID$='forum')?></div><?endif?>
 </div>
</div>
    
<?if(!$USER_LOGGED_IN$)?>
<script type="text/javascript">
$('.eText a').after('<a href="/index/3">Доступно только для пользователей</a>').remove();
</script>
<?endif?>
    
$GLOBAL_BFOOTER$
<script type="text/javascript" src="/.s/t/1061/template.min.js"></script>

<div style="display:none">

</div>
</body>
</html>
Понял, это проблемы с вашим скриптом. Для тега <a href=""></a> нужно задать новый класс и далее его уже конкретно прописать в  условии, чтобы скрывалась лишь ссылка.

То есть имеем мы код:
<?if($SOURCE$)?><br /><br /><!--<s5174>-->Скачать<!--</s>-->: <a href="javascript://" rel="nofollow" onclick="window.open('$SOURCE$');return false;"><a href="$SOURCE$">сайт разработчика</a><?endif?>

Заменим на:
<?if($SOURCE$)?><br /><br /><!--<s5174>-->Скачать<!--</s>-->: <a href="javascript://" rel="nofollow" onclick="window.open('$SOURCE$');return false;"><a class="prog-lnk" href="$SOURCE$">сайт разработчика</a><?endif?>

Далее скрипт ваш заменим на:
 <?if(!$USER_LOGGED_IN$)?>
<script type="text/javascript">
$('.prog-lnk a').after('<a href="/index/3">Доступно только для пользователей</a>').remove();
</script>
<?endif?>

Думаю должно помочь, проверяйте.
еще, посмотрите, пожалуйста, что то у меня в браузерах яндекс и фаер фокс сайт вообще криво открывает ( (есть что то похожее с PDA версией!)
> еще, посмотрите, пожалуйста, что то у меня в браузерах яндекс и фаер фокс сайт вообще криво открывает ( (есть что то похожее с PDA версией!
>> Перейти в общие настройки и снять отметку с пункта - Активизировать шаблоны для PDA версии сайта - Сохранить.
У вас адаптивный дизайн который сам подстраивается под мобильные устройства, здесь PDA версия не нужна. Если вам она нужна соответственно пишем свои стили для pda версии так как сейчас она у вас абсолютно стандартна.

У меня в блоге так же адаптивный дизайн, но pda версия это уже прошлое и она вовсе не нужна если стоит адаптивный дизайн который подстраивается под(смартфоны, планшеты, нетбуки, ноутбуки и домашние ПК итд).
по ссылкам, сейчас вообще не прячет от гостей! Что то не так...
снял отметку с PDA, сохранил, все равно яндекс браузер и лисица открывает так )))

http://s017.radikal.ru/i423/1503/6f/4fc434b96ef4.png

может, эта хрень только у меня?
Хотя ваш скрипт абсолютно лишний, системными средствами все настраивается в правах для групп пользователей. Перейти в Панель управления - Главная » Пользователи » Группы пользователей » Установка прав для всех групп - Каталог файлов, далее находим пункты:
- Скачивать файлы с сервера
- Скачивать с удаленного сервера
Напротив группы Гости снять галочку и сохранить.

Ваш скрипт удалить и после проверить результат.

- По PDA, проверил в Лисе все корректно, снесите кеш
Все дело в том, что это не для модуля каталог файлов, а для модуля каталог статей (про каталог файлов я знаю), причем в каталоге файлов этот скрипт прекрасно работает )
аа понял ошибку, мы не завернули блок условие в див который создали то есть:
<div class="prog-lnk">
<?if($SOURCE$)?><br /><br /><!--<s5174>-->Скачать<!--</s>-->: <a href="javascript://" rel="nofollow" onclick="window.open('$SOURCE$');return false;"><a class="prog-lnk" href="$SOURCE$">сайт разработчика</a><?endif?>
</div>

И далее уже скрипт ищет ссылку в данном блоке. Должно работать, если нет, увы не знаю чем вам помочь.
) щам заработало, но опять два раза пишет Доступно только для пользователей! ) А вот эта строчка не может конфликтовать:

<?if($USER_LOGGED_IN$)?><?else?><div align="center" class="commReg"><!--<s5237>-->Добавлять комментарии могут только зарегистрированные пользователи.<!--</s>--><br />[ <a href="$REGISTER_LINK$"><!--<s3089>-->Регистрация<!--</s>--></a> | <a href="$LOGIN_LINK$"><!--<s3087>-->Вход<!--</s>--></a> ]</div><?endif?>
<?endif?>
условия вроде как одинаковые...
> А вот эта строчка не может конфликтовать.
>> нет, это условие стоит отдельно
...