Сайт разработчика софта

Главные вкладки

Аватар пользователя Technician Technician 21 февраля 2011 в 1:00

Я пишу декстопный софт и хочу сделать себе современный сайт. Сразу скажу, что немного понимаю в PHP и при необходимости могу глубоко разобраться, но времени особо на это нет. Сейчас есть работающий сайт на самописном движке, но там уже очень устаревший фреймворк, и добавлять новый функционал хлопотно. Вот, примеряюсь к Drupal 7.0. Люди, которые знают функциональность модулей, подскажите, можно ли на нем без особого залезания в код реализовать следующий функционал:
1. У пользователя может быть несколько ролей:
- Просто пользователь может скачивать бесплатный софт и общаться на форуме;
- Активисты проекта могут стать модераторами (это, думаю, поддерживает любой форумный движок);
- Бета-тестер получает доступ к бета-версиям программ. Статус тестера можно получить по запросу.
- Потенциальный клиент может выставлять себе счета на выбранный софт. Статус потенциального клиента включается пользователем самостоятельно (т.е. он может перейти в такой статус и ему станут доступны для заполнения поля реквизитов и т.п.). Счет должен выставляться в PDF (речь пока только о безнале). Если клиент счет оплатил, то я вручную это подтверждаю и ему включается период обновления, в течение которого он может загружать платный софт.
2. Репозитарий софта с ограничением доступа в соответствии с ролями пользователей. Статистика загрузок по версиям программ с ведением логов по IP. Тут бы красивые графики не помешали:-) Поддержка через web-service запросов на выход новой версии.
3. Страницы с описанием программ: краткое списком, развернутое, галерея скриншотов.
4. Импорт форума из PHPBB2.
5. Баг-трекер.

Комментарии

Аватар пользователя Softovick Softovick 21 февраля 2011 в 1:12

Если бридж с форумом phpbb2 - то только Drupal 6, если не хотите сами писать для Drupal 7. Насколько мне известно, для Drupal 7 нет ни бриджа, ни импорта еще нормального.

Аватар пользователя Technician Technician 21 февраля 2011 в 1:22

Бридж не нужен. Один раз импортнуть и все.
Но, т.к. в любом случае разбираться с нуля, то лучше уж поучаствовать в развитии 7 версии, чем разбираться с 6-й.

Аватар пользователя Ch Ch 21 февраля 2011 в 6:55

Большинство пунктов можно сделать стандартными модулями.

Quote:
Статистика загрузок по версиям программ с ведением логов по IP. Тут бы красивые графики не помешали:-)

Тут наверно, необходимо будет свой модуль делать.

Quote:
Импорт форума из PHPBB2

Как вариант, делать двойной апдейт PHPBB2 -> D6 -> D7.
Но не факт, что все получится как надо.
Наверно, лучше сделать свой скрипт для импорта, но в этом случае придется я думаю, делать перепаролизацию пользователей (восстановление пароля через e-mail).

Аватар пользователя anperepelkin anperepelkin 21 февраля 2011 в 9:28

в любом случае PHP изучить поглубже или попросить помощи у кого-нибудь .В случае со статистика загрузок по версиям программ с ведением логов по IP, стандартный модуль не подойдет.

Аватар пользователя Technician Technician 21 февраля 2011 в 10:24

Форум, если честно, интересует в последнюю очередь. В крайнем случае, я для переноса и сам скрипт написать смогу. С базами данных много работаю, так что разберусь.

А вот как быть с выставлением счета на юрлицо в PDF? Ubercart надо использовать? Я нашел вот такой модуль: Bank Transfer | Ubercart Payment. Оно?

Ну и хотя бы без графиков, но нужен репозитарий софта с ведением логов загрузок и управлением доступом. Я нашел Download Count, он только под D6, хотя грозятся вроде в "Next up" сделать релиз под D7. Кто-нибудь использовал? Может, есть аналоги?

