Ticket #62: multi.patch
| File multi.patch, 37.3 KB (added by mauser, 4 years ago) |
|---|
-
plugins/SitesManager/templates/SitesManager.js
108 108 var idRow = $(this).attr('id'); 109 109 var nameToDelete = $(this).parent().parent().find('#siteName').html(); 110 110 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+')')) ) 112 112 { 113 113 $.ajax( getDeleteSiteAJAX( idsiteToDelete ) ); 114 114 } -
plugins/Feedback/index.tpl
1 {literal} 2 <style> 3 input, textarea, p { 4 font-family: Georgia,"Trebuchet MS", Verdana, Arial, Helvetica, sans-serif; 5 font-size:0.9em; 6 } 7 </style> 8 {/literal} 9 1 10 <form method="post" action="?module=Feedback&action=sendFeedback"> 2 11 3 <p><strong>Your name:</strong>4 <br /><input type="text" name="name" size="50" /></p>5 6 12 <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> 8 14 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 19 15 <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> 21 17 22 18 <p><input type="submit" value="Send feedback" /> 23 19 -
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
31 31 { 32 32 // TODO: require user login or captcha if anonymous 33 33 34 $name = Piwik_Common::getRequestVar('name', '', 'string');35 $topic = Piwik_Common::getRequestVar('topic', '', 'string');36 34 $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 } 39 53 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');48 54 echo $view->render(); 49 55 } 50 56 } -
plugins/Dashboard/templates/Dashboard.js
143 143 //format the div for upcomming ajax loading and set a temporary content 144 144 $(this) .attr('plugin', plugin) 145 145 .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(); 147 147 self.dashboard.ajaxLoading(plugin, action); 148 148 } 149 149 }); … … 193 193 if(contains(widgets, plugin+'.'+action)) 194 194 { 195 195 $(this).addClass('menuDisabled'); 196 $(this).attr('title', _pk_translate('Dashboard_TitleWidgetInDashboard' ,'Widget already in dashboard'));196 $(this).attr('title', _pk_translate('Dashboard_TitleWidgetInDashboard')); 197 197 } 198 198 else 199 199 { 200 200 $(this).removeClass('menuDisabled'); 201 $(this).attr('title', _pk_translate('Dashboard_TitleClickToAdd' ,'Click to add to dashboard'));201 $(this).attr('title', _pk_translate('Dashboard_TitleClickToAdd')); 202 202 } 203 203 }); 204 204 }, … … 328 328 if(typeof onTop == "undefined") 329 329 onTop = false; 330 330 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>'; 332 332 333 333 if(onTop) 334 334 { … … 375 375 { 376 376 var self = this; 377 377 378 var title = _pk_translate('Dashboard_WidgetNotFound' ,'Widget not found');378 var title = _pk_translate('Dashboard_WidgetNotFound'); 379 379 var widgets = piwik.availableWidgets[plugin]; 380 380 for(var i in widgets) 381 381 { -
plugins/Home/templates/links_misc_modules.tpl
4 4 <a href='?module=AdminHome'>Admin</a></li> | 5 5 <a href='?module=API&action=listAllAPI'><b>API </b></a> | 6 6 <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
268 268 { 269 269 if(Number(self.param.filter_excludelowpop) != 0) 270 270 { 271 string = _pk_translate('Home_IncludeAllPopulation' ,'Include all population');271 string = _pk_translate('Home_IncludeAllPopulation'); 272 272 } 273 273 else 274 274 { 275 string = _pk_translate('Home_ExcludeLowPopulation' ,'Exclude low population');275 string = _pk_translate('Home_ExcludeLowPopulation'); 276 276 } 277 277 $(this).html(string); 278 278 } … … 410 410 // only show this string if there is some rows in the datatable 411 411 if(totalRows != 0) 412 412 { 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); 414 414 $(this).text(str); 415 415 } 416 416 } … … 618 618 <tr>\ 619 619 <td colspan="'+numberOfColumns+'" class="cellSubDataTable">\ 620 620 <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>\ 622 622 </div>\ 623 623 </td>\ 624 624 </tr>\ -
plugins/UsersManager/templates/UsersManager.js
222 222 ajaxHideError(); 223 223 var idRow = $(this).attr('id'); 224 224 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+'"')) ) 226 226 { 227 227 $.ajax( getDeleteUserAJAX( loginToDelete ) ); 228 228 } -
plugins/VisitsSummary/sparklines.tpl
1 1 <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
14 14 15 15 'Login_MailTopicPasswordRecovery' => 'Password recovery', 16 16 '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.' 18 19 ); -
plugins/Login/Controller.php
107 107 108 108 // if user exists 109 109 if( $user != null ) 110 { 110 { 111 $view = new Piwik_View('Login/templates/passwordsent.tpl'); 112 111 113 $login = $user['login']; 112 114 $email = $user['email']; 113 115 … … 116 118 Piwik_UsersManager_API::updateUser($login, $randomPassword); 117 119 118 120 // 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 127 135 $view->linkTitle = Piwik::getRandomTitle(); 128 136 $view->urlToRedirect = $urlToRedirect; 129 137 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 › 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"} 17 2 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 25 3 <div id="login"> 26 4 27 5 {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 › 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"} 17 2 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 25 3 <div id="login"> 26 4 27 5 {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 › 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"} 8 2 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 16 3 <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} 17 14 18 <p class="message">19 {'Login_PasswordSent'|translate}20 </p>21 22 15 <p id="nav"> 23 16 <a href="?module=Login&form_url={$urlToRedirect}" title="{'Login_LogIn'|translate}">{'Login_LogIn'|translate}</a> 24 17 </p> -
themes/default/common-admin.css
168 168 .access_error { 169 169 font-size: .7em; 170 170 padding: 15px; 171 } 172 No newline at end of file 171 } -
libs/jquery/thickbox.js
1 1 /* 2 * Thickbox 3 - One Box To Rule Them All.2 * Thickbox 3.1 - One Box To Rule Them All. 3 3 * By Cody Lindley (http://www.codylindley.com) 4 4 * Copyright (c) 2007 cody lindley 5 5 * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php 6 6 */ 7 8 var tb_pathToImage = "images/loadingAnimation.gif"; 7 9 8 var tb_pathToImage = "libs/jquery/loadingAnimation.gif"; 10 /*!!!!!!!!!!!!!!!!! edit below this line at your own risk !!!!!!!!!!!!!!!!!!!!!!!*/ 9 11 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 20 function 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 31 function 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'> <a href='#'>Next ></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'> <a href='#'>< 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 263 function tb_showIframe(){ 264 $("#TB_load").remove(); 265 $("#TB_window").css({display:"block"}); 266 } 267 268 function 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 282 function 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 289 function 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 304 function 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 312 function 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
191 191 margin-bottom: -1px; 192 192 margin-top: 1px; 193 193 _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
20 20 * (it is always loaded with translations): 21 21 * 22 22 * <script type="text/javascript"> 23 * alert(_pk_translate('MY_TRANSLATION_STRING' ,'Default string in English'))23 * alert(_pk_translate('MY_TRANSLATION_STRING')) 24 24 * </script> 25 25 * 26 26 * Note: Use translation string from your translation file WITHOUT '_js' suffix. 27 27 * 28 28 * _pk_translate DOES NOT support printf() arguments, but you can call: 29 29 * 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 * 32 33 * sprintf() function is by default included when loading translations 33 34 */ 34 35 -
modules/Translate.php
108 108 } 109 109 $js = substr($js,0,-1); 110 110 $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];'. 113 113 'return s;}'; 114 114 115 115 return $js;
