none
Программно изменить текущий язык пользователя SharePoint 2013 RRS feed

  • Вопрос

  • Добрый день!

    Как я понимаю, в SharePoint 2013 поддержка нескольких языков реализовано так

    1) На уровне семейства узлов подключаются несколько языков.

    2) При входе пользователя на сайт, SharePoint предпочитаемый язык определяет из профиля пользователя.

    Т.е. теперь получается так, чтобы пользователю сменить язык на текущем сайте, нужно зайти себе на профили и сменить порядок предпочитаемых языков.  И после этого перегрузить браузер.

    Но этот вариант, как Вы понимаете не очень нравиться заказчикам. Они хотят функционал смены языка сайта по одному клину на странице.

    Мы поставили на МастерПэйдж функционал, при нажатии на иконку языка, он соответственно в профилях текущего пользователя менять порядок предпочитаемых языков соответствующим образом.

    Но смена языка на сайте не происходит. (скорее всего надо что-то еще сделать, обновить)

    Есть у кого нибудь подробные статьи или уже есть реализованный код, которым он мог бы поделиться?

    Или может быть есть возможность реализовать такой функционал без применения кода? (как на 2010-ом)

     


    • Изменено Bokibayev 12 января 2015 г. 3:55
    12 января 2015 г. 3:54

Ответы

  • Добрый день,

    Утверждение: При входе пользователя на сайт, SharePoint предпочитаемый язык определяет из профиля пользователя -  Неверно!

    SP 2013 определяет текущую локаль пользователя не из профиля, а из настроек IE, следовательно для изменения языка UI необходимо изменять настройки реестра и перезагружать браузер.

    Можно например изменить всем корпоративным пользователям настройки через GPO, но другим (внешним) пользователям придется сделать все вручную. Да, данный функционал в SP 2013 скорее оплошность разработчиков/архитекторов, но ничего не поделать.

    Убеждайте заказчика, что это не баг, а фича такая с авто определением языка пользователя. Другого выхода не вижу.

    • Помечено в качестве ответа Bokibayev 13 января 2015 г. 3:34
    13 января 2015 г. 2:37
  • хотя вот интересная статья с примером
    http://islamkhattab.blogspot.in/2013/04/in-sharepoint-foundation-2010-when.html
    • Помечено в качестве ответа Bokibayev 13 января 2015 г. 3:35
    12 января 2015 г. 11:39

Все ответы

  • Если вы идете таким путем, то нельзя добавить какой то JS для обновления браузера.
    Так как это BIG security issue, так как это связано с изменением ключа рееста

    http://forums.asp.net/t/1298232.aspx

    если вы пользовались статьей https://olafd.wordpress.com/2012/11/02/switch-language-in-sharepoint-2013/

    12 января 2015 г. 11:01
  • хотя вот интересная статья с примером
    http://islamkhattab.blogspot.in/2013/04/in-sharepoint-foundation-2010-when.html
    • Помечено в качестве ответа Bokibayev 13 января 2015 г. 3:35
    12 января 2015 г. 11:39
  • Добрый день,

    Утверждение: При входе пользователя на сайт, SharePoint предпочитаемый язык определяет из профиля пользователя -  Неверно!

    SP 2013 определяет текущую локаль пользователя не из профиля, а из настроек IE, следовательно для изменения языка UI необходимо изменять настройки реестра и перезагружать браузер.

    Можно например изменить всем корпоративным пользователям настройки через GPO, но другим (внешним) пользователям придется сделать все вручную. Да, данный функционал в SP 2013 скорее оплошность разработчиков/архитекторов, но ничего не поделать.

    Убеждайте заказчика, что это не баг, а фича такая с авто определением языка пользователя. Другого выхода не вижу.

    • Помечено в качестве ответа Bokibayev 13 января 2015 г. 3:34
    13 января 2015 г. 2:37
  • SP 2013 определяет текущую локаль пользователя не из профиля, а из настроек IE

    Это очень сильно огорчило. (((((

    Тут возникает вопрос, а это не будет изменено в каких-то фичах или паках.

    Ну пока думаю попробуем использовать куки или что-то в этом роде. и перезаписывать каждый раз Cultury.

    Спасибо за ответы.



    • Изменено Bokibayev 13 января 2015 г. 3:52
    13 января 2015 г. 3:34
  • Если у вас on-premise инсталляция, то можете попробовать такой вариант(но не советую):

    How to create MUI Language Switcher for SharePoint 2013

    13 января 2015 г. 4:00