Revue complete des librairies externes et de la gestion des themes, issue #0000168, issue #0001032

This commit is contained in:
Michael RICOIS 2012-03-23 10:55:01 +00:00
parent 9349d87c5b
commit 06a1aa5a9a
57 changed files with 120 additions and 29460 deletions

View File

@ -5,10 +5,7 @@ class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
protected function _initViewSettings()
{
$this->bootstrap('view');
$view = $this->getResource('view');
$theme = 'default';
$pathStyle = '/themes/'.$theme.'/styles';
$pathScript = '/themes/'.$theme.'/scripts';
$view = $this->getResource('view');
$view->setEncoding('UTF-8');
$view->doctype('XHTML1_STRICT');
$view->headMeta()
@ -21,6 +18,18 @@ class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
$view->headLink()
->headLink(array('rel' => 'shortcut icon', 'type' => 'image/x-icon', 'href' => '/favicon.ico'));
$view->headTitle()->setSeparator(' - ');
$view->headTitle('Extranet Scores & Décisions');
/*
$theme = 'default';
if ( Zend_Registry::isRegistered('') ){
$theme = Zend_Registry::get('default');
}
$pathStyle = '/themes/'.$theme.'/styles';
$pathScript = '/themes/'.$theme.'/scripts';
$view->headLink()
->appendStylesheet($pathStyle.'/main.css', 'all')
->appendStylesheet($pathStyle.'/ie6.css', 'all', 'lte IE 6')
@ -40,9 +49,9 @@ class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
->appendFile($pathScript.$pathScriptPlus.'/jquery-ui-i18n.js', 'text/javascript')
->appendFile($pathScript.$pathScriptPlus.'/jquery.qtip.js', 'text/javascript')
->appendFile($pathScript.'/script.js', 'text/javascript');
$view->headTitle()->setSeparator(' - ');
$view->headTitle('Extranet Scores & Décisions');
*/
}
protected function _initRouter()

View File

@ -7,6 +7,7 @@ bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.plugins.Auth = "Application_Controller_Plugin_Auth"
resources.frontController.plugins.Theme = "Application_Controller_Plugin_Theme"
resources.frontController.plugins.Menu = "Application_Controller_Plugin_Menu"
resources.frontController.plugins.Pdf = "Application_Controller_Plugin_Pdf"
resources.frontController.plugins.Xml = "Application_Controller_Plugin_Xml"

View File

@ -506,8 +506,8 @@ class DashboardController extends Zend_Controller_Action
$this->_forward('perms', 'error');
}
$this->view->headScript()->appendFile('/themes/default/scripts/jquery.checkbox.js', 'text/javascript');
$this->view->headLink()->appendStylesheet('/themes/default/styles/jquery.checkbox.css', 'all');
$this->view->headScript()->appendFile('/libs/checkbox/jquery.checkbox.js', 'text/javascript');
$this->view->headLink()->appendStylesheet('/libs/checkbox/jquery.checkbox.css', 'all');
$request = $this->getRequest();
$idClient = $request->getParam('idClient', false);

View File

