Эта статья морально устарела :( . Приглашаю продолжить ваше знакомство с Salesforce на нашем Форуме!
Продолжаю свои исследования salesforce communities. После сегодняшних опытов сложилось некоторое впечатление какой-то недоделанности нового функционала (что-то у меня упорно не получалось заставить работать вход в community) и назрел вопрос - "нахрена эти community сделали". Преимущества новых community перед порталами пока не видно. Будем разбираться. Пока community это всего лишь симбиоз портала и сайта. Просто объединили в все в одну кучу.
Итак, продолжим настройку. Как просил нас Salesforce после включения self-registration необходимо настроить контроллер страницы регистрации CommunitiesSelfRegController.cls. Вот эти строчки. Значения в кавычках я уже подставил. На вашем орге значения соответствующих Id будут другими.
String profileId = '00e90000000jatp'; // To be filled in by customer.
String roleEnum = ''; // To be filled in by customer.
String accountId = '0019000000PHgpz'; // To be filled in by customer.
Как получить данные значения: profileId - профиль, который будет присваиваться новым пользователям, которые решатся самостоятельно зарегистрироваться в community. Обещанных профилей и лицензий для communities я так и не увидел, поэтому воспользуемся по старинке стандартным профилем Customer Portal Manager Standard, который клонируем и назовем Community User Test например. Id данного профиля можно взять в адресной строке находясь на странице редактирования профиля. roleEnum - непонятно зачем вообще нужен.
Далее по коду он вообще не используется. accountId - аккаунт, который необходимо создать. Все новые контакты (contact) будут привязываться к данному аккаунту. Id можно аналогично получить из адресной строки находясь на странице редактирования данного аккаунта. !ВАЖНО - у владельца (owner) аккаунта, т.е. у Вас, должна быть указана любая роль в настройках вашего пользователя (user). Еще важный момент в настройке community - не забываем добавить новый профиль в список разрешенных для community.
Создадим Visualforce page, которую будем использовать в качестве Landing page для community. Пока она будет содержать только статический текст - приветствие. Задайте какой-нибудь уникальное имя.
Поправим настройки community чтобы наша страница автоматически открывалась при заходе в community.
Укажем в пункте Active Site Home Page нашу страницу.
При переходе по ссылке на community должна открываться наша страница. Данная страница доступна всем (в том числе незарегистрированным) пользователям и является своего рода лицом вашего community. Адрес /login зарезервирован для стандартной страницы входа в community.
НО я столкнулся с проблемой - данная страница упорно не хотела принимать какие бы то ни было логины и пароли пользователей. В общем войти в community c ее помощью мне не удалось. Будем надеяться что это временный глюк salesforce ( :) да-да такое тоже бывает). А войти в community у меня получилось с помощью старой стандартной страницы SiteLogin (она тоже создается на орге при активации community среди прочих). Просто делаем данную страницу и ее контроллер доступными в настройках community
и переходите по адресу community_base_url/SiteLogin
Видим старую знакомую страницу. Вот она как раз и позволяет нам зайти в community
Извиняюсь, но продолжение будет уже в следующей статье, где я постараюсь привести все настройки к общему виду и сделать небольшой портал в корпоративном стиле основываясь на возможностях salesforce communities.