Эх джедаи). А у меня вот так работает:
1. На каждой страничке есть в заголовке HTML
wdbn:=@WebDbName;
libversion:=@GetProfileField("Configuration_Profile";"cssjsversion");
gzip:=@If(@Middle(HTTP_Cookie;"onimod_gzip=";";")="1";@True;@False);
filesystem:=@If(@Middle(HTTP_Cookie;DBID+"_filesystem=";";")="1";@True;@False);
commonlibpath:=@If(filesystem;@If(gzip;"/gzip/common.js?Open";"/common.js?Open");@If(gzip;"/"+wdbn+"/gzipcommon.js?OpenFileResource";"/"+wdbn+"/common.js?OpenJavascriptLibrary"))+
"&ExpandSection="+libversion;
base:="http"+@If(HTTPS="OFF"; ""; "s")+"://" + Server_Name;
common:="<script src=\""+base+commonlibpath+"\"></script>";
На вебе выглядит так
<script src=".....nsf/common.js?OpenJavascriptLibrary&ExpandSection=120"></script>
2. В заголовке каждой страницы JS
_doSkin();
3. В либе common.js
Код:
//Skin managed browser side so we can cache better
function _doSkin() {
var tmp_skin=_doExtractCookie('skin') ; if(tmp_skin==null) {tmp_skin='Default'}
var tmp_lang=_doExtractCookie('lang') ; if (tmp_lang=='' | tmp_lang==null | tmp_lang=='null') {tmp_lang='ru'}
//set variables
document.write('<script>var onimod_ui=\''+_doExtractCookie('ui')+'\'</script>');
document.write('<script>var onimod_skin=\''+tmp_skin+'\'</script>');
//then load css and html from skin
var tmp_cssjsversion = '&ExpandSection='+onimod_cssjsversion;
if (onimod_httpfilesystemmode=='YES') {
var tmp_libcommand='?Open';
var tmp_libprefix='';
if (_doExtractCookie('gzip')=='1') {var tmp_libpath='domBulletin/gzip'} else {var tmp_libpath='domBulletin'}}
else {
var tmp_libpath=onimod_webdbname;
if (_doExtractCookie('gzip')=='1') {var tmp_libcommand='?OpenFileResource';var tmp_libprefix='gzip'} else {var tmp_libcommand='?OpenJavascriptLibrary';var tmp_libprefix=''}
}
document.write('<script language="JavaScript" src="/'+ tmp_libpath+'/'+tmp_libprefix+'language_ressources_'+tmp_lang+'.js'+tmp_libcommand+tmp_cssjsversion+'"&charset="UTF-8"><\/script>');
document.write('<script language="JavaScript" src="/'+ tmp_libpath+'/'+tmp_libprefix+'footer.js'+tmp_libcommand+tmp_cssjsversion+'"&charset="UTF-8"><\/SCRIPT>');
document.write('<link rel="stylesheet" type="text/css" href="/'+onimod_webdbname+'/Skins/'+tmp_skin+'?OpenDocument&Expand=CSS'+tmp_cssjsversion+'">');
document.write('<script language="JavaScript" src="/'+onimod_webdbname+'/Skins/'+tmp_skin+'?OpenDocument&Expand=HTMLAfter'+tmp_cssjsversion+'"><\/script>')
}
4. В доке по форме Skin есть поле CSS, в которое пишется сам скин и переключается Enable Disable.
То есть вначале на странице грузится common.js, из которого по функции _doSkin() достается док-страница из базы с активным CSS и применяется по ?OpenDocument&Expand=CSS. По кукам юзер может выбрать тот скин и тот язык, который ему нравится. Xpage идут лесом.
Жуть!

)))))))))
Хотя достаточно обычной страницы с CSS, подключаемой в Head.
Ссылка скрыта от гостей
. Гугл вам наговорит еще...