Полезная информация

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

№115-01-2016 16:39:04

AlektroNik
Участник
 
Группа: Members
Зарегистрирован: 06-05-2010
Сообщений: 7
UA: Chrome 47.0

AutoConfig Thunderbird "mail.identity.id1.fullName"

Настроил автоконфиг для [thunderbird]Thunderbird.
Есть в нем строка:

Выделить код

Код:

defaultPref("mail.identity.id1.fullName", email);

Сейчас я туда вставляю email адрес пользователя. Но очень хочется туда вставить ФИО пользователя. К примеру, при первом запуске [thunderbird]Thunderbird без проблем их видит.
d3b09d7ad2ebc15df5748.png

ВОПРОС:
Что нужно вставить вместо "email" в строку

Выделить код

Код:

defaultPref("mail.identity.id1.fullName", email);

Чтобы в результате у меня автоматически вставлялось ФИО пользователя в поле и выглядело это вот так:
3ac8d82fc85af51462831.png

Отредактировано AlektroNik (31-01-2016 16:44:08)

Отсутствует

 

№231-01-2016 15:30:35

Unghost
Призрак-админ
 
Группа: Administrators
Откуда: Moscow, Russia
Зарегистрирован: 08-10-2004
Сообщений: 11771
UA: Firefox 47.0

Re: AutoConfig Thunderbird "mail.identity.id1.fullName"

Откуда берутся ФИО пользователя? Из LDAP?

https://www.opennet.ru/docs/RUS/mozilla … zConfig.pm
http://forum.lissyara.su/viewtopic.php?t=10802
https://developer.mozilla.org/en-US/doc … AutoConfig

Там используют:
lockPref("mail.identity.id1.fullName", utf8(cn));
либо
lockPref("mail.identity.id1.fullName", cn);


Do not meddle in the affairs of Wizards, for they are subtle and quick to anger.

Отсутствует

 

№331-01-2016 16:43:15

AlektroNik
Участник
 
Группа: Members
Зарегистрирован: 06-05-2010
Сообщений: 7
UA: Chrome 48.0

Re: AutoConfig Thunderbird "mail.identity.id1.fullName"

Все, что я перечитал, а перечитал я не мало, говорило именно о LDAP, но в итоге я наткнулся на то, что LDAP мол больше не поддерживается, как я только не пробывал, у меня ничего не получилось.

Отсутствует

 

№403-02-2016 14:07:53

AlektroNik
Участник
 
Группа: Members
Зарегистрирован: 06-05-2010
Сообщений: 7
UA: Chrome 48.0

Re: AutoConfig Thunderbird "mail.identity.id1.fullName"

В итоге сделал через переменную для пользователя. В моем случае это как минимум проще чем морочиться веб сервером и скриптами на перле. Кстати тот же совет и на форуме лисяры увидел когда уже своей головой дошел и все сделал :)

Вот, что в итоге получилось, может кому пригодится:

1. Создал групповую политику и добавил для ПОЛЬЗОВАТЕЛЯ скрипт Автоматического входа:

Выделить код

Код:

Конфигурация пользователя (включено)\Политики\Конфигурация Windows\Сценарии\Вход в систему\Порядок сценариев для данного объекта групповой политики:
\\domain.local\SysVol\domain.local\scripts\FULLNAME\FULLNAME.cmd

Содержимое FULLNAME.cmd (напоминаю про нюанс с процентами, если вы хотите запустить cmd и просто выполнить код, выдаст ошибку, для этого нужно заменить двойные проценты "%%" на одинарные "%". НО В САМОМ ФАЙЛЕ СКРИПТА ОБЯЗАТЕЛЬНЫ ДВОЙНЫЕ):

Выделить код

Код:

for /f "Tokens=2*" %%m in ('net user %USERNAME% /domain ^| find "Полное имя"' ) do setx FULLNAME "%%n"

Нюансом переменной является тот факт, что применяется она только при втором входе в систему для пользователя.Но это не критично, просто пусть оно Вас не пугает. Судя по описанию никакими средствами типо setenv.exe и добавлением в HKEY_USERS\.DEFAULT\Environment этого сделать нельзя. setenv - надо во-первых скачать, а во-вторых, судя по описанию, скорей всего тоже будет работать только со второго входа. Добавления в ветку реестра профиля по умолчанию не подходит, т. к. в переменную сам код запихнуть не имеет смысла, нужен готовый результат. А готовый результат не известен до тех пор пока пользователь не зайдет.