И что с баг-трекером? Есть ли хотя бы простое что-нибудь с интеграцией в единую систему (чтобы один и тот же юзер и на форуме мог писать, и в баг-трекере?) Что-то не могу найти ничего на эту тему. Можно, конечно, это сделать как ветку форума (у меня сейчас так), но хотелось бы как-то покруче:-)

Аватар пользователя Ch Ch 21 февраля 2011 в 11:17

Quote:
Ubercart надо использовать?

Все модули для организации интернет магазина в 7-ке, пока в альфа/бета статусе...

Quote:
И что с баг-трекером?

project_issue только он тоже только под шестерку. Хотя я думаю можно сделать собственный вариант с помощью views, rules и т.д.

--
Имхо. Для организации такого функционала на сайте придется глубоко курить php и drupal api.
Если делать на 6-ке, то курить придется на порядок меньше.
Если разбираться с этим некогда|неохота, то проще заказать это все.
Поиск специалистов и работы

Аватар пользователя petrovnn petrovnn 10 ноября 2015 в 11:47

У вас слишком специфичный сайт для того чтобы делать его на семерке.

Вы выберете что-нибудь одно: либо писать поменьше кода и поменьше хакать (а это шестерка); либо реально копаться в системе - некоторых модулей под ваш проект нет для семерки даже в _dev версии. Будете собственноручно портировать модули под семерку? Или будете ждать пока кто-то портирует? Если портировать самостоятельно, то это противоречит вашему желанию писать поменьше кода; если ждать, то ждать придется в районе 6 месяцев, а для некоторых модулей возможно и больше.

Дальше - есть нужные вам модули под семерку, но находящиеся в beta, alfa, dev состоянии, а это значит... это значит постоянные патчи для этих модулей из "issue tracker" этих модулей на drupal.org. Иногда, при отходе от типовых решений даже в друпал-6 приходится применять патч для stable-релиза какого-либо модуля. Но повторюсь - это при существенном отклонении от изначально задуманной функциональности модуля. А что говорить про всякие беты и тем более дев. И опять здесь несрасталово с вашим желанием писать поменьше кода.

http://i-novice.net/generiruem-pdf-s-pomoshhyu-tcpdf/
Есть еще одна библиотека, которую мы используем на моей работе, но ссылки щас нет, с работы могу скинуть попозже.

http://drupal.org/project/autoassignrole - автоматическое присвоение ролей основываясь на каких-то системных событиях (сам не юзал, но используют обычно в привязке к карме - когда человек набирает 10 баллов кармы - дать ему роль модератора), возможно чем-то поможет модуль.

http://drupal.org/project/content_access - позволяет установить доступ к одному полю (свойству ноды) на основе ролей. Использовал этот модуль для своих нужд - мне очень помог. Например, если у программы несколько версий (одна бесплатная а другая платная), то можно сделать так: программа это нода с определенным названием. А файлы, это поля у типа контента "программа". Соответственно у бесплатной версии программы права на скачивание есть у всех, а у платной права только у юзеров определенного статуса.

http://drupal.org/project/charts - красивые графики. Не юзал, но вещь серьезная, есть какой-то еще один модуль с графиками.

Аватар пользователя otmoroz otmoroz 21 февраля 2011 в 13:55

все есть и багтрекер (я пока про шестерку) и чарт_апи для графиков и багтрекеры и хелпдески. что уже портировано на семерку - не знаю.

Аватар пользователя petrovnn petrovnn 21 февраля 2011 в 20:53

"Technician" wrote:
Всем спасибо за ответы, особенно petrovnn.

Пожалуйста Smile

Насчет PDF продолжу. Если интересуют самопальные решения, то или ссылка что писал выше или вот:

http://habrahabr.ru/blogs/php/111979/

http://mpdf.bpm1.com/ - скрипт используют программисты на нашей работе. Не все свойства CSS он понимает, о чем можно почитать здесь http://mpdf.bpm1.com/limitations (я верстал пару раз под этот скрипт на работе)

Если больше полагаться на средства друпала, можно попробовать это: http://drupal.org/project/print - сам не пробовал