Предлагаю решение

РЕШЕНИЕ! Пик посещаемости - как избавится от гостей

6 мая 2011 в 0:11

почикал все что может гостей считать... а в пике посещаемости все равно авторизиров + гости считаются....

что ещее переделать?

<?php
if (user_access('access content')) {
    $new_user_days = 3; // Количество дней с момента регистрации, которые пользователь считается новичком
    $max_users = 1000; // Максимальное количество отображаемых пользователей
   

    $output = '';
   
          $interval = time() - variable_get('user_block_seconds_online', 900);

       
         
          $authenticated_users = db_query('SELECT DISTINCT u.uid, u.name, s.timestamp FROM {users} u INNER JOIN {sessions} s ON u.uid = s.uid WHERE s.timestamp >= %d AND s.uid > 0 ORDER BY s.timestamp DESC', $interval);
          $authenticated_count = 0;

          $items = array();
          while ($account = db_fetch_object($authenticated_users)) {
            if (!isset($items[$account->uid])) {
              if ($max_users > 0) {
              $items[$account->uid] = $account;
              $max_users--;
              }
              $authenticated_count++;
            }
          }

          if ($authenticated_count == 1) {
            $output = t('There is currently %members', array('%members' => format_plural($authenticated_count, '1 user', '@count users')));
          }
          else {
            $output = t('There are currently %members', array('%members' => format_plural($authenticated_count, '1 user', '@count users')));
          }

          // Display a list of currently online users.

Прикрутить систему оплату [Решено]

5 мая 2011 в 21:57

Есть нода, с настроенными полями, есть цена.
Как можно настроить оплату данной стоимости, и произвести проверку факта оплаты. ЯД, Webmoney.

Решение:
Смотрите SimplePay модуль.

Добрый Хостинг для Ваших сайтов!

4 мая 2011 в 19:51

Здравствуйте Уважаемые форумчане!

Предлагаем Вашему вниманию , качественный и не дорогой хостинг для Ваших прекрасных блогов (и не только), от относительно молодой но целеустремлённой компании ООО "Добрый хостинг"

1. Реквизиты компании.
2. Лицензия.
3. Договор.
4. Отзывы: раз, два и три.

на данный момент собственное оборудование размещается в ДЦ Утел (Киев , Украина) и ДЦ Infiumhost (Харьков , Украина).

К Вашему вниманию предлагаем 9 тарифов хостинга на базе любой из трёх самых распространённых панелей управления ISP Manager, DirectAdmin или cPanel.

Здесь покажем только самые распространённые тарифы хостинга:

Добрый-мини

  • 500 Мб.
  • 6 сайтов.
  • 6 mySQL баз.

70 рублей в месяц (скидки 6 мес. - 15% , 12 мес. - 30% + домен ru или рф в подарок)

Добрый-норма

  • 2000 Мб.
  • 30 сайтов.
  • неогр. mySQL баз.

Использование node_reference для построения каталога предприятий

3 мая 2011 в 7:30

Написал мануал про создание каталогов предприятий с помощью cck node reference на примере каталога банков.
Там же про строение чпу с помощью URL alter, Handy alias и Pathauto
http://druit.ru/blogs/views/139

Корректная вставка яндекс карты в Drupal [решено]

2 мая 2011 в 19:25

При вставке яндекс карты с помощью конструктора http://api.yandex.ru/maps/tools/constructor/ всплывающий баллон отображался некорректно (баллон разъезжается на всю карту).

Решение здесь:
http://clubs.ya.ru/mapsapi/replies.xml?item_no=10235#cms-drupal

Качественные VDS серверы, хостинг, выделенные серверы в Москве

30 апреля 2011 в 14:44

Добрый день. Хотим Вам предложить недорогие, но качественные VDS сервера на базе процессоров Intel Xeon серии 56 и SAS 15к дисках.
Свои сервера размещенные в ЦОД ТЕЛ

Мы используем только качественное брендовое оборудование Intel и Supermicro:
Текущая конфигурация серверов:
SuperMicro SuperServer 6016T-U
Процессоры Intel Xeon 2xE5620\E5630
Оперативная память ECC Registered 32GB
HDD 4x300GB SAS 15k Fujitsu\Seagate (RAID-10)
RAID контроллер Adaptec-ASR-5805 с BBU

Мы даем гарантию: вся память будет доступна только Вам и никто другой не сможет ее использовать.

Тарифы на VDS
Тарифы на хостинг

P.S Для тарифов с 1 IP мы предлагаем бесплатную парковку доменов.
2P.S IP из одной сети класса C.

Ping'i:
PING google.ru (74.125.232.16) 56(84) bytes of data.
64 bytes from 74.125.232.16: icmp_seq=1 ttl=58 time=1.09 ms
64 bytes from 74.125.232.16: icmp_seq=2 ttl=58 time=0.915 ms
64 bytes from 74.125.232.16: icmp_seq=3 ttl=58 time=1.04 ms
64 bytes from 74.125.232.16: icmp_seq=4 ttl=58 time=1.15 ms
PING yandex.ru (213.180.204.211) 56(84) bytes of data.
64 bytes from yandex.ru (213.180.204.211): icmp_seq=1 ttl=57 time=2.22 ms
64 bytes from yandex.ru (213.180.204.211): icmp_seq=2 ttl=57 time=2.23 ms

Ubercart Alter Price

29 апреля 2011 в 14:54

Сделал обещанный модуль.
что он себе представляет:
Модуль называется Ubercart Alter Sell Price. Находиться во вкладке ubercart - extra. Копируем - Включаем. Дальше в материале типа Product появляется возможность писать текст вместо Sell Price причем остается и сам Sell Price. Во вьесе есть дополнительное поле, которое выводит представление альтернативной цены, так и называется - Alter Sell Price.
Как работает во вьесе product - заменяем поле Product: Sell price на поле Product: Alter Sell Price. Нажимаем саве и будет нам щасье.
Product: Alter Sell Price - выводит текст продукта и если в настройках продукта снята галочка "Использовать Alter Sell Price" - то выводит реальную цену продажи.
В чем отличие от других: Альтернативную цену можно писать для каждого продукта разную.

p/s/ Это первый модуль - поэтому прошу строго не судить .. конструктивную критику приветствую..
Все всем спасибо.

Убрать показ поля темы комментария, если оно не заполнено

27 апреля 2011 в 12:34

Задача такая:
Оставить опциональное поле заголовок для комментария, но в случае, если пользователь его не заполнил - не выводить заголовок коммента. Обсуждение нашел только в этой теме - http://www.drupal.ru/node/55602. Но там вариант, который не работает (если его подпилить - получим вариант, который удалит тему, если словосочетание встретилось в тексте коммента и теряется якорь на коммент, который может пригодиться). Хочу предложить своих два варианта решения.

1. С помощью хука на PHP.

В template.php вставляем следующее и очищаем кеш:

<?php
function phptemplate_preprocess_comment(&$vars) {
$comment $vars['comment'];
$titleclean trim(strip_tags($vars['title']));
$length strlen($titleclean);
$contclean trim(strip_tags($vars['content']));
$shortcont mb_substr($contclean0$length) ;
if (
$titleclean == $shortcont) {
$vars['title'] = l(''$_GET['q'], array('fragment' => "comment-$comment->cid"));
}
?>

У меня отлично работает решение, тема не отображается, если не заполнена пользователем.

2. С помощью jQuery.

Создаем и подключаем js.файлик или дописываем в уже готовый следующую функцию.

$(document).ready(function(){
$('.comment').each(function(){
var str = $(this).find('h3 a').html().length;
str2 = $(this).find('.content').find('p:first').text().substr(0, str);
if (str2 == $(this).find('h3 a').html()) {
$(this).find('h3').hide();
}
});
});

Он-лайн калькулятор с админкой

27 апреля 2011 в 12:02

Озадачился созданием калькулятора с админкой.
Нашел решение:

1) создать вебформу
2) сделать поля ввода
3) сделать поля типа hidden, в которые можно забить константы
4) сделать поле markup, в которое вбить ссылку, по нажатии которой будет пересчет, в него же можно вбить и яваскрипт, который будет считать
5) скрыть кнопку "отправить" при помощи display:none

