omarpop23
عدد المساهمات : 1522 معدل النشاط : 6843 السُمعة : 218
| موضوع: رد: كيف يمكنني أن أضيف خاصية تغيير الألوان في قالب تومبيلات ؟ الأحد 12 يونيو 2016 - 22:25 | |
| كود الجافا - الكود:
-
(function() { 'DEVELOPED BY ANGE TUTEUR'; 'NO DISTRIBUTION WITHOUT CONSENT OF THE AUTHOR'; 'ORIGIN : http://fmdesign.forumotion.com/t530-simple-theme-changer#7800'; // 0 = phpbb2 // 1 = phpbb3 // 2 = punbb // 3 = invision var version = 0; // forum version window.fa_theme_color = { version : version, delay : 500, // delay between rainbow colors ( 500 = 0.5s ) transition : 1000, // transition between colors ( 1000 = 1s ) transition_all : false, // set to true if you want all themes to utilize the transitions // elements the selector is attached to attachTo : [ '.bodyline > table:first-child', // phpbb2 '#page-header', // phpbb3 '#pun-head', // punbb '#submenu' // invision ][version], selected : my_getcookie('fa_theme_color') || 'Select a theme', // selected theme // color palettes palette : { 'Select a theme' : '', 'Random theme' : [], 'Rainbow' : '', 'Persian Red' : ['#D44', '#C33', '#B22', '#900', '#522'], // hue 000 'Chestnut Rose' : ['#D77', '#C66', '#B55', '#933', '#533'], // hue 000 'Eunry' : ['#DAA', '#C99', '#B88', '#966', '#544'], // hue 000 'Tuscany' : ['#D64', '#C63', '#B52', '#930', '#532'], // hue 020 'Antique Brass' : ['#DA7', '#C96', '#B85', '#963', '#543'], // hue 029 'Hokey Pokey' : ['#DA4', '#C93', '#B82', '#960', '#542'], // hue 039 'Earls Green' : ['#DD4', '#CC3', '#BB2', '#990', '#552'], // hue 060 'Laser' : ['#DD7', '#CC6', '#BB5', '#993', '#553'], // hue 060 'Pine Glade' : ['#DDA', '#CC9', '#BB8', '#996', '#554'], // hue 060 'Celery' : ['#AD4', '#9C3', '#8B2', '#690', '#452'], // hue 080 'Wild Willow' : ['#AD7', '#9C6', '#8B5', '#693', '#453'], // hue 090 'Atlantis' : ['#7D4', '#6C3', '#5B2', '#390', '#352'], // hue 100 'Apple' : ['#4D4', '#3C3', '#2B2', '#090', '#252'], // hue 120 'Mantis' : ['#7D7', '#6C6', '#5B5', '#393', '#353'], // hue 120 'De York' : ['#ADA', '#9C9', '#8B8', '#696', '#454'], // hue 120 'Mountain Meadow' : ['#4D7', '#3C6', '#2B5', '#093', '#253'], // hue 140 'Emerald' : ['#7DA', '#6C9', '#5B8', '#396', '#354'], // hue 150 'Shamrock' : ['#4DA', '#3C9', '#2B8', '#096', '#254'], // hue 160 'Turquoise' : ['#4DD', '#3CC', '#2BB', '#099', '#255'], // hue 180 'Downy' : ['#7DD', '#6CC', '#5BB', '#399', '#355'], // hue 180 'Sinbad' : ['#ADD', '#9CC', '#8BB', '#699', '#455'], // hue 180 'Curious Blue' : ['#4AD', '#39C', '#28B', '#069', '#245'], // hue 200 'Danube' : ['#7AD', '#69C', '#58B', '#369', '#345'], // hue 210 'Mariner' : ['#47D', '#36C', '#25B', '#039', '#235'], // hue 220 'Governor Bay' : ['#44D', '#33C', '#22B', '#009', '#225'], // hue 240 'Blue Marguerite' : ['#77D', '#66C', '#55B', '#339', '#335'], // hue 240 'Blue Bell' : ['#AAD', '#99C', '#88B', '#669', '#445'], // hue 240 'Purple Heart' : ['#74D', '#63C', '#52B', '#309', '#325'], // hue 260 'Amethyst' : ['#A7D', '#96C', '#85B', '#639', '#435'], // hue 270 'Purple' : ['#A4D', '#93C', '#82B', '#609', '#425'], // hue 279 'Cerise' : ['#D4D', '#C3C', '#B2B', '#909', '#525'], // hue 300 'Fuchsia Pink' : ['#D7D', '#C6C', '#B5B', '#939', '#535'], // hue 300 'Lilac' : ['#DAD', '#C9C', '#B8B', '#969', '#545'], // hue 300 'Red Violet' : ['#D4A', '#C39', '#B28', '#906', '#524'], // hue 321 'Hopbush' : ['#D7A', '#C69', '#B58', '#936', '#534'], // hue 331 'Hibiscus' : ['#D47', '#C36', '#B25', '#903', '#523'] // hue 340 }, // change the current theme change : function(color, select) { var head = $('head'), style = document.getElementById('fa_theme_style'); my_setcookie('fa_theme_color', color); // update selected theme // remove old styles if (style) { head[0].removeChild(style); } fa_theme_color.selector.firstChild.innerHTML = 'Default theme'; // change select a theme texts // Random / Normal Themes if (!/Select a theme|Rainbow/.test(color) && fa_theme_color.palette[color]) { fa_theme_color.selected = color == 'Random theme' ? fa_theme_color.palette['Random theme'][Math.floor(Math.random() * fa_theme_color.palette['Random theme'].length)] : color; fa_theme_color.selector.style.backgroundColor = fa_theme_color.palette[fa_theme_color.selected][1]; fa_theme_color.selector.style.borderColor = fa_theme_color.palette[fa_theme_color.selected][2]; head.append('<style type="text/css" id="fa_theme_style">' + fa_theme_color.css() + '</style>'); } else if (color == 'Rainbow') { // Rainbow theme if (fa_theme_color.stop) { fa_theme_color.selected = color; fa_theme_color.selector.style.backgroundColor = fa_theme_color.palette[select][1]; fa_theme_color.selector.style.borderColor = fa_theme_color.palette[select][2]; head.append('<style type="text/css" id="fa_theme_style">' + fa_theme_color.css(select) + '</style>'); } else { fa_theme_color.rainbow(); } } else { // No theme fa_theme_color.selector.style.backgroundColor = '#999'; fa_theme_color.selector.style.borderColor = '#888'; fa_theme_color.selector.firstChild.innerHTML = 'Select a theme'; } // delete rainbow assets if it's not selected if (color != 'Rainbow' && fa_theme_color.stop) { if (!fa_theme_color.transition_all) { head[0].removeChild(document.getElementById('fa_rainbow_smoothness')); } window.clearInterval(fa_theme_color.interval); delete fa_theme_color.index; delete fa_theme_color.stop; } }, // get and return the theme CSS per version css : function(select) { var palette = fa_theme_color.palette[select || fa_theme_color.selected], all = '::-webkit-scrollbar { width:17px !important; height:17px !important; }'+ '::-webkit-scrollbar-track { background:#DDD !important; }'+ '::-webkit-scrollbar-thumb { border:2px solid #DDD !important; }'+ '::-webkit-scrollbar-button { background:url(http://i86.servimg.com/u/f86/18/21/41/30/webkit10.gif) no-repeat 0 0 !important; height:17px !important; width:17px !important; }'+ '::-webkit-scrollbar-button:vertical:increment { background-position:-17px 0 !important }'+ '::-webkit-scrollbar-button:horizontal:decrement { background-position:-34px 0 !important }'+ '::-webkit-scrollbar-button:horizontal:increment { background-position:-51px 0 !important }'+ '::selection { color:#FFF; background-color:' + palette[1] + ' !important; }'+ '::-moz-selection { color:#FFF; background-color:' + palette[1] + ' !important; }'+ '::-webkit-scrollbar-thumb, ::-webkit-scrollbar-button { background-color:' + palette[1] + ' !important; }'+ '::-webkit-scrollbar-thumb:hover, ::-webkit-scrollbar-button:hover { background-color:' + palette[2] + ' !important; }'+ '::-webkit-scrollbar-thumb:active, ::-webkit-scrollbar-button:active { background-color:' + palette[3] + ' !important; }'; switch (fa_theme_color.version) { case 0 : // phpbb2 return 'a, a:link, a:visited, a.forumlink, a.forumlink:link, a.forumlink:visited, a.topictitle, a.topictitle:link, a.topictitle:visited { color:' + palette[3] + '; }'+ 'a:hover, a.forumlink:hover, a.topictitle:hover { color:' + palette[1] + '; }'+ 'th, td.cat, td.catBottom, td.catHead, td.catLeft, td.catRight, td.catSides { background:' + palette[1] + '!important; }'+ '.forumline { border-color:' + palette[1] + '; }'+ 'th, td.cat, td.catBottom, td.catHead, td.catLeft, td.catRight, td.catSides, .cattitle, h1.pagetitle, .module-title, .catHead .genmed, .secondarytitle h2, .catBottom a, .catLeft .genmed { color:#FFF !important; }'+ all; case 1 : // phpbb3 return 'a, a:link, a.forumtitle, a.topictitle, a:visited, .postprofile a:active, .postprofile a:link, .postprofile a:visited, .postprofile dt.author a { color:' + palette[3] + '; }'+ 'a:hover, a.forumtitle:hover, a.topictitle:hover, .postprofile a:hover, .postprofile dt.author a:hover { color:' + palette[1] + '; }'+ 'h1, h2, h3, h4, h5, h6, .h3, h2.h3, h1.page-title, hr, hr.dashed, .content h1, .content h2, .panel h1, .panel h2, #cp-main h1 { color:' + palette[3] + '; border-color:' + palette[3] + '; }'+ '.headerbar, .forabg, .forumbg { background:' + palette[1] + '!important; }'+ all; case 2 : // punbb return 'a, a:link, a:visited, .pun a:link, .pun a:visited { color:' + palette[3] + '; }'+ 'a:hover, .pun a:hover { color:' + palette[1] + '; }'+ '#pun-intro, .main .main-foot, .main .main-head, #tabs ul li.activetab a { background:' + palette[1] + '!important; }'+ '#tabs ul li.activetab a { border-color:' + palette[1] + '!important; }'+ '#pun-navlinks { background:' + palette[4] + '!important; }'+ '#pun-navlinks a.mainmenu, .main .main-foot, .main .main-head, #tabs ul li.activetab a, #tabs ul li.activetab a * { color:#FFF!important; }'+ '#pun-intro { border:none; }'+ all; case 3 : // invision return 'a, a:link, a:visited { color:' + palette[3] + '; }'+ 'a:hover { color:' + palette[1] + '; }'+ 'div#logostrip, div.maintitle, ul.privmsg li { background:' + palette[1] + '!important; }'+ '.box-content { border-bottom-color:' + palette[4] + '!important; }'+ '#submenu, table.ipbtable tfoot td, #gfooter { background:' + palette[4] + '!important; }'+ '#submenu ul li a:hover { background:' + palette[3] + '!important; }'+ 'div.maintitle, #submenu, #submenu a.mainmenu, table.ipbtable tfoot td, #gfooter, #gfooter a { color:#FFF!important; }'+ all; default : // unknown return ''+ all; } }, // get and return the transition CSS per version // helps make the transition in colors smooth applyTransitionRules : function() { switch (fa_theme_color.version) { case 0 : // phpbb2 return 'a, a:link, a:visited, a.forumlink, a.forumlink:link, a.forumlink:visited, a.topictitle, a.topictitle:link, a.topictitle:visited, th, td.cat, td.catBottom, td.catHead, td.catLeft, td.catRight, td.catSides, .forumline { transition:' + fa_theme_color.transition + 'ms; }'; case 1 : // phpbb3 return 'a, a:link, a.forumtitle, a.topictitle, a:visited, .postprofile a:active, .postprofile a:link, .postprofile a:visited, .postprofile dt.author a,.headerbar, .forabg, .forumbg, a.button2, body:last-child a.button1, button.button2, input.button1, input.button2, .button, input[type="button"], input[type="submit"], h1, h2, h3, h4, h5, h6, .h3, h2.h3, h1.page-title, hr, hr.dashed, select, input, textarea, .inputbox { transition:' + fa_theme_color.transition + 'ms; }'; case 2 : // punbb return 'a, a:link, a:visited, .pun a:link, .pun a:visited, #pun-intro, .main .main-foot, .main .main-head, #pun-navlinks { transition:' + fa_theme_color.transition + 'ms; }'; case 3 : // invision return 'a, a:link, a:visited, div#logostrip, div.maintitle, .box-content, #submenu, table.ipbtable tfoot td, #gfooter, #submenu ul li a, ul.privmsg li { transition:' + fa_theme_color.transition + 'ms; }'; default : // unknown return ''; } }, // setup the rainbow assets rainbow : function() { if (!fa_theme_color.transition_all) { $('head').append('<style type="text/css" id="fa_rainbow_smoothness">' + fa_theme_color.applyTransitionRules() + '</style>'); } fa_theme_color.index = 0; fa_theme_color.stop = fa_theme_color.palette['Random theme'].length; fa_theme_color.change('Rainbow', fa_theme_color.palette['Random theme'][fa_theme_color.index]); fa_theme_color.interval = window.setInterval(function() { if (++fa_theme_color.index >= fa_theme_color.stop) { fa_theme_color.index = 0; } fa_theme_color.change('Rainbow', fa_theme_color.palette['Random theme'][fa_theme_color.index]); }, fa_theme_color.transition + fa_theme_color.delay); } }; var htmlStr = '', i; // put together the theme options and random array for (i in fa_theme_color.palette) { if (typeof fa_theme_color.palette[i] != 'undefined') { if (!/Random theme|Select a theme|Rainbow/.test(i)) { fa_theme_color.palette['Random theme'][fa_theme_color.palette['Random theme'].length] = i; } htmlStr += '<option value="' + i + '" ' + ( fa_theme_color.selected == i ? 'selected="true"' : '' ) + ' style="background-color:' + (/Random theme|Select a theme|Rainbow/.test(i) ? '#FFF;color:#000;' : fa_theme_color.palette[i][2]) + '">' + i + '</option>'; } } // create the theme selector fa_theme_color.selector = $('<select id="fa_theme_selector" />').html(htmlStr).change(function() { fa_theme_color.change(this.value); })[0]; fa_theme_color.change(fa_theme_color.selected); // apply the selected theme // add the theme selector to the document $(function() { $(fa_theme_color.attachTo).after([fa_theme_color.selector, $('<div class="clear" />')[0]]); }); // basic styles for the theme selector document.write('<style type="text/css">#fa_theme_selector {color:#FFF;float:right;cursor:pointer;padding:3px 6px;margin:3px;}' + ( fa_theme_color.transition_all ? fa_theme_color.applyTransitionRules() : '' ) + '</style>'); }());
| |
|