]> git.joonet.de Git - adminer.git/commitdiff
Change favicon during AJAX
authorJakub Vrana <jakub@vrana.cz>
Fri, 11 Mar 2011 22:21:54 +0000 (23:21 +0100)
committerJakub Vrana <jakub@vrana.cz>
Fri, 11 Mar 2011 22:21:54 +0000 (23:21 +0100)
adminer/include/design.inc.php
adminer/static/functions.js
adminer/static/loader.gif

index 95676457a75687ea7687a5310bc00cbba5ba40fc..60765648bdf9e05a9f54ffb6a9ae9028468027e0 100644 (file)
@@ -22,7 +22,7 @@ function page_header($title, $error = "", $breadcrumb = array(), $title2 = "") {
 <meta http-equiv="Content-Script-Type" content="text/javascript">
 <meta name="robots" content="noindex">
 <title><?php echo $title_page; ?></title>
-<link rel="shortcut icon" type="image/x-icon" href="../adminer/static/favicon.ico">
+<link rel="shortcut icon" type="image/x-icon" href="../adminer/static/favicon.ico" id="favicon">
 <link rel="stylesheet" type="text/css" href="../adminer/static/default.css">
 <?php if (file_exists("adminer.css")) { ?>
 <link rel="stylesheet" type="text/css" href="adminer.css">
index 6e1008c1c5bbf5373df8ce2b2a4e16d5536cb903..aa882df9a66b2cbd3285d065dc6059a585bde0d5 100644 (file)
@@ -270,6 +270,18 @@ function ajaxSetHtml(url) {
        });
 }
 
+/** Replace favicon
+* @param string
+* @return string original href
+*/
+function replaceFavicon(href) {
+       var favicon = document.getElementById('favicon');
+       var orig = favicon.href;
+       favicon.href = href;
+       favicon.parentNode.appendChild(favicon); // to replace the icon in Firefox
+       return orig;
+}
+
 var ajaxState = 0;
 
 /** Safely load content to #content
@@ -280,9 +292,11 @@ var ajaxState = 0;
 */
 function ajaxSend(url, data, popState) {
        var currentState = ++ajaxState;
+       var favicon = replaceFavicon('../adminer/static/loader.gif');
        setHtml('loader', '<img src="../adminer/static/loader.gif" alt="">');
        return ajax(url, function (text) {
                if (currentState == ajaxState) {
+                       replaceFavicon(favicon);
                        if (text === undefined) {
                                setHtml('loader', '');
                        } else {
index f2a1bc0c6f545e20e631a96e8e92f9822e75d046..d0bce1542342e912da81a2c260562df172f30d73 100644 (file)
Binary files a/adminer/static/loader.gif and b/adminer/static/loader.gif differ