Linux webm008.cluster115.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
Apache
: 10.115.20.8 | : 216.73.216.59
Cant Read [ /etc/named.conf ]
8.1.34
quelfutuu
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
home /
quelfutuu /
www /
tmp /
couteau-suisse /
[ HOME SHELL ]
Name
Size
Permission
Action
.ok
0
B
-rw-rw-rw-
2434c8c92161fb4bb14261d77ec91f...
80
B
-rw-rw-rw-
a8938d489eef7ea8c385847820b539...
2.81
KB
-rw-rw-rw-
b0d58124d12fbbcc8d40a9b95e94dd...
206
B
-rw-rw-rw-
config.php
8.27
KB
-rw-rw-rw-
header.css
3.85
KB
-rw-rw-rw-
header.css.html
4.5
KB
-rw-rw-rw-
header.js
17.46
KB
-rw-rw-rw-
header.js.html
17.68
KB
-rw-rw-rw-
header_prive.css
3.86
KB
-rw-rw-rw-
header_prive.js
17.47
KB
-rw-rw-rw-
mes_fonctions.php
40.25
KB
-rw-rw-rw-
mes_options.php
2.51
KB
-rw-rw-rw-
mes_outils.php
144
B
-rw-rw-rw-
mes_spip_options.php
454
B
-rw-rw-rw-
pipelines.php
7.57
KB
-rw-rw-rw-
Delete
Unzip
Zip
${this.title}
Close
Code Editor : header_prive.js
var cs_prive=window.location.pathname.match(/\/ecrire\/$/)!=null; jQuery.fn.cs_todo=function(){return this.not('.cs_done').addClass('cs_done');}; var sommaire_sel = 'div.cs_sommaire_titre_avec_fond, div.cs_sommaire_titre_sans_fond'; // compatibilite Ajax : ajouter "this" a "jQuery" pour mieux localiser les actions // et tagger avec cs_done pour eviter de binder plrs fois le meme bloc function cs_sommaire_init() { jQuery(sommaire_sel, this) .cs_todo() .click( function(){ jQuery(this).toggleClass('cs_sommaire_replie') .next().toggleClass('cs_sommaire_invisible') // annulation du clic return false; }); } // Sauve l'etat du 1er sommaire de la page dans un cookie si on quitte la page, et le remet quand on revient // pour SPIP < 2.0, il faut le plugin jquery.cookie.js function cs_sommaire_cookie() { if(typeof jQuery.cookie!='function') return; var replie = jQuery.cookie('cs_sommaire'); jQuery.cookie('cs_sommaire', null); if (Number(replie)) jQuery(sommaire_sel).eq(0).addClass('cs_sommaire_replie') .next().toggleClass('cs_sommaire_invisible'); jQuery(window).bind('unload', function() { jQuery.cookie('cs_sommaire', Number(jQuery(sommaire_sel).eq(0).is('.cs_sommaire_replie')) ); }); } var gloss_el = null; var gloss_dt = null; var gloss_dd = null; var gloss_dl = null; // compatibilite Ajax : ajouter "this" a "jQuery" pour mieux localiser les actions // et tagger avec cs_done pour eviter de binder plrs fois le meme bloc function glossaire_init() { if(jQuery('span.gl_js', this).length) { if(!jQuery('#glossOverDiv').length) { jQuery('body').append('<div id="glossOverDiv" style="position:absolute; display:none; visibility: hidden;"><span class="gl_dl"><span class="gl_dt">TITRE</span><span class="gl_dd">Definition</span></span></div>'); gloss_el = document.getElementById('glossOverDiv'); gloss_dl = gloss_el.firstChild; gloss_dt = gloss_dl.firstChild; gloss_dd = gloss_dl.lastChild; } jQuery('span.gl_mot', this).cs_todo().hover( function(e) { $this = jQuery(this); // cas du surligneur (SPIP 2) if(this.firstChild.className=="spip_surligne") { this.className = "gl_mot spip_surligne"; this.innerHTML = this.firstChild.innerHTML; } gloss_dt.innerHTML = $this.parent().children('.gl_js')[0].title; // titre gloss_dd.innerHTML = $this.parent().children('.gl_jst')[0].title; // definition reg = $this.css('font-size').match(/^\d\d?(?:\.\d+)?px/); if(reg) gloss_el.style.fontSize = reg[0]; jQuery(gloss_el) .css('top', e.pageY.toString()+"px") .css('left', e.pageX.toString()+"px") .css('font-family', jQuery(this).css('font-family')); gloss_el.style.display = 'block'; gloss_el.style.visibility = 'visible'; if(typeof jQuery.fn.offset=="function") { // plugin jquery.dimensions disponible a partir de SPIP 2 if(1) {///////////////////////// optimisation du placement, encore en test... var $glossOverDiv = jQuery('#glossOverDiv'); var $gloss_dl = jQuery(gloss_dl); positionBy = 'auto'; // Type de positionnement : 'dessus', 'dessous', 'auto', 'mouse' (a tester...) ombre = 0; // Taille d'une ombre, en pixels (non implemente) decalX = 2; // decalage entre le glossaire et le lien appelant width = 180; // largeur totale de #glossOverDiv : definie dans glossaire.css height = 'auto'; // hauteur totale de #glossOverDiv : 'auto' ou nombre de pixels // initiation verticale var glossHeight, wHeight; var linkHeight = this.offsetHeight; var defHeight = isNaN(parseInt(height, 10)) ? 'auto' : (/\D/g).test(height) ? height : height + 'px'; var sTop, linkTop, posY, mouseY, baseLine; sTop = jQuery(document).scrollTop(); // initiation horizontale var glossWidth = width + ombre; var linkWidth = this.offsetWidth; var linkLeft, posX, mouseX, winWidth; winWidth = jQuery(window).width(); // c'est parti ! linkTop = posY = $this.offset().top; linkLeft = $this.offset().left; mouseX = e.pageX; mouseY = e.pageY; // securite pour l'instant $glossOverDiv.css({margin:'0px'}); $gloss_dl.css({margin:'0px'}); // calcul de la position horizontale : glossaire au centre du lien posX = Math.max(linkLeft - (glossWidth-linkWidth)/2,0); if (positionBy == 'dessous' || positionBy == 'dessus') { // glossaire fixe $glossOverDiv.css({left: posX + 'px'}); } else { // au cas ou, glossaire a droite ou a gauche du lien ? posX2 = (linkWidth > linkLeft && linkLeft > glossWidth) || (linkLeft + linkWidth + glossWidth + decalX > winWidth) ? linkLeft - glossWidth - decalX : linkWidth + linkLeft + decalX; // suivre la souris ? if (positionBy == 'mouse' || linkWidth + glossWidth > winWidth) { posX = Math.max(mouseX - (glossWidth-linkWidth)/2,0); // glossaire au centre de la souris /*if (mouseX + 20 + glossWidth > winWidth) posX = (mouseX - glossWidth) >= 0 ? mouseX - glossWidth : mouseX - (glossWidth/2); else posX = mouseX;*/ } var pY = e.pageY; $glossOverDiv.css({left: (posX > 0 && positionBy != 'dessus') ? posX : (mouseX + (glossWidth/2) > winWidth) ? winWidth/2 - glossWidth/2 : Math.max(mouseX - (glossWidth/2),0)}); } // calcul de la position verticale wHeight = jQuery(window).height(); $glossOverDiv.css({overflow: defHeight == 'auto' ? 'visible' : 'auto', height: defHeight}); glossHeight = defHeight == 'auto' ? Math.max($gloss_dl.outerHeight(),$gloss_dl.height()) : parseInt(defHeight,10); glossHeight += ombre; tipY = posY; baseLine = sTop + wHeight; if (positionBy == 'dessous') tipY = posY + linkHeight + 2; // glossaire fixe sous le lien else if (positionBy == 'dessus') tipY = posY - glossHeight - 2; // glossaire fixe au-dessus du lien else if ( posX < mouseX && Math.max(posX, 0) + glossWidth > mouseX ) { // glossaire cache le lien if (posY + glossHeight > baseLine && mouseY - sTop > glossHeight) { tipY = posY - glossHeight - 2; } else { tipY = posY + linkHeight + 2; } } else if ( posY + glossHeight > baseLine ) { tipY = (glossHeight >= wHeight) ? sTop : baseLine - glossHeight; } else if ($this.css('display') == 'block' || positionBy == 'mouse') { tipY = pY; } else { tipY = posY /*- ombre*/; } $glossOverDiv.css({top: tipY + 'px'}); }//////////////////////////////////////// } // typeof jQuery.fn.offset=="function" gloss_el.style.visibility = 'visible'; }, function(e) { gloss_el.style.display = 'none'; gloss_el.style.visibility = 'hidden'; } ); // accessibilite au clavier if(typeof jQuery.fn.offset=="function") { // plugin jquery.dimensions disponible a partir de SPIP 2 jQuery('a.cs_glossaire').focus( function() { legl_mot = this.firstChild; gloss_dt.innerHTML = jQuery(this).children('.gl_js')[0].title; // titre gloss_dd.innerHTML = jQuery(this).children('.gl_jst')[0].title; // definition reg = jQuery(this.firstChild).css('font-size').match(/^\d\d?(?:\.\d+)?px/); if(reg) gloss_el.style.fontSize = reg[0]; var result = jQuery(this).offset({ scroll: false }); jQuery(gloss_el) .css('top',result.top+"px") .css('left', result.left+"px") .css('font-family', jQuery(this.firstChild).css('font-family')); gloss_el.style.display = 'block'; gloss_el.style.visibility = 'visible'; } ); jQuery('a.cs_glossaire').blur( function() { gloss_el.style.display = 'none'; gloss_el.style.visibility = 'hidden'; } ); } // typeof jQuery.fn.offset=="function" } } // variables modifiables afin d'initialiser l'ouverture d'un bloc (simple ou numerote) if(typeof(bloc_actif) == 'undefined') var bloc_actif = ''; if(typeof(bloc_actif_num) == 'undefined') var bloc_actif_num = ''; // fonction surchargeable : gestion du slide jQuery jQuery.fn.blocs_toggle_slide_dist = function( selector ) { this.toggleClass('blocs_slide'); if(typeof jQuery.fn.blocs_toggle_slide=='function') return this.blocs_toggle_slide(); return this.is(".blocs_slide") ? this.slideUp(blocs_slide) : this.slideDown(blocs_slide); }; jQuery.fn.blocs_set_title = function( selector ) { var title = this.parent().find('.blocs_title:last').text(); if(!title) title = blocs_title_def; title = title.split(blocs_title_sep); this.children('a').attr('title', title[jQuery(this).is('.blocs_replie')?0:1]); return this; }; // fonction de de/re-pliement jQuery.fn.blocs_toggle = function() { if(!this.length) return this; if(this.length > 1) { this.each(function() { $(this).eq(0).blocs_toggle(); }); return this; } // applique-t-on la fonction sur cs_blocs ou sur blocs_titre ? var cible = this.is('.cs_blocs') ? this.children('.blocs_titre').eq(0) : this; // on replie/deplie la cible... cible.toggleClass('blocs_replie').blocs_set_title(); var dest = this[0].id.match('^cs_bloc_id_') ? jQuery('div.'+this[0].id) : cible.next(); if(blocs_slide === 'aucun') { dest.toggleClass('blocs_invisible'); // est-on sur un resume ? if (dest.is('div.blocs_resume')) dest.next().toggleClass('blocs_invisible'); } else { dest.blocs_toggle_slide_dist(); // est-on sur un resume ? if (dest.is('div.blocs_resume')) dest.next().blocs_toggle_slide_dist(); } // est-on sur un bloc ajax ? var lien = cible.children(); var url = lien.attr("href"); if(url != 'javascript:;' && !url.endsWith('#_foo')) { // une fois le bloc ajax en place, plus besoin de le recharger ensuite lien.attr("href", '#_foo');// 'javascript:;'); // ici, on charge ! cible.parent().children(".blocs_destination") //.animeajax() .load(url); } return this; }; // replie tout sauf le bloc appelant et sa lignee parentale jQuery.fn.blocs_replie_tout = function() { if(blocs_replier_tout) { // applique-t-on la fonction sur cs_blocs ou sur blocs_titre ? var cible = this.is('.cs_blocs')? this : this.parents('div.cs_blocs'); // lignee du bloc var lignee = cible.children('.blocs_titre'); jQuery('.blocs_titre').not('.blocs_replie').not(lignee).blocs_toggle(); } return this; } // une variable globale stockant le(s) bloc(s) a deplier si un clic ajax a eu lieu var blocs_clic_ajax = null; // compatibilite Ajax : ajouter "this" a "jQuery" pour mieux localiser les actions // et tagger avec cs_done pour eviter de binder plrs fois le meme bloc function blocs_init() { // clic sur un titre de bloc jQuery('.blocs_titre', this).cs_todo() .click( function(){ jQuery(this).blocs_replie_tout().blocs_toggle(); // annulation du clic return false; }) .each( function(){ jQuery(this).blocs_set_title(); }); // pour un lien 'replier_bloc' present dans le bloc jQuery('.blocs_destination a.replier_bloc', this).cs_todo() .click( function(){ var s = jQuery(this).parents('.cs_blocs:first'); // scroll vers le debut du bloc, si le plugin 'SrollTo' est present if(typeof jQuery.fn.scrollTo == "function") jQuery('body').scrollTo(s, 500, { margin:true, /*axis:'y',*/ onAfter:function(){ s.blocs_replie_tout().blocs_toggle(); }}); else s.blocs_replie_tout().blocs_toggle(); // annulation du clic return false; }); // activation de blocs numerotes grace a l'url var blocs = blocs_get_blocs(window.location, true); if(blocs && (this == document)) blocs_clic_blocs(blocs, true); // activation de blocs simples (numerotes sur la base zero) grace a l'url blocs = blocs_get_blocs(window.location); if(blocs && (this == document)) blocs_clic_blocs(blocs); // clic vers une note dans un bloc jQuery('.spip_note['+cs_sel_jQuery+'name^=nb], .spip_note['+cs_sel_jQuery+'id^=nb]').each(function(i) { jQuery(this).click(function(e){ var href = this.href.substring(this.href.lastIndexOf("#")); href = jQuery(href).parents('.cs_blocs').eq(0).children('.blocs_titre').eq(0); // on neutralise une eventuelle animation old_blocs_slide = blocs_slide; if(blocs_slide != 'aucun') blocs_slide = -1; if(href.is('.blocs_replie')) href.click(); blocs_slide = old_blocs_slide; return true; }); }); /* // LA SUITE DE CE CODE NE FONCTIONNE POUR L'INSTANT QUE SUR LE PREMIER CLIC, JE NE SAIS PAS ENCORE PKOI... // stockage du bloc (numerote !) a reouvrir dans le cas d'un clic ajax sur une // pagination SPIP contenue a l'interieur jQuery(".ajaxbloc .pagination a.noajax", this).cs_todo() .click( function(){ var parent = jQuery(this).parents('.cs_blocs'); if(!parent.length) return true; var numero = /cs_bloc\d+/.exec(parent[0].className); if(numero!==null) blocs_clic_ajax = numero[0]; return true; }); // rouvre le nouveau bloc ajax si un clic a eu lieu a l'interieur de l'ancien if(blocs_clic_ajax!==null) { jQuery('.'+blocs_clic_ajax, this).blocs_toggle(); blocs_clic_ajax = null } */ } // un JS actif replie les blocs invisibles var valStyle = document.createElement('style'); var valHead = document.head || document.getElementsByTagName('head')[0]; valHead.appendChild(valStyle); valStyle.type = 'text/css'; valStyle.appendChild(document.createTextNode('div.blocs_invisible { display:none; }')); // Sauve l'etat des blocs numerotes ET deplies dans un cookie si on quitte la page function cs_blocs_cookie() { if(typeof jQuery.cookie!='function') return; var blocs_cookie_name = 'blocs' + window.location.pathname + window.location.search blocs_cookie_name = blocs_cookie_name.replace(/[ ;,=]/,'_'); var deplies = jQuery.cookie(blocs_cookie_name); //var pourInfo = blocs_deplies(); if(deplies) { // on replie tous les blocs numerotes et on deplie les blocs du cookie jQuery(".cs_blocs[id^='deplier_num'] .blocs_titre").not('.blocs_replie').blocs_toggle(); jQuery(deplies).blocs_toggle(); } jQuery(window).bind('unload', function() { jQuery.cookie(blocs_cookie_name, blocs_deplies()); }); } // renvoie la liste des selecteurs de blocs ouverts function blocs_deplies() { var deplies = ''; jQuery('.cs_blocs').each(function() { var numero = /cs_bloc\d+/.exec(this.className); if(numero == null) return; replie = jQuery(this).children('.blocs_titre').eq(0).is('.blocs_replie'); if(!replie) deplies += (deplies.length?', ':'') + 'div.' + numero[0]; }); return deplies.length?deplies:null; } // clic sur les blocs (Niemes blocs en base zero pour les blocs simples) function blocs_clic_blocs(liste, numerote) { var blocs = liste.split(','); for (var i=0; i<blocs.length; i++) (numerote) ? jQuery('div.cs_bloc' + blocs[i] + ' .blocs_titre').eq(0).click() : jQuery('div.cs_blocs .blocs_titre').eq(blocs[i]).click(); } // examen des parametes url (blocs simples ou numerotes) function blocs_get_blocs(url, numerote) { tab = numerote ? url.search.match(/[?&]deplier_num=([0-9,]*)/) || url.hash.match(/#deplier_num([0-9,]*)/) : url.search.match(/[?&]deplier=([0-9,]*)/) || url.hash.match(/#deplier([0-9,]*)/); return tab == null ? (numerote ? bloc_actif_num : bloc_actif) : tab[1]; } // une fonction et une variable pour reperer une pagination function blocs_get_pagination(url) { tab = url.match(/#pagination([0-9]+)/); return tab == null ? bloc_actif : tab[1]; } // Si une ancre est contenue dans un bloc, alors on le déplie ! // Cette fonction est automatiquement appelée si l'outil est configuré pour surveiller l'ancre de l'URL. function blocs_deplier_pour_ancre() { var ancre = window.location.hash; if(ancre) { ancre = jQuery(ancre); var bloc = ancre.parents('.cs_blocs').find('.blocs_titre.blocs_replie'); if(bloc.length && (ancre.length == 1)) { bloc.blocs_toggle(); jQuery('html,body').animate({scrollTop: ancre.offset().top}, 'slow'); } } }; var blocs_pagination = blocs_get_pagination(window.location.hash); /* // Ouvrir un bloc qui contiendrait un formulaire renvoyant une erreur jQuery(document).ready(function() { jQuery('.cs_blocs').has('.erreur_message').find('.blocs_titre.blocs_replie').blocs_toggle(); }); */ /* // Si un bloc contient une pagination inseree dans un bloc, // code JS a inserer dans le header de votre squelette APRES les appels du Couteau Suisse : jQuery(document).ready(function() { if(blocs_pagination!==false) { jQuery('div.cs_bloc' + blocs_pagination + ' .blocs_titre').eq(0).click(); window.location.hash = '#pagination' + blocs_pagination; } }); */ /* // Pour un bloc depliable du genre : // <BOUCLE_art(ARTICLES)> // #BLOC_TITRE // #TITRE // #BLOC_RESUME // #INTRODUCTION // #BLOC_DEBUT // #TEXTE // #BLOC_FIN // </BOUCLE_art> // le clic sur un point de suite cliquable de la balise #INTRODUCTION produit l'ouverture du bloc. // code JS a inserer dans le header de votre squelette APRES les appels du Couteau Suisse : jQuery(document).ready(function(){ jQuery('.blocs_resume>a.pts_suite') .click( function(){ jQuery(this).parents('.cs_blocs:first').children('.blocs_titre') .blocs_replie_tout().blocs_toggle(); // annulation du clic return false; }); }); */ /* Par defaut : blocs_slide = 'aucun' */ var blocs_replier_tout = 0; var blocs_millisec = 100; var blocs_slide = 'aucun'; var blocs_title_sep = /\|\|/g; var blocs_title_def = 'Déplier||Replier'; var cs_init = function() { cs_sommaire_init.apply(this); glossaire_init.apply(this); blocs_init.apply(this); } if(typeof onAjaxLoad=='function') onAjaxLoad(cs_init); if(window.jQuery) { var cs_sel_jQuery=''; var cs_CookiePlugin="../prive/javascript/js.cookie.js"; jQuery(document).ready(function(){ if(jQuery("div.cs_sommaire").length) { // s'il y a un sommaire, on cache la navigation haute sur les pages jQuery("div.decoupe_haut").css("display", "none"); // utilisation des cookies pour conserver l'etat du sommaire si on quitte la page if(cs_CookiePlugin) jQuery.getScript(cs_CookiePlugin, cs_sommaire_cookie); } /* optimisation : 'IF(0) \{if(jQuery("div.cs_blocs").length) jQuery.getScript(cs_CookiePlugin, cs_blocs_cookie); \}' */ /* optimisation : 'IF(0) \{blocs_deplier_pour_ancre(); \}' */ cs_init.apply(document); }); }
Close