2. Добавил в thunderbird.cfg следующие строки:

Выделить код

Код:

function utf8 (text) {

        var decoded_text;
        var first_byte,second_byte, first_byte_decoded, second_byte_decoded;

        decoded_text = "";
        for(var pos = 0; pos < text.length; pos++) {
            var c = text.charCodeAt(pos);
            if (c > 128) {
                first_byte = parseInt(c/256);
                second_byte = c % 256;
                first_byte_decoded = 192 + first_byte * 4 +
                    parseInt(second_byte/64);
                second_byte_decoded = 128 + second_byte % 64;
                decoded_text =decoded_text +
                    String.fromCharCode(first_byte_decoded) +
                    String.fromCharCode(second_byte_decoded);
            } else {
                decoded_text = decoded_text + String.fromCharCode(c);
            }
        }
        return decoded_text;
        }
        
        var fullname = getenv("FULLNAME");

        defaultPref("mail.identity.id1.fullName", utf8(fullname));

Функция utf8 для перекодирования символов иначе буду крякозябры вместо русского язык.
Переменная fullname, которая берет информацию из одноименной переменно в Windows. При первом входе ФИО будет отсутствовать и Thunderbird запустится без проблем, что переменная пустая, а при втором входе без проблем ее подставит, если конечно пользователь не впишет свое.

Отредактировано AlektroNik (03-02-2016 15:18:31)

Отсутствует

 

№518-11-2016 16:39:38

AlektroNik
Участник
 
Группа: Members
Зарегистрирован: 06-05-2010
Сообщений: 7
UA: Yandex 16

Re: AutoConfig Thunderbird "mail.identity.id1.fullName"

После обновления с версии Thunderbird 38.5.1 на 45.4.0 перестала отрабатывать функция конвертации переменной определенной в windows в переменную javascript опеределенную в автоконфиге thunderbird.cfg. Точнее в поле "Имя отправителя" появились кракозябры.

Скрин - http://www.cyberforum.ru/attachments/760922d1479392436

Как выяснилось с помощью уважаемого Dragokas функцию судя по всему встроили в новые версии и теперь ее из конфига можно убрать.
Заодно изменил название переменной, чтобы не пересекалась с переменно Windows.


БЫЛО

Выделить код

Код:

function utf8 (text) {
 
        var decoded_text;
        var first_byte,second_byte, first_byte_decoded, second_byte_decoded;
 
        decoded_text = "";
        for(var pos = 0; pos < text.length; pos++) {
            var c = text.charCodeAt(pos);
            if (c > 128) {
                first_byte = parseInt(c/256);
                second_byte = c % 256;
                first_byte_decoded = 192 + first_byte * 4 +
                    parseInt(second_byte/64);
                second_byte_decoded = 128 + second_byte % 64;
                decoded_text =decoded_text +
                    String.fromCharCode(first_byte_decoded) +
                    String.fromCharCode(second_byte_decoded);
            } else {
                decoded_text = decoded_text + String.fromCharCode(c);
            }
        }
        return decoded_text;
        }
 
var fullname = getenv("FULLNAME");
 
defaultPref("mail.identity.id1.fullName", utf8(fullname));

СТАЛО

Выделить код

Код:

var fullname_thunderbird = getenv("FULLNAME");
 
defaultPref("mail.identity.id1.fullName", fullname_thunderbird);

Полную переписку можно почитать тут http://www.cyberforum.ru/cmd-bat/thread1856293.html

Отредактировано AlektroNik (21-11-2016 16:36:39)

Отсутствует

 

№620-11-2016 08:36:25

Vector_om
Участник
 
Группа: Members
Зарегистрирован: 28-10-2016
Сообщений: 493
UA: Chrome 54.0
Веб-сайт

Re: AutoConfig Thunderbird "mail.identity.id1.fullName"

:o ну вы маньки!!! Но рад что так хочется вам и докапываетесь)))
Может ответите мне тогда по вопросу по поиску
https://forum.mozilla-russia.org/viewtopic.php?id=70918
и архивации
https://forum.mozilla-russia.org/viewtopic.php?id=70919

:blush:

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]