Настроил автоконфиг для [thunderbird]Thunderbird.
Есть в нем строка:
Сейчас я туда вставляю email адрес пользователя. Но очень хочется туда вставить ФИО пользователя. К примеру, при первом запуске [thunderbird]Thunderbird без проблем их видит.
ВОПРОС:
Что нужно вставить вместо "email" в строку
Чтобы в результате у меня автоматически вставлялось ФИО пользователя в поле и выглядело это вот так:
Отредактировано AlektroNik (31-01-2016 16:44:08)
Отсутствует
Откуда берутся ФИО пользователя? Из 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.
Отсутствует
Все, что я перечитал, а перечитал я не мало, говорило именно о LDAP, но в итоге я наткнулся на то, что LDAP мол больше не поддерживается, как я только не пробывал, у меня ничего не получилось.
Отсутствует
В итоге сделал через переменную для пользователя. В моем случае это как минимум проще чем морочиться веб сервером и скриптами на перле. Кстати тот же совет и на форуме лисяры увидел когда уже своей головой дошел и все сделал
Вот, что в итоге получилось, может кому пригодится:
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)
Отсутствует
После обновления с версии 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)
Отсутствует
ну вы маньки!!! Но рад что так хочется вам и докапываетесь)))
Может ответите мне тогда по вопросу по поиску
https://forum.mozilla-russia.org/viewtopic.php?id=70918
и архивации
https://forum.mozilla-russia.org/viewtopic.php?id=70919
Отсутствует