@ -670,7 +670,7 @@ class SaisieController extends Zend_Controller_Action
{
$this->view->headScript()
->appendFile('/themes/default/scripts/saisie.js', 'text/javascript')
->appendFile('/themes/default/scripts/jquery.form.js', 'text/javascript');
->appendFile('/libs/form/jquery.form.js', 'text/javascript');
$request = $this->getRequest();
$siret = $request->getParam('siret');
@ -1269,7 +1269,7 @@ class SaisieController extends Zend_Controller_Action
//Affichage formulaire
} else {
$this->view->inlineScript()->appendFile('/themes/default/scripts/jquery.form.js');
$this->view->inlineScript()->appendFile('/libs/form/jquery.form.js');
if ( intval($siren)==0 ) {
$session = new SessionEntreprise();
$siren = '';

View File

@ -271,10 +271,11 @@ class SurveillanceController extends Zend_Controller_Action
}
$this->view->headLink()
->appendStylesheet('/libs/tablesorter/themes/blue/style.css', 'all')
->appendStylesheet('/themes/default/styles/surveillance.css', 'all');
$this->view->headScript()
->appendFile('/themes/default/scripts/jquery.tablesorter.js', 'text/javascript')
->appendFile('/libs/tablesorter/jquery.tablesorter.js', 'text/javascript')
->appendFile('/themes/default/scripts/surveillance.js', 'text/javascript');
$request = $this->getRequest();

View File

@ -16,7 +16,7 @@ Fichier PDF : <input type="file" name="fichier" />
<input type="submit" name="upload" value="Valider" />
</form>
<div id="uploadOutput"></div>
<script type="text/javascript" src="/themes/default/scripts/jquery.form.js">
<script type="text/javascript" src="/libs/form/jquery.form.js">
</script>
<script>
var timer;

View File

@ -49,7 +49,7 @@
</table>
</form>
</div>
<script type="text/javascript" src="/themes/default/scripts/jquery.form.js">
<script type="text/javascript" src="/libs/form/jquery.form.js">
</script type="text/javascript">
<script>
$('#uploadForm').ajaxForm({

View File

@ -41,7 +41,7 @@ Votre fichier : <input type="file" name="fichier" />
</form>
<div id="progressbar"></div>
<div id="uploadOutput"></div>
<script type="text/javascript" src="/themes/default/scripts/jquery.form.js" />
<script type="text/javascript" src="/libs/form/jquery.form.js" />
<script>
$('#uploadForm').ajaxForm({
beforeSubmit: function() {

View File

@ -9,8 +9,8 @@
<?php else:?>
<script src="/themes/default/scripts/jquery.Jcrop.js"></script>
<link rel="stylesheet" href="/themes/default/styles/jquery.Jcrop.css" type="text/css" />
<script src="/libs/jcrop/jquery.Jcrop.js"></script>
<link rel="stylesheet" href="/libs/jcrop/jquery.Jcrop.css" type="text/css" />
<script>
$(function(){
$('#cropbox').Jcrop({

View File

@ -85,7 +85,7 @@ $('select[name="even[]"]').change(function(){
<?php }?>
<script type="text/javascript" src="/themes/default/scripts/jquery.form.js"></script>
<script type="text/javascript" src="/libs/form/jquery.form.js"></script>
<script>
$('form#saisie').bind('submit', function(){
var options = {

View File

@ -53,12 +53,9 @@ TODO
Gestion de l'autoload
Fichier library/Exposed/Subscription.php
class Exposed_Subscription {
...
}
class Exposed_Subscription {}
autoloaderNamespaces[] = "Exposed_"
Pour les librairies Scores class Scores_Name
Pour une sous librairies Scores_Name_Element à placer dans library/Name/Element

View File

@ -0,0 +1,70 @@
<?php
class Application_Controller_Plugin_Theme extends Zend_Controller_Plugin_Abstract
{
public function routeShutdown($request)
{
$auth = Zend_Auth::getInstance();
$theme = 'default';
if ( $auth->hasIdentity() ) {
$theme = !empty($auth->getIdentity()->theme) ?
$auth->getIdentity()->theme : 'default';
}
//Sauvegarde du nom du theme pour gérer les scripts et styles à utiliser
Zend_Registry::set('theme', $theme);
$module = $request->getModuleName();
if ($module === 'default') {
//Module default de l'application
$layoutPath = APPLICATION_PATH . '/views/' . $theme;
$viewPath = APPLICATION_PATH . '/views/' . $theme;
} else {
//@todo : Pour les autres modules séparés de l'application
$layoutPath = APPLICATION_PATH . '/modules/' . $module . '/views/' . $theme;
$viewPath = APPLICATION_PATH . '/modules/' . $module . '/views/' . $theme;
}
//Surcharge des chemins de la vue et du layout
$bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
$view = $bootstrap->bootstrap('View')->getResource('View');
$view->setBasePath($viewPath);
$layout = $bootstrap->bootstrap('Layout')->getResource('Layout');
$layout->setLayout('main');
$layout->setLayoutPath($layoutPath);
//Définition des fichiers suivant le theme
switch ( $theme )
{
default:
case 'default':
$pathStyle = '/themes/'.$theme.'/styles';
$pathScript = '/themes/'.$theme.'/scripts';
//Style
$view->headLink()
->appendStylesheet($pathStyle.'/main.css', 'all')
->appendStylesheet($pathStyle.'/ie6.css', 'all', 'lte IE 6')
->appendStylesheet('/libs/ui/themes/smoothness/jquery-ui.css', 'all')
->appendStylesheet('/libs/qtip/jquery.qtip.css', 'all');
//JavaScript
$view->headScript()
->appendFile('/libs/jquery/jquery.js', 'text/javascript')
->appendFile('/libs/jquery/jquery.bgiframe.js', 'text/javascript')
->appendFile('/libs/ui/jquery-ui.js', 'text/javascript')
->appendFile('/libs/ui/jquery-ui-i18n.js', 'text/javascript')
->appendFile('/libs/qtip/jquery.qtip.js', 'text/javascript')
->appendFile($pathScript.'/script.js', 'text/javascript');
break;
case 'mobile':
break;
}
}
}

View File

@ -1,31 +0,0 @@
<?php
class Application_Controller_Plugin_Themes extends Zend_Controller_Plugin_Abstract
{
public function routeShutdown($request)
{
$theme = 'default';
if ($theme !== 'default') {
$module = $request->getModuleName();
if ($module === 'default') {
$layoutPath = APPLICATION_PATH . '/views/' . $theme;
$viewPath = APPLICATION_PATH . '/views/' . $theme;
} else {
$layoutPath = APPLICATION_PATH . '/modules/' . $module . '/views/' . $theme;
$viewPath = APPLICATION_PATH . '/modules/' . $module . '/views/' . $theme;
}
$bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
$view = $bootstrap->bootstrap('View')->getResource('View');
$view->setBasePath($viewPath);
$layout = $bootstrap->bootstrap('Layout')->getResource('Layout');
$layout->setLayout('main');
$layout->setLayoutPath($layoutPath);
}
}
}

View File

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

Before

Width:  |  Height:  |  Size: 137 B

After

Width:  |  Height:  |  Size: 137 B

View File

@ -2,7 +2,7 @@
.jquery-checkbox .mark {display: inline;}
.jquery-checkbox img {vertical-align: middle; width: 60px; height: 20px;}
.jquery-checkbox img{background: transparent url(/themes/default/images/checkbox/checkbox.png) no-repeat;}
.jquery-checkbox img{background: transparent url(checkbox.png) no-repeat;}
.jquery-checkbox img{
background-position: 0px 0px;

View File

Before

Width:  |  Height:  |  Size: 329 B

After

Width:  |  Height:  |  Size: 329 B

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -56,26 +56,26 @@
.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; }
.ui-widget .ui-widget { font-size: 1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; }
.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(/themes/default/images/smoothness/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; }
.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; }
.ui-widget-content a { color: #222222; }
.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(/themes/default/images/smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
.ui-widget-header a { color: #222222; }
/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(/themes/default/images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(/themes/default/images/smoothness/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(/themes/default/images/smoothness/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
.ui-widget :active { outline: none; }
/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(/themes/default/images/smoothness/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; }
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; }
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(/themes/default/images/smoothness/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
@ -86,14 +86,14 @@
----------------------------------*/
/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(/themes/default/images/smoothness/ui-icons_222222_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(/themes/default/images/smoothness/ui-icons_222222_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(/themes/default/images/smoothness/ui-icons_222222_256x240.png); }
.ui-state-default .ui-icon { background-image: url(/themes/default/images/smoothness/ui-icons_888888_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(/themes/default/images/smoothness/ui-icons_454545_256x240.png); }
.ui-state-active .ui-icon {background-image: url(/themes/default/images/smoothness/ui-icons_454545_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(/themes/default/images/smoothness/ui-icons_2e83ff_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(/themes/default/images/smoothness/ui-icons_cd0a0a_256x240.png); }
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
@ -283,8 +283,8 @@
.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; -khtml-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
/* Overlays */
.ui-widget-overlay { background: #aaaaaa url(/themes/default/images/smoothness/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(/themes/default/images/smoothness/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -khtml-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/*
.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -khtml-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/*
* jQuery UI Resizable 1.8.18
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 B

View File

@ -1,107 +0,0 @@
$(document).ready(function()
{
//Bulle d'aide d'activation
$('#aideLigne').click(function() {
$('.aide > img').css('display','block');
createGrowl(
$(this).attr('title'),
"Vous avez activé l'aide en ligne.<br/>En cliquant sur les icônes correspondantes un message apparaîtra dans cette fenêtre.<br/>Celle-ci disparaît automatiquement au bout de 5 secondes.",
false
);
});
//Bulle d'aide
$('.aide > img').on('click', function() {
var obj = $(this).parent().find('div');
var titre = obj.attr('id');
var texte = obj.html();
createGrowl(titre, texte, false);
});
window.createGrowl = function(titre, texte, persistent) {
// Use the last visible jGrowl qtip as our positioning target
var target = $('.qtip.jgrowl:visible:last');
// Create your jGrowl qTip...
$(document.body).qtip({
// Any content config you want here really.... go wild!
content: {
text: texte,
title: {
text: titre,
button: true
}
},
position: {
my: 'top right', // Not really important...
at: (target.length ? 'bottom' : 'top') + ' right', // If target is window use 'top right' instead of 'bottom right'
target: target.length ? target : $(document.body), // Use our target declared above
adjust: { y: 5 } // Add some vertical spacing
},
show: {
event: false, // Don't show it on a regular event
ready: true, // Show it when ready (rendered)
effect: function() { $(this).stop(0,1).fadeIn(400); }, // Matches the hide effect
delay: 0, // Needed to prevent positioning issues
// Custom option for use with the .get()/.set() API, awesome!
persistent: persistent
},
hide: {
event: false, // Don't hide it on a regular event
effect: function(api) {
// Do a regular fadeOut, but add some spice!
$(this).stop(0,1).fadeOut(400).queue(function() {
// Destroy this tooltip after fading out
api.destroy();
// Update positions
updateGrowls();
})
}
},
style: {
classes: 'jgrowl ui-tooltip-dark ui-tooltip-rounded', // Some nice visual classes
tip: false // No tips for this one (optional ofcourse)
},
events: {
render: function(event, api) {
// Trigger the timer (below) on render
timer.call(api.elements.tooltip, event);
}
}
})
.removeData('qtip');
};
// Make it a window property see we can call it outside via updateGrowls() at any point
window.updateGrowls = function() {
// Loop over each jGrowl qTip
var each = $('.qtip.jgrowl:not(:animated)');
each.each(function(i) {
var api = $(this).data('qtip');
// Set the target option directly to prevent reposition() from being called twice.
api.options.position.target = !i ? $(document.body) : each.eq(i - 1);
api.set('position.at', (!i ? 'top' : 'bottom') + ' right');
});
};
// Setup our timer function
function timer(event) {
var api = $(this).data('qtip'),
lifespan = 5000; // 5 second lifespan
// If persistent is set to true, don't do anything.
if(api.get('show.persistent') === true) { return; }
// Otherwise, start/clear the timer depending on event type
clearTimeout(api.timer);
if(event.type !== 'mouseover') {
api.timer = setTimeout(api.hide, lifespan);
}
}
// Utilise delegate so we don't have to rebind for every qTip!
$(document).delegate('.qtip.jgrowl', 'mouseover mouseout', timer);
});

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,39 +0,0 @@
/*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net)
* Licensed under the MIT License (LICENSE.txt).
*
* Version 2.1.2
*/
(function($){
$.fn.bgiframe = ($.browser.msie && /msie 6\.0/i.test(navigator.userAgent) ? function(s) {
s = $.extend({
top : 'auto', // auto == .currentStyle.borderTopWidth
left : 'auto', // auto == .currentStyle.borderLeftWidth
width : 'auto', // auto == offsetWidth
height : 'auto', // auto == offsetHeight
opacity : true,
src : 'javascript:false;'
}, s);
var html = '<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+
'style="display:block;position:absolute;z-index:-1;'+
(s.opacity !== false?'filter:Alpha(Opacity=\'0\');':'')+
'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+
'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+
'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+
'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+
'"/>';
return this.each(function() {
if ( $(this).children('iframe.bgiframe').length === 0 )
this.insertBefore( document.createElement(html), this.firstChild );
});
} : function() { return this; });
// old alias
$.fn.bgIframe = $.fn.bgiframe;
function prop(n) {
return n && n.constructor === Number ? n + 'px' : n;
}
})(jQuery);

View File

@ -1,120 +0,0 @@
/**
* jQuery custom checkboxes
*
* Copyright (c) 2008 Khavilo Dmitry (http://widowmaker.kiev.ua/checkbox/)
* Licensed under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*
* @version 1.3.0 Beta 1
* @author Khavilo Dmitry
* @mailto wm.morgun@gmail.com
**/
(function($){
/* Little trick to remove event bubbling that causes events recursion */
var CB = function(e)
{
if (!e) var e = window.event;
e.cancelBubble = true;
if (e.stopPropagation) e.stopPropagation();
};
$.fn.checkbox = function(options) {
/* IE6 background flicker fix */
try { document.execCommand('BackgroundImageCache', false, true); } catch (e) {}
/* Default settings */
var settings = {
cls: 'jquery-checkbox', /* checkbox */
empty: 'empty.png' /* checkbox */
};
/* Processing settings */
settings = $.extend(settings, options || {});
/* Adds check/uncheck & disable/enable events */
var addEvents = function(object)
{
var checked = object.checked;
var disabled = object.disabled;
var $object = $(object);
if ( object.stateInterval )
clearInterval(object.stateInterval);
object.stateInterval = setInterval(
function()
{
if ( object.disabled != disabled )
$object.trigger( (disabled = !!object.disabled) ? 'disable' : 'enable');
if ( object.checked != checked )
$object.trigger( (checked = !!object.checked) ? 'check' : 'uncheck');
},
10 /* in miliseconds. Low numbers this can decrease performance on slow computers, high will increase responce time */
);
return $object;
};
//try { console.log(this); } catch(e) {}
/* Wrapping all passed elements */
return this.each(function()
{
var ch = this; /* Reference to DOM Element*/
var $ch = addEvents(ch); /* Adds custom events and returns, jQuery enclosed object */
/* Removing wrapper if already applied */
if (ch.wrapper) ch.wrapper.remove();
/* Creating wrapper for checkbox and assigning "hover" event */
ch.wrapper = $('<span class="' + settings.cls + '"><span class="mark"><img src="' + settings.empty + '" /></span></span>');
ch.wrapperInner = ch.wrapper.children('span:eq(0)');
ch.wrapper.hover(
function(e) { ch.wrapperInner.addClass(settings.cls + '-hover');CB(e); },
function(e) { ch.wrapperInner.removeClass(settings.cls + '-hover');CB(e); }
);
/* Wrapping checkbox */
$ch.css({position: 'absolute', zIndex: -1, visibility: 'hidden'}).after(ch.wrapper);
/* Ttying to find "our" label */
var label = false;
if ($ch.attr('id'))
{
label = $('label[for='+$ch.attr('id')+']');
if (!label.length) label = false;
}
if (!label)
{
/* Trying to utilize "closest()" from jQuery 1.3+ */
label = $ch.closest ? $ch.closest('label') : $ch.parents('label:eq(0)');
if (!label.length) label = false;
}
/* Labe found, applying event hanlers */
if (label)
{
label.hover(
function(e) { ch.wrapper.trigger('mouseover', [e]); },
function(e) { ch.wrapper.trigger('mouseout', [e]); }
);
label.click(function(e) { $ch.trigger('click',[e]); CB(e); return false;});
}
ch.wrapper.click(function(e) { $ch.trigger('click',[e]); CB(e); return false;});
$ch.click(function(e) { CB(e); });
$ch.bind('disable', function() { ch.wrapperInner.addClass(settings.cls+'-disabled');}).bind('enable', function() { ch.wrapperInner.removeClass(settings.cls+'-disabled');});
$ch.bind('check', function() { ch.wrapper.addClass(settings.cls+'-checked' );}).bind('uncheck', function() { ch.wrapper.removeClass(settings.cls+'-checked' );});
/* Disable image drag-n-drop for IE */
$('img', ch.wrapper).bind('dragstart', function () {return false;}).bind('mousedown', function () {return false;});
/* Firefox antiselection hack */
if ( window.getSelection )
ch.wrapper.css('MozUserSelect', 'none');
/* Applying checkbox state */
if ( ch.checked )
ch.wrapper.addClass(settings.cls + '-checked');
if ( ch.disabled )
ch.wrapperInner.addClass(settings.cls + '-disabled');
});
}
})(jQuery);

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -51,16 +51,6 @@
width:120px;
}
table.tablesorter thead tr .header {
background:url(/themes/default/images/tablesorter/bg.gif) no-repeat center right;
cursor:pointer;
}
table.tablesorter thead tr .headerSortUp {
background-image: url(/themes/default/images/tablesorter/asc.gif);
}
table.tablesorter thead tr .headerSortDown {
background-image: url(/themes/default/images/tablesorter/desc.gif);
}
#tri li {
list-style-type:none;
margin-left:10px;