РЕШЕНО! Вывод ссылки добавить в друзья в кастомном профиле для модуля User Relationship

27 апреля 2011 в 10:53

Год искал решение и кое как нашел доделал. Но он с косяками и кривое. Может кто-нибудь поможет довести до ума.

<?php
  
// check if friends code

    

$account user_load(array('uid' => $node->uid));
    
$owner $node->name;

    

$current_relationships user_relationships_load(array('between' => array($user->uidarg(1))), array('sort' => 'rtid'));
    
$rid $current_relationships['1']['0']->rid;

       
    

//if users are friends and relationship has been approved
    
     
if ($relationships user_relationships_load(array('between' => array($user->uid$uid),'approved' => 1))) {

            

// set a value of friends to 1 to allow content to be displayed below.
            
$friends 1;

 if (

$relationships user_relationships_load(array('between' => array($user->uid$uid),'approved' => 0))) {
            
// set a value of friends to 1 to allow content to be displayed below.
            
$friends 0;
   

       
        } elseif(

$user->uid != $uid) {

       
             print 

"<a href=/user/" $user->uid "/relationships/" $rid "/remove?destination=user/$uid/ class=\"user_relationships_popup_link\">".t('Remove ' $owner ' as Friend')." </a>";
         
              
$friends 1;

       
        } else {
           

                

$friends 0;
    }

        }

     elseif (

$user->uid != $uid) {
       
               
         
              
$friends 0;
?>