Concrete5 5.6/7 программно добавляет пользовательские и обогащающие атрибуты

Каков наилучший способ обогащения атрибутов пользователя c5.

У меня есть таблица не C5 с информацией о пользователях, эта информация была создана на старой cms (не c5), и сейчас я создаю новый сайт с c5, хотел бы знать лучший подход к миграции пользователей.

Хорошо ли использовать SQL-запрос или использовать php-скрипт для обогащения, я уже создал пользователей в c5 и вручную добавил адреса электронной почты для «точки привязки» для последующего обогащения.

Был бы очень рад, если бы кто-нибудь рассказал или мог бы привести несколько примеров.


person Bomberis123    schedule 05.07.2015    source источник


Ответы (1)


наконец, управляется мной, это довольно просто: я экспортировал внешних пользователей в массив php и использовал пользовательские функции c5 для добавления пользователей и после их обогащения мой пример:

$external_users = array({
array('id'=>'1', 'name'='JON', 'email'=>'[email protected]', 'last_name'=>'DOE', 'attr1'=>'smthing', 'attr2'=>'123'),
array(...), ...
});

foreach($external_users as $singleUser_data){
$email = $singleUser_data['email'];
$ui = UserInfo::getByEmail($email);

    if (!is_null($ui)) {
        // Email is already in use, so let's not create the user
        return;
    }

    $userData['uName'] = $singleUser_data['name']." ".$singleUser_data['lastname'];

//users later need to reset password
        $userData['uPassword'] = 'asd52465465456454asd';
        $userData['uPasswordConfirm'] = 'asd52465465456454asd';


     //user registererd
    $ui = UserInfo::register($userData);

    set_new_user_group($ui);
enrichAtributes($ui, $singleUser_data);
        }

function set_new_user_group($ui){
   // assign the new user to a group
    $g = Group::getByName('GroupName');
    $u = $ui->getUserObject();
    $u->enterGroup($g);
}

function enrichAtributes($ui, $singleUser_data){

$ui->setAttribute('atr_handler1', $singleUser_data['attr1']);
    $ui->setAttribute('atr_handler2', $singleUser_data['attr2']);
}

Ресурс: программная регистрация пользователей и группа настроек

Документация с информацией о пользователе (установка атрибутов)

person Bomberis123    schedule 10.07.2015