Sugarcrm magento общий логин - PullRequest
       5

Sugarcrm magento общий логин

2 голосов
/ 05 февраля 2011

Я интегрирую SugarCRM и Magento.Мое требование заключается в том, что, когда я нажимаю на ссылку в SugarCRM, она должна перенаправить на создание заказа панели администратора Magento.Более того, когда я перенаправляю в Magento, он не должен спрашивать у меня логин.

Как я могу это сделать?

Ответы [ 2 ]

4 голосов
/ 05 февраля 2011

Простой вход в Sugar довольно прост.Ниже приведен пример, который создает ссылку в обход входа Sugar.Когда вы входите в Magento, вы можете войти в Sugar и сохранить переменную сеанса Sugar в переменной сеанса сервера или в глобальной переменной.Вот формат URL-адреса SugarCRM

'http://localhost:8080/XXX/index.php?module=Accounts&action=DetailView&record=927e722c-0d8a-e6b1-c590-4c9bb6c4e34b$MSID

  1. http://localhost:8080/XXX/index.php - URL-адрес
  2. module = Accounts (Имя модуля, на которое вы хотите связать
  3. action = DetailView (Вы можете перейти к DetailView или EditView)
  4. record = 927e722c-0d8a-e6b1-c590-4c9bb6c4e34b (номер записи идентификатора сахара)
  5. MSID = 3979359348(Переменная сеанса, полученная после бесшовного входа в систему)

Вам необходимо расширить Magento, чтобы добавить эту информацию в ссылку. Если вы сохраните MSID в переменной сеанса, то вы всегда можете добавить $ _SESSION ['MSID'] по URL

$user_name="admin";
$user_password="admin";


$soapClient = new SoapClient(NULL,
array(
"location" => 'http://localhost:8080/XXX/soap.php',
"uri" => 'http://localhost:8080/XXX',
)
);

try {
    $info = $soapClient->login(
    array(
    'user_name' => $user_name,
    'password'  => md5($user_password),
    )
    );
}
catch (SoapFault $fault) {
    die("Sorry, the service returned the following ERROR: ".$fault->faultcode."-".$fault->faultstring.".");
}

$session = $info->id;

$canlogin = $soapClient->seamless_login($session);
$MSID='';
if ($canlogin == 1)
$MSID =  "&MSID=" . $session;





//echo "Successful Login! Session ID {$session}<br>";

echo "<a href='http://localhost:8080/XXX/index.php?module=Accounts&action=DetailView&record=927e722c-0d8a-e6b1-c590-4c9bb6c4e34b$MSID'>Account Name</a>";

Kaz

0 голосов
/ 05 февраля 2011

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

...