Ticket #62: multi.patch

File multi.patch, 37.3 KB (added by mauser, 4 years ago)

fixes #62, #65, #116 and adds german translations

  • plugins/SitesManager/templates/SitesManager.js

     
    108108                        var idRow = $(this).attr('id'); 
    109109                        var nameToDelete = $(this).parent().parent().find('#siteName').html(); 
    110110                        var idsiteToDelete = $(this).parent().parent().find('#idSite').html(); 
    111                         if(confirm(sprintf(_pk_translate('SitesManager_DeleteConfirm','Are you sure you want to delete the website %s'),'"'+nameToDelete+'" (idSite = '+idsiteToDelete+')')) ) 
     111                        if(confirm(sprintf(_pk_translate('SitesManager_DeleteConfirm'),'"'+nameToDelete+'" (idSite = '+idsiteToDelete+')')) ) 
    112112                        { 
    113113                                $.ajax( getDeleteSiteAJAX( idsiteToDelete ) ); 
    114114                        } 
  • plugins/Feedback/index.tpl

     
     1{literal} 
     2<style> 
     3input, textarea, p { 
     4        font-family: Georgia,"Trebuchet MS", Verdana, Arial, Helvetica, sans-serif; 
     5        font-size:0.9em; 
     6} 
     7</style> 
     8{/literal} 
     9 
    110<form method="post" action="?module=Feedback&action=sendFeedback"> 
    211 
    3 <p><strong>Your name:</strong> 
    4 <br /><input type="text" name="name" size="50" /></p> 
    5  
    612<p><strong>Your e-mail:</strong> 
    7 <br /><input type="text" name="email" size="50" /></p> 
     13<br /><input type="text" name="email" size="40" /></p> 
    814 
    9 <p><strong>Choose category:</strong> 
    10 <br /><select name="category"> 
    11         <option value="bug">Bug report</option> 
    12         <option value="feature">Feature missing</option> 
    13 </select> 
    14 </p> 
    15  
    16 <p><strong>Topic:</strong> 
    17 <br /><input type="text" name="topic" size="50" /></p> 
    18  
    1915<p><strong>Body:</strong> 
    20 <br /><textarea name="body" cols="50" rows="15"></textarea></p> 
     16<br /><textarea name="body" cols="40" rows="15"></textarea></p> 
    2117 
    2218<p><input type="submit" value="Send feedback" /> 
    2319 
  • plugins/Feedback/sent.tpl

     
    1 <p>A mail was sent to Piwik developers</p> 
    2  
    3 <p><strong>Thank you for your feedback.</strong><br /> - Piwik Team</p> 
     1{if $ErrorString} 
     2        <strong>{'General_Error'|translate}</strong>: {$ErrorString}<br /> 
     3        Please contact team at hello@piwik.org 
     4{else} 
     5        <p>A mail was sent to Piwik developers</p> 
     6        <p><strong>Thank you for your feedback.</strong><br /> - Piwik Team</p>  
     7{/if} 
     8 
  • plugins/Feedback/Controller.php

     
    3131        { 
    3232                // TODO: require user login or captcha if anonymous              
    3333                 
    34                 $name = Piwik_Common::getRequestVar('name', '', 'string'); 
    35                 $topic = Piwik_Common::getRequestVar('topic', '', 'string'); 
    3634                $body = Piwik_Common::getRequestVar('body', '', 'string'); 
    37                 $email = Piwik_Common::getRequestVar('email', '', 'string'); 
    38                 $category = Piwik_Common::getRequestVar('category', '', 'string'); 
     35                $email = Piwik_Common::getRequestVar('email', '', 'string'); 
     36 
     37                 
     38                $view = new Piwik_View('Feedback/sent.tpl'); 
     39                 
     40                try  
     41                { 
     42                        $mail = new Piwik_Mail(); 
     43                        $mail->setFrom($email); 
     44                        $mail->addTo('hello@piwik.org','Piwik Team'); 
     45                        $mail->setSubject('[feedback form]'); 
     46                        $mail->setBodyText($body); 
     47                        $mail->send(); 
     48                } 
     49                catch(Exception $e) 
     50                { 
     51                        $view->ErrorString = $e->getMessage(); 
     52                } 
    3953                 
    40                 $mail = new Piwik_Mail(); 
    41                 $mail->setFrom($email, $name); 
    42                 $mail->addTo('hello@piwik.org','Piwik Team'); 
    43                 $mail->setSubject('[feedback:'.$category.'] '.$topic); 
    44                 $mail->setBodyText($body); 
    45                 $mail->send(); 
    46                  
    47                 $view = new Piwik_View('Feedback/sent.tpl');                     
    4854                echo $view->render(); 
    4955        } 
    5056} 
  • plugins/Dashboard/templates/Dashboard.js

     
    143143                                                //format the div for upcomming ajax loading and set a temporary content 
    144144                                                $(this) .attr('plugin', plugin) 
    145145                                                                .attr('id', action) 
    146                                                                 .html('<div id="previewLoading"><img src="themes/default/loading.gif" />'+ _pk_translate('Dashboard_LoadingPreview','Loading preview, please wait...') +'</div>').show(); 
     146                                                                .html('<div id="previewLoading"><img src="themes/default/loading.gif" />'+ _pk_translate('Dashboard_LoadingPreview') +'</div>').show(); 
    147147                                                self.dashboard.ajaxLoading(plugin, action); 
    148148                                        } 
    149149                                }); 
     
    193193                        if(contains(widgets, plugin+'.'+action)) 
    194194                        { 
    195195                                $(this).addClass('menuDisabled'); 
    196                                 $(this).attr('title', _pk_translate('Dashboard_TitleWidgetInDashboard','Widget already in dashboard')); 
     196                                $(this).attr('title', _pk_translate('Dashboard_TitleWidgetInDashboard')); 
    197197                        } 
    198198                        else 
    199199                        { 
    200200                                $(this).removeClass('menuDisabled'); 
    201                                 $(this).attr('title', _pk_translate('Dashboard_TitleClickToAdd','Click to add to dashboard')); 
     201                                $(this).attr('title', _pk_translate('Dashboard_TitleClickToAdd')); 
    202202                        } 
    203203                }); 
    204204        }, 
     
    328328                if(typeof onTop == "undefined") 
    329329                        onTop = false; 
    330330                 
    331                 var item = '<div class="items"><div class="widget"><div class="widgetLoading">'+ _pk_translate('Dashboard_LoadingWidget','Loading widget, please wait...') +'</div><div plugin="'+plugin+'"'+' id="'+action+'" class="widgetDiv"></div></div></div>'; 
     331                var item = '<div class="items"><div class="widget"><div class="widgetLoading">'+ _pk_translate('Dashboard_LoadingWidget') +'</div><div plugin="'+plugin+'"'+' id="'+action+'" class="widgetDiv"></div></div></div>'; 
    332332         
    333333                if(onTop) 
    334334                { 
     
    375375        { 
    376376                var self = this; 
    377377                 
    378                 var title = _pk_translate('Dashboard_WidgetNotFound','Widget not found'); 
     378                var title = _pk_translate('Dashboard_WidgetNotFound'); 
    379379                var widgets = piwik.availableWidgets[plugin]; 
    380380                for(var i in widgets) 
    381381                { 
  • plugins/Home/templates/links_misc_modules.tpl

     
    44<a href='?module=AdminHome'>Admin</a></li> | 
    55<a href='?module=API&action=listAllAPI'><b>API </b></a> |  
    66<a href='?module=Widgetize'>Widgets</li></a> | 
    7 <a href='?module=Feedback&action=index&keepThis=true&TB_iframe=true&height=550&width=400' title="Send us feedback" class="thickbox">Send us feedback</a> 
    8 </span> 
    9  No newline at end of file 
     7<a href='?module=Feedback&action=index&keepThis=true&TB_iframe=true&height=400&width=400' title="Send us feedback" class="thickbox">Send us feedback</a> 
     8</span> 
  • plugins/Home/templates/datatable.js

     
    268268                                        { 
    269269                                                if(Number(self.param.filter_excludelowpop) != 0) 
    270270                                                { 
    271                                                         string = _pk_translate('Home_IncludeAllPopulation','Include all population'); 
     271                                                        string = _pk_translate('Home_IncludeAllPopulation'); 
    272272                                                } 
    273273                                                else 
    274274                                                { 
    275                                                         string = _pk_translate('Home_ExcludeLowPopulation','Exclude low population'); 
     275                                                        string = _pk_translate('Home_ExcludeLowPopulation'); 
    276276                                                } 
    277277                                                $(this).html(string); 
    278278                                        }  
     
    410410                                        // only show this string if there is some rows in the datatable 
    411411                                        if(totalRows != 0) 
    412412                                        { 
    413                                                 var str = sprintf(_pk_translate('Home_PageOf','%s of %s'),offset + '-' + offsetEndDisp,totalRows); 
     413                                                var str = sprintf(_pk_translate('Home_PageOf'),offset + '-' + offsetEndDisp,totalRows); 
    414414                                                $(this).text(str); 
    415415                                        } 
    416416                                } 
     
    618618                                        <tr>\ 
    619619                                                <td colspan="'+numberOfColumns+'" class="cellSubDataTable">\ 
    620620                                                        <div id="'+divIdToReplaceWithSubTable+'">\ 
    621                                                                 <span id="loadingDataTable" style="display:inline"><img src="themes/default/images/loading-blue.gif" />'+ _pk_translate('Home_Loading','Loading...') +'</span>\ 
     621                                                                <span id="loadingDataTable" style="display:inline"><img src="themes/default/images/loading-blue.gif" />'+ _pk_translate('Home_Loading') +'</span>\ 
    622622                                                        </div>\ 
    623623                                                </td>\ 
    624624                                        </tr>\ 
  • plugins/UsersManager/templates/UsersManager.js

     
    222222                        ajaxHideError(); 
    223223                        var idRow = $(this).attr('id'); 
    224224                        var loginToDelete = $(this).parent().parent().find('#userLogin').html(); 
    225                         if( confirm(sprintf(_pk_translate('UsersManager_DeleteConfirm','Are you sure you want to delete the user %s'),'"'+loginToDelete+'"')) ) 
     225                        if( confirm(sprintf(_pk_translate('UsersManager_DeleteConfirm'),'"'+loginToDelete+'"')) ) 
    226226                        { 
    227227                                $.ajax( getDeleteUserAJAX( loginToDelete ) ); 
    228228                        } 
  • plugins/VisitsSummary/sparklines.tpl

     
    11<div id="to remove this div" class="parentDiv"> 
    2 <img class="sparkline" src="{$urlSparklineNbVisits}" /> <span>{'VisitsSummary_NbVisits'|translate:"<strong>$nbVisits</strong>"}</span></p> 
    3 <img class="sparkline" src="{$urlSparklineNbUniqVisitors}" /> <span>{'VisitsSummary_NbUniqueVisitors'|translate:"<strong>$nbUniqVisitors</strong>"}</span></p> 
    4 <img class="sparkline" src="{$urlSparklineNbActions}" /> <span>{'VisitsSummary_NbActions'|translate:"<strong>$nbActions</strong>"}</span></p> 
    5 <img class="sparkline" src="{$urlSparklineSumVisitLength}" /> <span>{assign var=sumtimeVisitLength value=$sumVisitLength|sumtime} {'VisitsSummary_TotalTime'|translate:"<strong>$sumtimeVisitLength</strong>"}</span></p> 
    6 <img class="sparkline" src="{$urlSparklineMaxActions}" /> <span>{'VisitsSummary_MaxNbActions'|translate:"<strong>$maxActions</strong>"}</span></p> 
    7 <img class="sparkline" src="{$urlSparklineBounceCount}" /> <span>{'VisitsSummary_NbBounced'|translate:"<strong>$bounceCount</strong>"}</span></p> 
    8 </div> 
    9  No newline at end of file 
     2<p><img class="sparkline" src="{$urlSparklineNbVisits}" /> <span>{'VisitsSummary_NbVisits'|translate:"<strong>$nbVisits</strong>"}</span></p> 
     3<p><img class="sparkline" src="{$urlSparklineNbUniqVisitors}" /> <span>{'VisitsSummary_NbUniqueVisitors'|translate:"<strong>$nbUniqVisitors</strong>"}</span></p> 
     4<p><img class="sparkline" src="{$urlSparklineNbActions}" /> <span>{'VisitsSummary_NbActions'|translate:"<strong>$nbActions</strong>"}</span></p> 
     5<p><img class="sparkline" src="{$urlSparklineSumVisitLength}" /> <span>{assign var=sumtimeVisitLength value=$sumVisitLength|sumtime} {'VisitsSummary_TotalTime'|translate:"<strong>$sumtimeVisitLength</strong>"}</span></p> 
     6<p><img class="sparkline" src="{$urlSparklineMaxActions}" /> <span>{'VisitsSummary_MaxNbActions'|translate:"<strong>$maxActions</strong>"}</span></p> 
     7<p><img class="sparkline" src="{$urlSparklineBounceCount}" /> <span>{'VisitsSummary_NbBounced'|translate:"<strong>$bounceCount</strong>"}</span></p> 
     8</div> 
  • plugins/Login/lang/en.php

     
    1414         
    1515        'Login_MailTopicPasswordRecovery' => 'Password recovery', 
    1616        'Login_MailBodyPasswordRecovery' => "Hi %1s,\n\nYour new password is: %2s\n\nYou can login now at: %3s", 
    17         'Login_PasswordSent' => 'Password has been just sent. Check your e-mail.' 
     17        'Login_PasswordSent' => 'Password has been just sent. Check your e-mail.', 
     18        'Login_ContactAdmin' => 'Please contact with site administrator.' 
    1819); 
  • plugins/Login/Controller.php

     
    107107                         
    108108                        // if user exists 
    109109                        if( $user != null ) 
    110                         { 
     110                        { 
     111                                $view = new Piwik_View('Login/templates/passwordsent.tpl'); 
     112                                                         
    111113                                $login = $user['login']; 
    112114                                $email = $user['email']; 
    113115                                                         
     
    116118                                Piwik_UsersManager_API::updateUser($login, $randomPassword); 
    117119 
    118120                                // send email with new password 
    119                                 $mail = new Piwik_Mail();                                
    120                                 $mail->addTo($email, $login); 
    121                                 $mail->setSubject(Piwik_Translate('Login_MailTopicPasswordRecovery'));                           
    122                                 $mail->setBodyText(sprintf(Piwik_Translate('Login_MailBodyPasswordRecovery'), 
    123                                         $login, $randomPassword, Piwik_Url::getCurrentUrlWithoutQueryString()));                                 
    124                                 $mail->send(); 
    125                                                  
    126                                 $view = new Piwik_View('Login/templates/passwordsent.tpl'); 
     121                                try  
     122                                { 
     123                                        $mail = new Piwik_Mail();                                
     124                                        $mail->addTo($email, $login); 
     125                                        $mail->setSubject(Piwik_Translate('Login_MailTopicPasswordRecovery'));                           
     126                                        $mail->setBodyText(sprintf(Piwik_Translate('Login_MailBodyPasswordRecovery'), 
     127                                                $login, $randomPassword, Piwik_Url::getCurrentUrlWithoutQueryString()));                                 
     128                                        $mail->send(); 
     129                                } 
     130                                catch(Exception $e) 
     131                                { 
     132                                        $view->ErrorString = $e->getMessage(); 
     133                                } 
     134 
    127135                                $view->linkTitle = Piwik::getRandomTitle(); 
    128136                                $view->urlToRedirect = $urlToRedirect; 
    129137                                echo $view->render(); 
  • plugins/Login/templates/lostpassword.tpl

     
    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    2 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr"> 
    3 <head> 
    4         <title>Piwik &rsaquo; Lost password</title> 
    5         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    6          
    7         {literal} 
    8         <script type="text/javascript"> 
    9                 function focusit() { 
    10                         document.getElementById('form_login').focus(); 
    11                 } 
    12                 window.onload = focusit; 
    13         </script> 
    14         {/literal} 
    15 <link rel="stylesheet" href="plugins/Login/templates/login.css"> 
    16 </head> 
     1{include file="Login/templates/header.tpl"} 
    172 
    18 <body class="login"> 
    19 <!-- shamelessly taken from wordpress 2.5 - thank you guys!!! --> 
    20  
    21 <div id="logo"> 
    22         <a href="http://piwik.org" title="{$linkTitle}"><span class="h1">Piwik <span class="description"># open source web analytics</span></span></a> 
    23 </div> 
    24  
    253<div id="login"> 
    264 
    275{if $form_data.errors} 
  • plugins/Login/templates/login.tpl

     
    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    2 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr"> 
    3 <head> 
    4         <title>Piwik &rsaquo; Login</title> 
    5         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    6          
    7         {literal} 
    8         <script type="text/javascript"> 
    9                 function focusit() { 
    10                         document.getElementById('form_login').focus(); 
    11                 } 
    12                 window.onload = focusit; 
    13         </script> 
    14         {/literal} 
    15 <link rel="stylesheet" href="plugins/Login/templates/login.css"> 
    16 </head> 
     1{include file="Login/templates/header.tpl"} 
    172 
    18 <body class="login"> 
    19 <!-- shamelessly taken from wordpress 2.5 - thank you guys!!! --> 
    20  
    21 <div id="logo"> 
    22         <a href="http://piwik.org" title="{$linkTitle}"><span class="h1">Piwik <span class="description"># open source web analytics</span></span></a> 
    23 </div> 
    24  
    253<div id="login"> 
    264 
    275{if $form_data.errors} 
  • plugins/Login/templates/passwordsent.tpl

     
    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    2 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr"> 
    3 <head> 
    4         <title>Piwik &rsaquo; Lost password</title> 
    5         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    6         <link rel="stylesheet" href="plugins/Login/templates/login.css"> 
    7 </head> 
     1{include file="Login/templates/header.tpl"} 
    82 
    9 <body class="login"> 
    10 <!-- shamelessly taken from wordpress 2.5 - thank you guys!!! --> 
    11  
    12 <div id="logo"> 
    13         <a href="http://piwik.org" title="{$linkTitle}"><span class="h1">Piwik <span class="description"># open source web analytics</span></span></a> 
    14 </div> 
    15  
    163<div id="login"> 
     4 
     5{if $ErrorString} 
     6        <div id="login_error"><strong>{'General_Error'|translate}</strong>: {$ErrorString}<br /> 
     7        {'Login_ContactAdmin'|translate} 
     8        </div> 
     9{else} 
     10        <p class="message"> 
     11        {'Login_PasswordSent'|translate} 
     12        </p> 
     13{/if} 
    1714 
    18 <p class="message"> 
    19 {'Login_PasswordSent'|translate} 
    20 </p> 
    21  
    2215<p id="nav"> 
    2316<a href="?module=Login&form_url={$urlToRedirect}" title="{'Login_LogIn'|translate}">{'Login_LogIn'|translate}</a> 
    2417</p> 
  • themes/default/common-admin.css

     
    168168.access_error { 
    169169        font-size: .7em; 
    170170        padding: 15px; 
    171 } 
    172  No newline at end of file 
     171} 
  • libs/jquery/thickbox.js

     
    11/* 
    2  * Thickbox 3 - One Box To Rule Them All. 
     2 * Thickbox 3.1 - One Box To Rule Them All. 
    33 * By Cody Lindley (http://www.codylindley.com) 
    44 * Copyright (c) 2007 cody lindley 
    55 * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php 
    66*/ 
     7                   
     8var tb_pathToImage = "images/loadingAnimation.gif"; 
    79 
    8 var tb_pathToImage = "libs/jquery/loadingAnimation.gif"; 
     10/*!!!!!!!!!!!!!!!!! edit below this line at your own risk !!!!!!!!!!!!!!!!!!!!!!!*/ 
    911 
    10 eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('$(o).2S(9(){1u(\'a.18, 3n.18, 3i.18\');1w=1p 1t();1w.L=2H});9 1u(b){$(b).s(9(){6 t=X.Q||X.1v||M;6 a=X.u||X.23;6 g=X.1N||P;19(t,a,g);X.2E();H P})}9 19(d,f,g){3m{3(2t o.v.J.2i==="2g"){$("v","11").r({A:"28%",z:"28%"});$("11").r("22","2Z");3(o.1Y("1F")===M){$("v").q("<U 5=\'1F\'></U><4 5=\'B\'></4><4 5=\'8\'></4>");$("#B").s(G)}}n{3(o.1Y("B")===M){$("v").q("<4 5=\'B\'></4><4 5=\'8\'></4>");$("#B").s(G)}}3(1K()){$("#B").1J("2B")}n{$("#B").1J("2z")}3(d===M){d=""}$("v").q("<4 5=\'K\'><1I L=\'"+1w.L+"\' /></4>");$(\'#K\').2y();6 h;3(f.O("?")!==-1){h=f.3l(0,f.O("?"))}n{h=f}6 i=/\\.2s$|\\.2q$|\\.2m$|\\.2l$|\\.2k$/;6 j=h.1C().2h(i);3(j==\'.2s\'||j==\'.2q\'||j==\'.2m\'||j==\'.2l\'||j==\'.2k\'){1D="";1G="";14="";1z="";1x="";R="";1n="";1r=P;3(g){E=$("a[@1N="+g+"]").36();25(D=0;((D<E.1c)&&(R===""));D++){6 k=E[D].u.1C().2h(i);3(!(E[D].u==f)){3(1r){1z=E[D].Q;1x=E[D].u;R="<1e 5=\'1X\'>&1d;&1d;<a u=\'#\'>2T &2R;</a></1e>"}n{1D=E[D].Q;1G=E[D].u;14="<1e 5=\'1U\'>&1d;&1d;<a u=\'#\'>&2O; 2N</a></1e>"}}n{1r=1b;1n="1t "+(D+1)+" 2L "+(E.1c)}}}S=1p 1t();S.1g=9(){S.1g=M;6 a=2x();6 x=a[0]-1M;6 y=a[1]-1M;6 b=S.z;6 c=S.A;3(b>x){c=c*(x/b);b=x;3(c>y){b=b*(y/c);c=y}}n 3(c>y){b=b*(y/c);c=y;3(b>x){c=c*(x/b);b=x}}13=b+30;1a=c+2G;$("#8").q("<a u=\'\' 5=\'1L\' Q=\'1o\'><1I 5=\'2F\' L=\'"+f+"\' z=\'"+b+"\' A=\'"+c+"\' 23=\'"+d+"\'/></a>"+"<4 5=\'2D\'>"+d+"<4 5=\'2C\'>"+1n+14+R+"</4></4><4 5=\'2A\'><a u=\'#\' 5=\'Z\' Q=\'1o\'>1l</a> 1k 1j 1s</4>");$("#Z").s(G);3(!(14==="")){9 12(){3($(o).N("s",12)){$(o).N("s",12)}$("#8").C();$("v").q("<4 5=\'8\'></4>");19(1D,1G,g);H P}$("#1U").s(12)}3(!(R==="")){9 1i(){$("#8").C();$("v").q("<4 5=\'8\'></4>");19(1z,1x,g);H P}$("#1X").s(1i)}o.1h=9(e){3(e==M){I=2w.2v}n{I=e.2u}3(I==27){G()}n 3(I==3k){3(!(R=="")){o.1h="";1i()}}n 3(I==3j){3(!(14=="")){o.1h="";12()}}};16();$("#K").C();$("#1L").s(G);$("#8").r({Y:"T"})};S.L=f}n{6 l=f.2r(/^[^\\?]+\\??/,\'\');6 m=2p(l);13=(m[\'z\']*1)+30||3h;1a=(m[\'A\']*1)+3g||3f;W=13-30;V=1a-3e;3(f.O(\'2j\')!=-1){1E=f.1B(\'3d\');$("#15").C();3(m[\'1A\']!="1b"){$("#8").q("<4 5=\'2f\'><4 5=\'1H\'>"+d+"</4><4 5=\'2e\'><a u=\'#\' 5=\'Z\' Q=\'1o\'>1l</a> 1k 1j 1s</4></4><U 1W=\'0\' 2d=\'0\' L=\'"+1E[0]+"\' 5=\'15\' 1v=\'15"+1f.2c(1f.1y()*2b)+"\' 1g=\'1m()\' J=\'z:"+(W+29)+"p;A:"+(V+17)+"p;\' > </U>")}n{$("#B").N();$("#8").q("<U 1W=\'0\' 2d=\'0\' L=\'"+1E[0]+"\' 5=\'15\' 1v=\'15"+1f.2c(1f.1y()*2b)+"\' 1g=\'1m()\' J=\'z:"+(W+29)+"p;A:"+(V+17)+"p;\'> </U>")}}n{3($("#8").r("Y")!="T"){3(m[\'1A\']!="1b"){$("#8").q("<4 5=\'2f\'><4 5=\'1H\'>"+d+"</4><4 5=\'2e\'><a u=\'#\' 5=\'Z\'>1l</a> 1k 1j 1s</4></4><4 5=\'F\' J=\'z:"+W+"p;A:"+V+"p\'></4>")}n{$("#B").N();$("#8").q("<4 5=\'F\' 3c=\'3b\' J=\'z:"+W+"p;A:"+V+"p;\'></4>")}}n{$("#F")[0].J.z=W+"p";$("#F")[0].J.A=V+"p";$("#F")[0].3a=0;$("#1H").11(d)}}$("#Z").s(G);3(f.O(\'37\')!=-1){$("#F").q($(\'#\'+m[\'26\']).1T());$("#8").24(9(){$(\'#\'+m[\'26\']).q($("#F").1T())});16();$("#K").C();$("#8").r({Y:"T"})}n 3(f.O(\'2j\')!=-1){16();3($.1q.35){$("#K").C();$("#8").r({Y:"T"})}}n{$("#F").34(f+="&1y="+(1p 33().32()),9(){16();$("#K").C();1u("#F a.18");$("#8").r({Y:"T"})})}}3(!m[\'1A\']){o.21=9(e){3(e==M){I=2w.2v}n{I=e.2u}3(I==27){G()}}}}31(e){}}9 1m(){$("#K").C();$("#8").r({Y:"T"})}9 G(){$("#2Y").N("s");$("#Z").N("s");$("#8").2X("2W",9(){$(\'#8,#B,#1F\').2V("24").N().C()});$("#K").C();3(2t o.v.J.2i=="2g"){$("v","11").r({A:"1Z",z:"1Z"});$("11").r("22","")}o.1h="";o.21="";H P}9 16(){$("#8").r({2U:\'-\'+20((13/2),10)+\'p\',z:13+\'p\'});3(!(1V.1q.2Q&&1V.1q.2P<7)){$("#8").r({38:\'-\'+20((1a/2),10)+\'p\'})}}9 2p(a){6 b={};3(!a){H b}6 c=a.1B(/[;&]/);25(6 i=0;i<c.1c;i++){6 d=c[i].1B(\'=\');3(!d||d.1c!=2){39}6 e=2a(d[0]);6 f=2a(d[1]);f=f.2r(/\\+/g,\' \');b[e]=f}H b}9 2x(){6 a=o.2M;6 w=1S.2o||1R.2o||(a&&a.1Q)||o.v.1Q;6 h=1S.1P||1R.1P||(a&&a.2n)||o.v.2n;1O=[w,h];H 1O}9 1K(){6 a=2K.2J.1C();3(a.O(\'2I\')!=-1&&a.O(\'3o\')!=-1){H 1b}}',62,211,'|||if|div|id|var||TB_window|function||||||||||||||else|document|px|append|css|click||href|body||||width|height|TB_overlay|remove|TB_Counter|TB_TempArray|TB_ajaxContent|tb_remove|return|keycode|style|TB_load|src|null|unbind|indexOf|false|title|TB_NextHTML|imgPreloader|block|iframe|ajaxContentH|ajaxContentW|this|display|TB_closeWindowButton||html|goPrev|TB_WIDTH|TB_PrevHTML|TB_iframeContent|tb_position||thickbox|tb_show|TB_HEIGHT|true|length|nbsp|span|Math|onload|onkeydown|goNext|Esc|or|close|tb_showIframe|TB_imageCount|Close|new|browser|TB_FoundURL|Key|Image|tb_init|name|imgLoader|TB_NextURL|random|TB_NextCaption|modal|split|toLowerCase|TB_PrevCaption|urlNoQuery|TB_HideSelect|TB_PrevURL|TB_ajaxWindowTitle|img|addClass|tb_detectMacXFF|TB_ImageOff|150|rel|arrayPageSize|innerHeight|clientWidth|self|window|children|TB_prev|jQuery|frameborder|TB_next|getElementById|auto|parseInt|onkeyup|overflow|alt|unload|for|inlineId||100||unescape|1000|round|hspace|TB_closeAjaxWindow|TB_title|undefined|match|maxHeight|TB_iframe|bmp|gif|png|clientHeight|innerWidth|tb_parseQuery|jpeg|replace|jpg|typeof|which|keyCode|event|tb_getPageSize|show|TB_overlayBG|TB_closeWindow|TB_overlayMacFFBGHack|TB_secondLine|TB_caption|blur|TB_Image|60|tb_pathToImage|mac|userAgent|navigator|of|documentElement|Prev|lt|version|msie|gt|ready|Next|marginLeft|trigger|fast|fadeOut|TB_imageOff|hidden||catch|getTime|Date|load|safari|get|TB_inline|marginTop|continue|scrollTop|TB_modal|class|TB_|45|440|40|630|input|188|190|substr|try|area|firefox'.split('|'),0,{})) 
    11  No newline at end of file 
     12//on page load call tb_init 
     13$(document).ready(function(){    
     14        tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox 
     15        imgLoader = new Image();// preload image 
     16        imgLoader.src = tb_pathToImage; 
     17}); 
     18 
     19//add thickbox to href & area elements that have a class of .thickbox 
     20function tb_init(domChunk){ 
     21        $(domChunk).click(function(){ 
     22        var t = this.title || this.name || null; 
     23        var a = this.href || this.alt; 
     24        var g = this.rel || false; 
     25        tb_show(t,a,g); 
     26        this.blur(); 
     27        return false; 
     28        }); 
     29} 
     30 
     31function tb_show(caption, url, imageGroup) {//function called when the user clicks on a thickbox link 
     32 
     33        try { 
     34                if (typeof document.body.style.maxHeight === "undefined") {//if IE 6 
     35                        $("body","html").css({height: "100%", width: "100%"}); 
     36                        $("html").css("overflow","hidden"); 
     37                        if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6 
     38                                $("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>"); 
     39                                $("#TB_overlay").click(tb_remove); 
     40                        } 
     41                }else{//all others 
     42                        if(document.getElementById("TB_overlay") === null){ 
     43                                $("body").append("<div id='TB_overlay'></div><div id='TB_window'></div>"); 
     44                                $("#TB_overlay").click(tb_remove); 
     45                        } 
     46                } 
     47                 
     48                if(tb_detectMacXFF()){ 
     49                        $("#TB_overlay").addClass("TB_overlayMacFFBGHack");//use png overlay so hide flash 
     50                }else{ 
     51                        $("#TB_overlay").addClass("TB_overlayBG");//use background and opacity 
     52                } 
     53                 
     54                if(caption===null){caption="";} 
     55                $("body").append("<div id='TB_load'><img src='"+imgLoader.src+"' /></div>");//add loader to the page 
     56                $('#TB_load').show();//show loader 
     57                 
     58                var baseURL; 
     59           if(url.indexOf("?")!==-1){ //ff there is a query string involved 
     60                        baseURL = url.substr(0, url.indexOf("?")); 
     61           }else{  
     62                        baseURL = url; 
     63           } 
     64            
     65           var urlString = /\.jpg$|\.jpeg$|\.png$|\.gif$|\.bmp$/; 
     66           var urlType = baseURL.toLowerCase().match(urlString); 
     67 
     68                if(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images 
     69                                 
     70                        TB_PrevCaption = ""; 
     71                        TB_PrevURL = ""; 
     72                        TB_PrevHTML = ""; 
     73                        TB_NextCaption = ""; 
     74                        TB_NextURL = ""; 
     75                        TB_NextHTML = ""; 
     76                        TB_imageCount = ""; 
     77                        TB_FoundURL = false; 
     78                        if(imageGroup){ 
     79                                TB_TempArray = $("a[@rel="+imageGroup+"]").get(); 
     80                                for (TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML === "")); TB_Counter++) { 
     81                                        var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString); 
     82                                                if (!(TB_TempArray[TB_Counter].href == url)) {                                           
     83                                                        if (TB_FoundURL) { 
     84                                                                TB_NextCaption = TB_TempArray[TB_Counter].title; 
     85                                                                TB_NextURL = TB_TempArray[TB_Counter].href; 
     86                                                                TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Next &gt;</a></span>"; 
     87                                                        } else { 
     88                                                                TB_PrevCaption = TB_TempArray[TB_Counter].title; 
     89                                                                TB_PrevURL = TB_TempArray[TB_Counter].href; 
     90                                                                TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; Prev</a></span>"; 
     91                                                        } 
     92                                                } else { 
     93                                                        TB_FoundURL = true; 
     94                                                        TB_imageCount = "Image " + (TB_Counter + 1) +" of "+ (TB_TempArray.length);                                                                                      
     95                                                } 
     96                                } 
     97                        } 
     98 
     99                        imgPreloader = new Image(); 
     100                        imgPreloader.onload = function(){                
     101                        imgPreloader.onload = null; 
     102                                 
     103                        // Resizing large images - orginal by Christian Montoya edited by me. 
     104                        var pagesize = tb_getPageSize(); 
     105                        var x = pagesize[0] - 150; 
     106                        var y = pagesize[1] - 150; 
     107                        var imageWidth = imgPreloader.width; 
     108                        var imageHeight = imgPreloader.height; 
     109                        if (imageWidth > x) { 
     110                                imageHeight = imageHeight * (x / imageWidth);  
     111                                imageWidth = x;  
     112                                if (imageHeight > y) {  
     113                                        imageWidth = imageWidth * (y / imageHeight);  
     114                                        imageHeight = y;  
     115                                } 
     116                        } else if (imageHeight > y) {  
     117                                imageWidth = imageWidth * (y / imageHeight);  
     118                                imageHeight = y;  
     119                                if (imageWidth > x) {  
     120                                        imageHeight = imageHeight * (x / imageWidth);  
     121                                        imageWidth = x; 
     122                                } 
     123                        } 
     124                        // End Resizing 
     125                         
     126                        TB_WIDTH = imageWidth + 30; 
     127                        TB_HEIGHT = imageHeight + 60; 
     128                        $("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'><img src='/libs/jquery/stop.png' alt='close' /></a></div>");            
     129                         
     130                        $("#TB_closeWindowButton").click(tb_remove); 
     131                         
     132                        if (!(TB_PrevHTML === "")) { 
     133                                function goPrev(){ 
     134                                        if($(document).unbind("click",goPrev)){$(document).unbind("click",goPrev);} 
     135                                        $("#TB_window").remove(); 
     136                                        $("body").append("<div id='TB_window'></div>"); 
     137                                        tb_show(TB_PrevCaption, TB_PrevURL, imageGroup); 
     138                                        return false;    
     139                                } 
     140                                $("#TB_prev").click(goPrev); 
     141                        } 
     142                         
     143                        if (!(TB_NextHTML === "")) {             
     144                                function goNext(){ 
     145                                        $("#TB_window").remove(); 
     146                                        $("body").append("<div id='TB_window'></div>"); 
     147                                        tb_show(TB_NextCaption, TB_NextURL, imageGroup);                                 
     148                                        return false;    
     149                                } 
     150                                $("#TB_next").click(goNext); 
     151                                 
     152                        } 
     153 
     154                        document.onkeydown = function(e){        
     155                                if (e == null) { // ie 
     156                                        keycode = event.keyCode; 
     157                                } else { // mozilla 
     158                                        keycode = e.which; 
     159                                } 
     160                                if(keycode == 27){ // close 
     161                                        tb_remove(); 
     162                                } else if(keycode == 190){ // display previous image 
     163                                        if(!(TB_NextHTML == "")){ 
     164                                                document.onkeydown = ""; 
     165                                                goNext(); 
     166                                        } 
     167                                } else if(keycode == 188){ // display next image 
     168                                        if(!(TB_PrevHTML == "")){ 
     169                                                document.onkeydown = ""; 
     170                                                goPrev(); 
     171                                        } 
     172                                }        
     173                        }; 
     174                         
     175                        tb_position(); 
     176                        $("#TB_load").remove(); 
     177                        $("#TB_ImageOff").click(tb_remove); 
     178                        $("#TB_window").css({display:"block"}); //for safari using css instead of show 
     179                        }; 
     180                         
     181                        imgPreloader.src = url; 
     182                }else{//code to show html 
     183                         
     184                        var queryString = url.replace(/^[^\?]+\??/,''); 
     185                        var params = tb_parseQuery( queryString ); 
     186 
     187                        TB_WIDTH = (params['width']*1) + 30 || 630; //defaults to 630 if no paramaters were added to URL 
     188                        TB_HEIGHT = (params['height']*1) + 40 || 440; //defaults to 440 if no paramaters were added to URL 
     189                        ajaxContentW = TB_WIDTH - 30; 
     190                        ajaxContentH = TB_HEIGHT - 45; 
     191                         
     192                        if(url.indexOf('TB_iframe') != -1){// either iframe or ajax window               
     193                                        urlNoQuery = url.split('TB_'); 
     194                                        $("#TB_iframeContent").remove(); 
     195                                        if(params['modal'] != "true"){//iframe no modal 
     196                                                $("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'><img src='/libs/jquery/stop.png' alt='close' /></a></div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent"+Math.round(Math.random()*1000)+"' onload='tb_showIframe()' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;' > </iframe>"); 
     197                                        }else{//iframe modal 
     198                                        $("#TB_overlay").unbind(); 
     199                                                $("#TB_window").append("<iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent"+Math.round(Math.random()*1000)+"' onload='tb_showIframe()' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;'> </iframe>"); 
     200                                        } 
     201                        }else{// not an iframe, ajax 
     202                                        if($("#TB_window").css("display") != "block"){ 
     203                                                if(params['modal'] != "true"){//ajax no modal 
     204                                                $("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'><img src='/libs/jquery/stop.png' alt='close' /></a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px'></div>"); 
     205                                                }else{//ajax modal 
     206                                                $("#TB_overlay").unbind(); 
     207                                                $("#TB_window").append("<div id='TB_ajaxContent' class='TB_modal' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");  
     208                                                } 
     209                                        }else{//this means the window is already up, we are just loading new content via ajax 
     210                                                $("#TB_ajaxContent")[0].style.width = ajaxContentW +"px"; 
     211                                                $("#TB_ajaxContent")[0].style.height = ajaxContentH +"px"; 
     212                                                $("#TB_ajaxContent")[0].scrollTop = 0; 
     213                                                $("#TB_ajaxWindowTitle").html(caption); 
     214                                        } 
     215                        } 
     216                                         
     217                        $("#TB_closeWindowButton").click(tb_remove); 
     218                         
     219                                if(url.indexOf('TB_inline') != -1){      
     220                                        $("#TB_ajaxContent").append($('#' + params['inlineId']).children()); 
     221                                        $("#TB_window").unload(function () { 
     222                                                $('#' + params['inlineId']).append( $("#TB_ajaxContent").children() ); // move elements back when you're finished 
     223                                        }); 
     224                                        tb_position(); 
     225                                        $("#TB_load").remove(); 
     226                                        $("#TB_window").css({display:"block"});  
     227                                }else if(url.indexOf('TB_iframe') != -1){ 
     228                                        tb_position(); 
     229                                        if($.browser.safari){//safari needs help because it will not fire iframe onload 
     230                                                $("#TB_load").remove(); 
     231                                                $("#TB_window").css({display:"block"}); 
     232                                        } 
     233                                }else{ 
     234                                        $("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method 
     235                                                tb_position(); 
     236                                                $("#TB_load").remove(); 
     237                                                tb_init("#TB_ajaxContent a.thickbox"); 
     238                                                $("#TB_window").css({display:"block"}); 
     239                                        }); 
     240                                } 
     241                         
     242                } 
     243 
     244                if(!params['modal']){ 
     245                        document.onkeyup = function(e){          
     246                                if (e == null) { // ie 
     247                                        keycode = event.keyCode; 
     248                                } else { // mozilla 
     249                                        keycode = e.which; 
     250                                } 
     251                                if(keycode == 27){ // close 
     252                                        tb_remove(); 
     253                                }        
     254                        }; 
     255                } 
     256                 
     257        } catch(e) { 
     258                //nothing here 
     259        } 
     260} 
     261 
     262//helper functions below 
     263function tb_showIframe(){ 
     264        $("#TB_load").remove(); 
     265        $("#TB_window").css({display:"block"}); 
     266} 
     267 
     268function tb_remove() { 
     269        $("#TB_imageOff").unbind("click"); 
     270        $("#TB_closeWindowButton").unbind("click"); 
     271        $("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove();}); 
     272        $("#TB_load").remove(); 
     273        if (typeof document.body.style.maxHeight == "undefined") {//if IE 6 
     274                $("body","html").css({height: "auto", width: "auto"}); 
     275                $("html").css("overflow",""); 
     276        } 
     277        document.onkeydown = ""; 
     278        document.onkeyup = ""; 
     279        return false; 
     280} 
     281 
     282function tb_position() { 
     283$("#TB_window").css({marginLeft: '-' + parseInt((TB_WIDTH / 2),10) + 'px', width: TB_WIDTH + 'px'}); 
     284        if ( !(jQuery.browser.msie && jQuery.browser.version < 7)) { // take away IE6 
     285                $("#TB_window").css({marginTop: '-' + parseInt((TB_HEIGHT / 2),10) + 'px'}); 
     286        } 
     287} 
     288 
     289function tb_parseQuery ( query ) { 
     290   var Params = {}; 
     291   if ( ! query ) {return Params;}// return empty object 
     292   var Pairs = query.split(/[;&]/); 
     293   for ( var i = 0; i < Pairs.length; i++ ) { 
     294      var KeyVal = Pairs[i].split('='); 
     295      if ( ! KeyVal || KeyVal.length != 2 ) {continue;} 
     296      var key = unescape( KeyVal[0] ); 
     297      var val = unescape( KeyVal[1] ); 
     298      val = val.replace(/\+/g, ' '); 
     299      Params[key] = val; 
     300   } 
     301   return Params; 
     302} 
     303 
     304function tb_getPageSize(){ 
     305        var de = document.documentElement; 
     306        var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth; 
     307        var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight; 
     308        arrayPageSize = [w,h]; 
     309        return arrayPageSize; 
     310} 
     311 
     312function tb_detectMacXFF() { 
     313  var userAgent = navigator.userAgent.toLowerCase(); 
     314  if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) { 
     315    return true; 
     316  } 
     317} 
     318 
     319 
  • libs/jquery/thickbox.css

     
    191191        margin-bottom: -1px; 
    192192        margin-top: 1px; 
    193193        _margin-bottom: 1px; 
    194 } 
    195  No newline at end of file 
     194} 
  • modules/SmartyPlugins/function.loadJavascriptTranslations.php

    Cannot display: file marked as a binary type.
    svn:mime-type = application/octet-stream
    
    Property changes on: libs/jquery/stop.png
    ___________________________________________________________________
    Name: svn:mime-type
       + application/octet-stream
    
     
    2020 *  (it is always loaded with translations): 
    2121 * 
    2222 *  <script type="text/javascript"> 
    23  *     alert(_pk_translate('MY_TRANSLATION_STRING','Default string in English')) 
     23 *     alert(_pk_translate('MY_TRANSLATION_STRING')) 
    2424 *  </script> 
    2525 * 
    2626 *  Note: Use translation string from your translation file WITHOUT '_js' suffix. 
    2727 *  
    2828 * _pk_translate DOES NOT support printf() arguments, but you can call: 
    2929 * 
    30  *   sprintf(_pk_translate('_NB_OF_EGGS','There is %s eggs on the table'),'ten') 
    31  * 
     30 *   sprintf(_pk_translate('_NB_OF_EGGS'),'ten') 
     31 *   (where _NB_OF_EGGS is defined in translation file as i.e. 'There is %s eggs on the table') 
     32 *  
    3233 * sprintf() function is by default included when loading translations 
    3334 */ 
    3435 
  • modules/Translate.php

     
    108108                } 
    109109                $js = substr($js,0,-1); 
    110110                $js .= '};'; 
    111                 $js .= 'function _pk_translate(tvar, str) { '. 
    112                         'var s = str; if( typeof(translations[tvar]) != \'undefined\' ) s = translations[tvar];'. 
     111                $js .= 'function _pk_translate(k) { '. 
     112                        'var s = k; if( typeof(translations[k]) != \'undefined\' ) s = translations[k];'. 
    113113                        'return s;}'; 
    114114                 
    115115                return $js;