Use user-specified css/js if logged in
authorGabriel Wicke <gwicke@users.mediawiki.org>
Wed, 28 Apr 2004 19:43:28 +0000 (19:43 +0000)
committerGabriel Wicke <gwicke@users.mediawiki.org>
Wed, 28 Apr 2004 19:43:28 +0000 (19:43 +0000)
* url is User:Myname/skinname.css and .js

includes/SkinPHPTal.php
templates/xhtml_slim.pt

index 400222e..3f279b1 100644 (file)
@@ -71,6 +71,8 @@
                        $this->loggedin = $wgUser->getID() != 0;
                        $this->username = $wgUser->getName();
                        $this->userpage = $wgLang->getNsText( Namespace::getUser() ) . ":" . $wgUser->getName();
+                       $this->userpageurl = $this->makeUrl($this->userpage);
+                       $this->userpageurle = htmlspecialchars($this->$this->userpageurl);
                        $this->titletxt = $wgTitle->getPrefixedText();
                        
                        $this->initPage( $out );
                        $tpl->set( "langname", $wgLang->getLanguageName( $wgLanguageCode ) );
                        $tpl->setRef( "username", &$this->username );
                        $tpl->setRef( "userpage", &$this->userpage);
+                       $tpl->setRef( "userpageurl", &$this->userpageurl);
+                       $tpl->setRef( "userpageurle", &$this->userpageurle);
                        if( $wgUser->getNewtalk() ) {
                                $usertitle = Title::newFromText( $this->userpage );
                                $usertalktitle = $usertitle->getTalkPage();
                        if ($this->loggedin) {
                                $personal_urls['userpage'] = array(
                                        'text' => $this->username,
-                                       'href' => $this->makeUrl($this->userpage),
+                                       'href' => &$this->userpageurl,
                                        'ttip' => wfMsg('tooltip-userpage'),
                                        'akey' => wfMsg('accesskey-userpage')
                                );
index d0d1c9d..86d0a5c 100644 (file)
@@ -6,13 +6,7 @@
        ${headlinks}
     <title tal:content="pagetitle">Exciting xhtml slimfast</title>
 
-    <style type="text/css" media="screen">
-      /*<![CDATA[*/
-      @import url(${stylepath}/${skinname}/main.css);
-      /* custom css, could be either a pref or a subpage of the the user page */
-      /* @import url(${stylepath}/custom.css); */
-      /*]]>*/
-    </style>
+    <style type="text/css" media="screen">/*<![CDATA[*/ @import url(${stylepath}/${skinname}/main.css); /*]]>*/</style>
     <link rel="stylesheet" type="text/css" media="print" href="${stylepath}/commonPrint.css" />
     <!--[if IE]><style type="text/css" media="all">@import url(${stylepath}/${skinname}/IEFixes.css);</style>
     <script type="text/javascript" src="${stylepath}/IEFixes.js"></script>
     <script type="text/javascript" src="${stylepath}/wikibits.js"></script>
     <script type="text/javascript"> /*<![CDATA[*/ if(addcss){addcss('${stylepath}/${skinname}/');} /*]]>*/</script>
     <style tal:condition="rtl" type="text/css">/*<![CDATA[*/@import url(${stylepath}/${skinname}/rtl.css);/*]]>*/</style>
+    <!-- user styles and js if logged in -->
+    <style tal:condition="loggedin" type="text/css">/*<![CDATA[*/
+      @import url(${userpageurle}/${skinname}.css?action=raw&ctype=text/css); /*]]>*/</style>
+    <script tal:condition="loggedin" type="text/javascript" 
+      tal:attributes="src string:${userpageurle}/${skinname}.js?action=raw&ctype=text/javascript"></script>
   </head>
 
   <body tal:attributes="ondblclick body-ondblclick|default">