Help
RSS
API
Feed
Maltego
Contact
Domain > www.valerioriva.it
×
Welcome!
Right click nodes and scroll the mouse to navigate the graph.
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2013-10-21
94.23.64.16
(
ClassC
)
2025-02-06
188.245.66.176
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyServer: nginx/1.27.3Date: Thu, 06 Feb 2025 04:39:53 GMTContent-Type: text/htmlContent-Length: 169Connection: keep-aliveLocation: https://www.valerioriva.it/ html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>nginx/1.27.3/center>/body>/html>
Port 443
HTTP/1.1 200 OKServer: nginx/1.27.3Date: Thu, 06 Feb 2025 04:39:54 GMTContent-Type: text/html; charsetUTF-8Transfer-Encoding: chunkedConnection: keep-aliveX-Powered-By: PHP/8.2.26Vary: accept, content-typeLink: https://www.valerioriva.it/wp-json/>; relhttps://api.w.org/Link: https://wp.me/5g666>; relshortlink !DOCTYPE html>!--if IE 7>html classie ie7 dirltr langen-US prefixog: https://ogp.me/ns#>!endif-->!--if IE 8>html classie ie8 dirltr langen-US prefixog: https://ogp.me/ns#>!endif-->!--if !(IE 7) & !(IE 8)>!-->html dirltr langen-US prefixog: https://ogp.me/ns#>!--!endif-->head>meta charsetUTF-8 />meta nameviewport contentwidthdevice-width />link relprofile hrefhttps://gmpg.org/xfn/11 />link relpingback hrefhttps://www.valerioriva.it/xmlrpc.php>!--if lt IE 9>script srchttps://www.valerioriva.it/wp-content/themes/twentytwelve/js/html5.js?ver3.7.0 typetext/javascript>/script>!endif--> style>img:is(sizesauto i, sizes^auto, i) { contain-intrinsic-size: 3000px 1500px }/style> !-- All in One SEO 4.7.8 - aioseo.com --> title>Valerio "Lotti" Rivas DevLog/title> meta namedescription contentA blog about lotti’s studies and experiments /> meta namerobots contentmax-image-preview:large /> link relcanonical hrefhttps://www.valerioriva.it/ /> link relnext hrefhttps://www.valerioriva.it/page/2/ /> meta namegenerator contentAll in One SEO (AIOSEO) 4.7.8 /> meta propertyog:locale contenten_US /> meta propertyog:site_name contentValerio "Lotti" Riva's DevLog | Studies and Experiments /> meta propertyog:type contentwebsite /> meta propertyog:title contentValerio "Lotti" Riva's DevLog /> meta propertyog:description contentA blog about lotti’s studies and experiments /> meta propertyog:url contenthttps://www.valerioriva.it/ /> meta nametwitter:card contentsummary /> meta nametwitter:title contentValerio "Lotti" Riva's DevLog /> meta nametwitter:description contentA blog about lotti’s studies and experiments /> meta namegoogle contentnositelinkssearchbox /> script typeapplication/ld+json classaioseo-schema> {@context:https:\/\/schema.org,@graph:{@type:BreadcrumbList,@id:https:\/\/www.valerioriva.it\/#breadcrumblist,itemListElement:{@type:ListItem,@id:https:\/\/www.valerioriva.it\/#listItem,position:1,name:Home}},{@type:CollectionPage,@id:https:\/\/www.valerioriva.it\/#collectionpage,url:https:\/\/www.valerioriva.it\/,name:Valerio \Lotti\ Rivas DevLog,description:A blog about lotti\u2019s studies and experiments,inLanguage:en-US,isPartOf:{@id:https:\/\/www.valerioriva.it\/#website},breadcrumb:{@id:https:\/\/www.valerioriva.it\/#breadcrumblist},about:{@id:https:\/\/www.valerioriva.it\/#organization}},{@type:Organization,@id:https:\/\/www.valerioriva.it\/#organization,name:Valerio \Lotti\ Rivas DevLog,description:Studies and Experiments,url:https:\/\/www.valerioriva.it\/},{@type:WebSite,@id:https:\/\/www.valerioriva.it\/#website,url:https:\/\/www.valerioriva.it\/,name:Valerio \Lotti\ Rivas DevLog,description:Studies and Experiments,inLanguage:en-US,publisher:{@id:https:\/\/www.valerioriva.it\/#organization}}} /script> !-- All in One SEO -->link reldns-prefetch href//static.addtoany.com />link reldns-prefetch href//secure.gravatar.com />link reldns-prefetch href//stats.wp.com />link reldns-prefetch href//v0.wordpress.com />link relpreconnect href//i0.wp.com />link relpreconnect href//c0.wp.com />link relalternate typeapplication/rss+xml titleValerio "Lotti" Riva's DevLog » Feed hrefhttps://www.valerioriva.it/feed/ />link relalternate typeapplication/rss+xml titleValerio "Lotti" Riva's DevLog » Comments Feed hrefhttps://www.valerioriva.it/comments/feed/ />script typetext/javascript>/* !CDATA */window._wpemojiSettings {baseUrl:https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/,ext:.png,svgUrl:https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/,svgExt:.svg,source:{concatemoji:https:\/\/www.valerioriva.it\/wp-includes\/js\/wp-emoji-release.min.js?ver6.7.1}};/*! This file is auto-generated */!function(i,n){var o,s,e;function c(e){try{var t{supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var tnew Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return ert})}function u(e,t,n){switch(t){caseflag:return n(e,\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f,\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f)?!1:!n(e,\ud83c\uddfa\ud83c\uddf3,\ud83c\uddfa\u200b\ud83c\uddf3)&&!n(e,\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f,\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f);caseemoji:return!n(e,\ud83d\udc26\u200d\u2b1b,\ud83d\udc26\u200b\u2b1b)}return!1}function f(e,t,n){var rundefined!typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement(canvas),ar.getContext(2d,{willReadFrequently:!0}),o(a.textBaselinetop,a.font600 32px Arial,{});return e.forEach(function(e){oet(a,e,n)}),o}function t(e){var ti.createElement(script);t.srce,t.defer!0,i.head.appendChild(t)}undefined!typeof Promise&&(owpEmojiSettingsSupports,sflag,emoji,n.supports{everything:!0,everythingExceptFlag:!0},enew Promise(function(e){i.addEventListener(DOMContentLoaded,e,{once:!0})}),new Promise(function(t){var nfunction(){try{var eJSON.parse(sessionStorage.getItem(o));if(objecttypeof e&&numbertypeof e.timestamp&&(new Date).valueOf()e.timestamp+604800&&objecttypeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if(undefined!typeof Worker&&undefined!typeof OffscreenCanvas&&undefined!typeof URL&&URL.createObjectURL&&undefined!typeof Blob)try{var epostMessage(+f.toString()+(+JSON.stringify(s),u.toString(),p.toString().join(,)+));,rnew Blob(e,{type:text/javascript}),anew Worker(URL.createObjectURL(r),{name:wpTestEmojiSupports});return void(a.onmessagefunction(e){c(ne.data),a.terminate(),t(n)})}catch(e){}c(nf(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supportstet,n.supports.everythingn.supports.everything&&n.supportst,flag!t&&(n.supports.everythingExceptFlagn.supports.everythingExceptFlag&&n.supportst);n.supports.everythingExceptFlagn.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady!1,n.readyCallbackfunction(){n.DOMReady!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(en.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);/* > *//script>style idwp-emoji-styles-inline-css typetext/css> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; }/style>link relstylesheet idwp-block-library-css hrefhttps://c0.wp.com/c/6.7.1/wp-includes/css/dist/block-library/style.min.css typetext/css mediaall />style idwp-block-library-theme-inline-css typetext/css>.wp-block-audio :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio :where(figcaption){color:#ffffffa6}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed :where(figcaption){color:#ffffffa6}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:#ffffffa6}:root :where(.wp-block-image figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme :root :where(.wp-block-image figcaption){color:#ffffffa6}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-bottom:4px solid;border-top:4px solid;color:currentColor;margin-bottom:1.75em}.wp-block-pullquote cite,.wp-block-pullquote footer,.wp-block-pullquote__citation{color:currentColor;font-size:.8125em;font-style:normal;text-transform:uppercase}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}.wp-block-quote:where(.has-text-align-right){border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote:where(.has-text-align-center){border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote:where(.is-style-plain){border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:0 0 1em}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table :where(figcaption){color:#ffffffa6}.wp-block-video :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video :where(figcaption){color:#ffffffa6}.wp-block-video{margin:0 0 1em}:root :where(.wp-block-template-part.has-background){margin-bottom:0;margin-top:0;padding:1.25em 2.375em}/style>link relstylesheet idmediaelement-css hrefhttps://c0.wp.com/c/6.7.1/wp-includes/js/mediaelement/mediaelementplayer-legacy.min.css typetext/css mediaall />link relstylesheet idwp-mediaelement-css hrefhttps://c0.wp.com/c/6.7.1/wp-includes/js/mediaelement/wp-mediaelement.min.css typetext/css mediaall />style idjetpack-sharing-buttons-style-inline-css typetext/css>.jetpack-sharing-buttons__services-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:0;list-style-type:none;margin:5px;padding:0}.jetpack-sharing-buttons__services-list.has-small-icon-size{font-size:12px}.jetpack-sharing-buttons__services-list.has-normal-icon-size{font-size:16px}.jetpack-sharing-buttons__services-list.has-large-icon-size{font-size:24px}.jetpack-sharing-buttons__services-list.has-huge-icon-size{font-size:36px}@media print{.jetpack-sharing-buttons__services-list{display:none!important}}.editor-styles-wrapper .wp-block-jetpack-sharing-buttons{gap:0;padding-inline-start:0}ul.jetpack-sharing-buttons__services-list.has-background{padding:1.25em 2.375em}/style>style idclassic-theme-styles-inline-css typetext/css>/*! This file is auto-generated */.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}/style>style idglobal-styles-inline-css typetext/css>:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #fff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--blue: #21759b;--wp--preset--color--dark-gray: #444;--wp--preset--color--medium-gray: #9f9f9f;--wp--preset--color--light-gray: #e6e6e6;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}/style>link relstylesheet idtwentytwelve-fonts-css hrefhttps://www.valerioriva.it/wp-content/themes/twentytwelve/fonts/font-open-sans.css?ver20230328 typetext/css mediaall />link relstylesheet idtwentytwelve-style-css hrefhttps://www.valerioriva.it/wp-content/themes/twentytwelve/style.css?ver20230808 typetext/css mediaall />link relstylesheet idtwentytwelve-block-style-css hrefhttps://www.valerioriva.it/wp-content/themes/twentytwelve/css/blocks.css?ver20230213 typetext/css mediaall />!--if lt IE 9>link relstylesheet idtwentytwelve-ie-css hrefhttps://www.valerioriva.it/wp-content/themes/twentytwelve/css/ie.css?ver20150214 typetext/css mediaall />!endif-->style idakismet-widget-style-inline-css typetext/css> .a-stats { --akismet-color-mid-green: #357b49; --akismet-color-white: #fff; --akismet-color-light-grey: #f6f7f7; max-width: 350px; width: auto; } .a-stats * { all: unset; box-sizing: border-box; } .a-stats strong { font-weight: 600; } .a-stats a.a-stats__link, .a-stats a.a-stats__link:visited, .a-stats a.a-stats__link:active { background: var(--akismet-color-mid-green); border: none; box-shadow: none; border-radius: 8px; color: var(--akismet-color-white); cursor: pointer; display: block; font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif; font-weight: 500; padding: 12px; text-align: center; text-decoration: none; transition: all 0.2s ease; } /* Extra specificity to deal with TwentyTwentyOne focus style */ .widget .a-stats a.a-stats__link:focus { background: var(--akismet-color-mid-green); color: var(--akismet-color-white); text-decoration: none; } .a-stats a.a-stats__link:hover { filter: brightness(110%); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 0 2px rgba(0, 0, 0, 0.16); } .a-stats .count { color: var(--akismet-color-white); display: block; font-size: 1.5em; line-height: 1.4; padding: 0 13px; white-space: nowrap; } /style>link relstylesheet idaddtoany-css hrefhttps://www.valerioriva.it/wp-content/plugins/add-to-any/addtoany.min.css?ver1.16 typetext/css mediaall />script typetext/javascript idaddtoany-core-js-before>/* !CDATA */window.a2a_configwindow.a2a_config||{};a2a_config.callbacks;a2a_config.overlays;a2a_config.templates{};/* > *//script>script typetext/javascript defer srchttps://static.addtoany.com/menu/page.js idaddtoany-core-js>/script>script typetext/javascript srchttps://c0.wp.com/c/6.7.1/wp-includes/js/jquery/jquery.min.js idjquery-core-js>/script>script typetext/javascript srchttps://c0.wp.com/c/6.7.1/wp-includes/js/jquery/jquery-migrate.min.js idjquery-migrate-js>/script>script typetext/javascript defer srchttps://www.valerioriva.it/wp-content/plugins/add-to-any/addtoany.min.js?ver1.1 idaddtoany-jquery-js>/script>script typetext/javascript> !function(){var analyticswindow.analyticswindow.analytics||;if(analytics.invoked)window.console&&console.error&&console.error(Segment snippet included twice.);else{analytics.invoked!0;analytics.methodstrackSubmit,trackClick,trackLink,trackForm,pageview,identify,group,track,ready,alias,page,once,off,on;analytics.factoryfunction(t){return function(){var eArray.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t0;tanalytics.methods.length;t++){var eanalytics.methodst;analyticseanalytics.factory(e)}analytics.loadfunction(t){var edocument.createElement(script);e.typetext/javascript;e.async!0;e.src(https:document.location.protocol?https://:http://)+cdn.segment.com/analytics.js/v1/+t+/analytics.min.js;var ndocument.getElementsByTagName(script)0;n.parentNode.insertBefore(e,n)};analytics.SNIPPET_VERSION3.0.0; window.analytics.load(1gpggCPHxf68ceoue77F10sJHtxueSdI); window.analytics.page(); }}();/script>link relhttps://api.w.org/ hrefhttps://www.valerioriva.it/wp-json/ />link relEditURI typeapplication/rsd+xml titleRSD hrefhttps://www.valerioriva.it/xmlrpc.php?rsd />meta namegenerator contentWordPress 6.7.1 />link relshortlink hrefhttps://wp.me/5g666 /> style>img#wpstats{display:none}/style> style typetext/css>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}/style>!-- Google Analytics Tracking by Google Analyticator 6.5.7 -->script typetext/javascript> var analyticsFileTypes ; var analyticsOutboundPrefix /outgoing/; var analyticsDownloadsPrefix /download/; var analyticsSnippet disabled; var analyticsEventTracking disabled;/script>script typetext/javascript> (function(i,s,o,g,r,a,m){iGoogleAnalyticsObjectr;irir||function(){ (ir.qir.q||).push(arguments)},ir.l1*new Date();as.createElement(o), ms.getElementsByTagName(o)0;a.async1;a.srcg;m.parentNode.insertBefore(a,m) })(window,document,script,//www.google-analytics.com/analytics.js,ga); ga(create, UA-17811994-5, auto); ga(set, anonymizeIp, true); ga(send, pageview);/script>/head>body classhome blog wp-embed-responsive custom-font-enabled single-author>div idpage classhfeed site> header idmasthead classsite-header> hgroup> h1 classsite-title>a hrefhttps://www.valerioriva.it/ relhome>Valerio "Lotti" Riva's DevLog/a>/h1> h2 classsite-description>Studies and Experiments/h2> /hgroup> nav idsite-navigation classmain-navigation> button classmenu-toggle>Menu/button> a classassistive-text href#content>Skip to content/a> div classnav-menu>ul>li classcurrent_page_item>a hrefhttps://www.valerioriva.it/>Home/a>/li>li classpage_item page-item-32 page_item_has_children>a hrefhttps://www.valerioriva.it/who-wants-to-be-a-fake-millionaire-2/>WWTBAFM/a>ul classchildren> li classpage_item page-item-30>a hrefhttps://www.valerioriva.it/who-wants-to-be-a-fake-millionaire-2/who-wants-to-be-a-fake-millionaire/>WWTBAFM: Questions Manager/a>/li>/ul>/li>/ul>/div> /nav>!-- #site-navigation --> /header>!-- #masthead --> div idmain classwrapper> div idprimary classsite-content> div idcontent rolemain> article idpost-212 classpost-212 post type-post status-publish format-standard hentry category-coding tag-javascript> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2013/05/candy-box-cheats/ relbookmark>Candy Box Cheats/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2013/05/candy-box-cheats/#comments>5 Replies/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>just drop this cose inside browser’s developer console 😛/p>pre classbrush: jscript; title: ; notranslate title>//give 10000 per secondcandies.candiesPerSecond 10000;//set how many lollipos have been plantedfarm.lollipopsPlanted 100000000;//set max lollipos per day limitfarm.maxLollipopsPerDay 100000000;//add 1000000 candiescandies.setNbrOwned(candies.nbrOwned+1000000);//add 1000000 lollipopslollipops.setNbrOwned(lollipops.nbrOwned+1000000);//show potions buttons (each kind)potions.list.health.shown 1;potions.list.escape.shown 1;potions.list.berserk.shown 1;potions.list.fireScroll.shown 1;potions.list.acidRainScroll.shown 1;potions.list.teleportScroll.shown 1;potions.list.earthquakeScroll.shown 1;potions.list.impInvocationScroll.shown 1;potions.list.majorHealth.shown 1;potions.list.invulnerability.shown 1;potions.list.turtle.shown 1;potions.list.jelly.shown 1;potions.list.seed.shown 1;potions.list.cloning.shown 1;potions.list.superman.shown 1;potions.list.gmooh.shown 1;potions.updateOnPage();//set 999 potions (each kind)potions.list.health.nbrOwned 999;potions.list.escape.nbrOwned 999;potions.list.berserk.nbrOwned 999;potions.list.fireScroll.nbrOwned 999;potions.list.acidRainScroll.nbrOwned 999;potions.list.teleportScroll.nbrOwned 999;potions.list.earthquakeScroll.nbrOwned 999;potions.list.impInvocationScroll.nbrOwned 999;potions.list.majorHealth.nbrOwned 999;potions.list.invulnerability.nbrOwned 999;potions.list.turtle.nbrOwned 999;potions.list.jelly.nbrOwned 999;potions.list.seed.nbrOwned 999;potions.list.cloning.nbrOwned 999;potions.list.superman.nbrOwned 999;potions.list.gmooh.nbrOwned 999;potions.updateOnPage();//hack assign "almost infinite" invulnerability potionsquest.beginInvulnerability function(){ this.invulnerability true; this.invulnerabilityCountdown 99999999999999999999999999; this.things[this.getCharacterIndex().text "G0D";};//hack assign "almost infinite" berserk potionsquest.beginBerserk function(){ this.berserk true; this.berserkCountdown 99999999999999999999999999; this.speed this.getSpeed(); this.things[this.getCharacterIndex().text "@_@";};/pre>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2013/05/candy-box-cheats/ data-a2a-titleCandy Box Cheats>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2013%2F05%2Fcandy-box-cheats%2F&linknameCandy%20Box%20Cheats titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2013%2F05%2Fcandy-box-cheats%2F&linknameCandy%20Box%20Cheats titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2013%2F05%2Fcandy-box-cheats%2F&linknameCandy%20Box%20Cheats titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a> and tagged a hrefhttps://www.valerioriva.it/tag/javascript/ reltag>javascript/a> on a hrefhttps://www.valerioriva.it/2013/05/candy-box-cheats/ title21:07 relbookmark>time classentry-date datetime2013-05-05T21:07:02+02:00>05/05/2013/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-189 classpost-189 post type-post status-publish format-standard hentry category-various> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2012/03/wucca-it-is-born/ relbookmark>Wucca.it is born!/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2012/03/wucca-it-is-born/#respond>span classleave-reply>Leave a reply/span>/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>Hi everybody! Last year I started to work to a personal project called a hrefhttp://coltivareorto.it/>ColtivareOrto.it/a> with a couple of friends. Actually the project is already online and in continous development. So we decided to open a (sort of) devlog in Italian language, called a hrefhttp://www.wucca.it/>Wucca.it/a> to talk about the project itself and web developing in general. I just ended to write the first article about a hrefhttp://www.wucca.it/tutorial/creare-slider-personalizzati-con-jquery.html>implement and customize a jQueryUI slider/a>, so I’ll be glad to see some of you the new site! /p>p>Thank you!./p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2012/03/wucca-it-is-born/ data-a2a-titleWucca.it is born!>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2012%2F03%2Fwucca-it-is-born%2F&linknameWucca.it%20is%20born%21 titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2012%2F03%2Fwucca-it-is-born%2F&linknameWucca.it%20is%20born%21 titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2012%2F03%2Fwucca-it-is-born%2F&linknameWucca.it%20is%20born%21 titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/various/ relcategory tag>Various/a> on a hrefhttps://www.valerioriva.it/2012/03/wucca-it-is-born/ title15:31 relbookmark>time classentry-date datetime2012-03-20T15:31:24+02:00>20/03/2012/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-164 classpost-164 post type-post status-publish format-standard hentry category-coding tag-php tag-prestashop> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2010/08/caching-modules-on-prestashop-1-3-1/ relbookmark>Caching Modules on PrestaShop/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2010/08/caching-modules-on-prestashop-1-3-1/#respond>span classleave-reply>Leave a reply/span>/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>Let’s see an important examples: the category tree block (/modules/blockcategories.php)/p>p>i will show only the function that does the sql queries (that we are going to cache!).br />Watch out for the b>Tools::getCache/b> and b>Tools::setCache/b>!/p>pre classbrush: php; title: ; notranslate title>function hookLeftColumn($params){ global $smarty, $cookie; /* ONLY FOR THEME OLDER THAN v1.0 */ global $link; //cache if (!$catOldThemeTools::getCache(blockCatOldTheme.((!is_null($cookie->id_lang))?_.$cookie->id_lang:))) //read cache { $catOldThemeCategory::getHomeCategories(intval($params[cookie->id_lang), true); Tools::setCache(blockCatOldTheme.((!is_null($cookie->id_lang))?_.$cookie->id_lang:),$catOldTheme); //set cache } $smarty->assign(array( categories > $catOldTheme, link > $link )); /* ELSE */ $id_customer intval($params[cookie->id_customer); $maxdepth Configuration::get(BLOCK_CATEG_MAX_DEPTH); //cache if (!$resultTools::getCache(blockCatNewTheme.((!is_null($cookie->id_lang))?_.$cookie->id_lang:))) //read cache { $resultDb::getInstance()->ExecuteS( SELECT DISTINCT c.*, cl.* FROM `._DB_PREFIX_.category` c LEFT JOIN `._DB_PREFIX_.category_lang` cl ON (c.`id_category` cl.`id_category` AND `id_lang` .intval($params[cookie->id_lang).) LEFT JOIN `._DB_PREFIX_.category_group` cg ON (cg.`id_category` c.`id_category`) WHERE 1 .(intval($maxdepth) ! 0 ? AND `level_depth` < .intval($maxdepth) : ). AND (c.`active` 1 OR c.`id_category` .Configuration::get(PS_DB_macroCatIdHome).) AND cg.`id_group` .(!$cookie->id_customer ? 1 : IN (SELECT id_group FROM ._DB_PREFIX_.customer_group WHERE id_customer .intval($cookie->id_customer).)). ORDER BY `level_depth` ASC, cl.`name` ASC); Tools::setCache(blockCatNewTheme.((!is_null($cookie->id_lang))?_.$cookie->id_lang:),$result); //set cache } if (!$result) return; $resultParents array(); $resultIds array(); foreach ($result as $row) { $row[name Category::hideCategoryPosition($row[name); $resultParents[$row[id_parent[ $row; $resultIds[$row[id_category $row; } $blockCategTree $this->getTree($resultParents, $resultIds, Configuration::get(BLOCK_CATEG_MAX_DEPTH)); $isDhtml (Configuration::get(BLOCK_CATEG_DHTML) 1 ? true : false); $smarty->assign(isDhtml, $isDhtml); $this->currentCategoryId NULL; if (isset($_GET[id_category)) { $cookie->last_visited_category intval($_GET[id_category); $this->currentCategoryId intval($_GET[id_category); } if (isset($_GET[id_product)) { if (!isset($cookie->last_visited_category) OR !Product::idIsOnCategoryId(intval($_GET[id_product), array(0 > array(id_category > $cookie->last_visited_category)))) { $product new Product(intval($_GET[id_product)); if (isset($product) AND Validate::isLoadedObject($product)) $cookie->last_visited_category intval($product->id_category_default); } $this->currentCategoryId intval($cookie->last_visited_category); } $htmlOutput $this->htmlTree($blockCategTree); $smarty->assign(htmlOutput, $htmlOutput); return $this->display(__FILE__, blockcategoriesnew.tpl);}/pre>p>with the first call, the getCache, we are checking if there is cached content on disk, and if it’s true, the cached content will be returned inside the $result variable.br />If there is no cache content, the prestashop’s original code will run and the saved to disk with setCache method! easy uh?br />The only thing that is missing is the deleting of this cached content (needed to update cached content with updated database data). I found to way to do this./p>ul>li>b>crontab/b>: put a script that directly delete cached file on disk every hour/day (as you like)/li>li>b>right after database changes/b>: put a delCache call inside postProcess() method definition on administration class (the ones that extends AdminTab) eg.: /admin/tabs/AdminCategories.php (we will see that more in details on last caching tutorial)/li>li>b>manually/b>: delete cache manually when you have updated the interested records (in this example, the categories tables)/li>/ul>p>See you on next post to learn how cache modules!/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2010/08/caching-modules-on-prestashop-1-3-1/ data-a2a-titleCaching Modules on PrestaShop>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2010%2F08%2Fcaching-modules-on-prestashop-1-3-1%2F&linknameCaching%20Modules%20on%20PrestaShop titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2010%2F08%2Fcaching-modules-on-prestashop-1-3-1%2F&linknameCaching%20Modules%20on%20PrestaShop titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2010%2F08%2Fcaching-modules-on-prestashop-1-3-1%2F&linknameCaching%20Modules%20on%20PrestaShop titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a> and tagged a hrefhttps://www.valerioriva.it/tag/php/ reltag>PHP/a>, a hrefhttps://www.valerioriva.it/tag/prestashop/ reltag>PrestaShop/a> on a hrefhttps://www.valerioriva.it/2010/08/caching-modules-on-prestashop-1-3-1/ title22:16 relbookmark>time classentry-date datetime2010-08-09T22:16:22+02:00>09/08/2010/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-156 classpost-156 post type-post status-publish format-standard hentry category-coding tag-php tag-prestashop> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2010/08/caching-prestashop-1-3-1/ relbookmark>Caching PrestaShop/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2010/08/caching-prestashop-1-3-1/#comments>6 Replies/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>hello everybody. actually i’m working for a webagency and i used prestashop to develop an ecommerce with over 3700 products and over 250 categories. pretty huge uh?/p>p>well prestashop it’s easy to develop and extend, but it’s not so optimized.. so it’s easy to run into slow queries and server freezes with over 1300 visitors per day. So i had to cache some of biggest queries, like categories tree and subcategories, blocks and products. With those expedients i lowered the number of queries from 200 per page to nearly 40 (there are a lot, i know.. but it’s prestashop, not my fault.)br />so let’s start with the fixes! 🙂/p>p>first of all, let’s define two variable for our caching system, like the directory path of our cached content. open defines.inc.php and declare a variable, like i did/p>pre classbrush: php; title: ; notranslate title>define(_SQL_CACHING_, true); //set it to true to enable caching!define(_PS_CACHE_DIR_, __PS_BASE_URI__.cache/); //cache path!/pre>p>then make that directory and give it write permissions./p>p>then, let’s introduce some cache functions inside the Tools class file./p>pre classbrush: php; title: ; notranslate title> static public function setCache($var,$data,$dirsql/) { if (!_SQL_CACHING_) return; $path_PS_CACHE_DIR_; $dir.($var%100)./.$var./; $dataserialize($data); $path.$dir; @mkdir($path,0777,true); @chmod($path,0777); $file$path.$var..cache; @file_put_contents($file,$data); @chmod($file,0777); } static public function getCache($var,$dirsql/) { if (!_SQL_CACHING_) return false; $path_PS_CACHE_DIR_; $dir.($var%100)./.$var./; $path.$dir; $file$path.$var..cache; if (file_exists($file)) { $data@file_get_contents($file); return unserialize($data); } else return false; } static public function delCache($var,$dirsql/) { if (!_SQL_CACHING_) return false; if(!function_exists(rmdirr)) { function rmdirr($dir) { if (@file_exists($dir)) { if (@is_dir($dir)) { foreach(glob($dir."/*") as $obj) @is_dir($obj)? rmdirr($obj) : @unlink($obj); @rmdir($dir); } else @unlink($dir); } } } $path_PS_CACHE_DIR_.$dir.($var%100)./.$var.*; foreach(glob($path) as $filename) rmdirr($filename); }/pre>p>let’s examine that functions.. we have:/p>ul>li>b>setCache($var,$data,$dir’sql/’)/b>: write cached data to disk/li>li>b>getCache($var,$dir’sql/’)/b>: read cached data from disk/li>li>b>delCache($var,$dir’sql/’)/b>: delete cached data from disk/li>/ul>p>b>how to use those function (parameters explaination)/b>/p>ul>li>b>$var/b>: it’s the variable/file-on-disk name. it must be unique or a cached content will replace another one!/li>li>b>$data/b>: it’s the data that we want to cache. it can be anything: simple variable, array, object../li>li>b>$dir/b>: it’s the subdirectory of cache path. I use it to differentiate caching path of blocks from main pages, for example./li>/ul>p>b>where to use those functions?/b>br />well we have exactly three points where to use these functions: modules (on blocks), pages, single objects./p>ul>li>a href/2010/08/caching-modules-on-prestashop-1-3-1/ titleCaching Modules>b>modules/b>/a>: we have to act inside the module files. normally the main file (same name of module’s directory)/li>li>b>pages/b>: we have to act inside the files of prestashop’s root, like product.php or category.php and interact with smarty (the template engine)/li>li>b>objects/b>: we have to act inside the ObjectModel class/li>/ul>p>On next posts i will show some examples that describes how to apply these kind of cache!/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2010/08/caching-prestashop-1-3-1/ data-a2a-titleCaching PrestaShop>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2010%2F08%2Fcaching-prestashop-1-3-1%2F&linknameCaching%20PrestaShop titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2010%2F08%2Fcaching-prestashop-1-3-1%2F&linknameCaching%20PrestaShop titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2010%2F08%2Fcaching-prestashop-1-3-1%2F&linknameCaching%20PrestaShop titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a> and tagged a hrefhttps://www.valerioriva.it/tag/php/ reltag>PHP/a>, a hrefhttps://www.valerioriva.it/tag/prestashop/ reltag>PrestaShop/a> on a hrefhttps://www.valerioriva.it/2010/08/caching-prestashop-1-3-1/ title21:56 relbookmark>time classentry-date datetime2010-08-09T21:56:41+02:00>09/08/2010/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-128 classpost-128 post type-post status-publish format-standard hentry category-coding category-linux tag-cpp tag-ns-miracle tag-ns2> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2009/12/how-to-install-latest-nsmiracle/ relbookmark>How to install latest nsmiracle./a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2009/12/how-to-install-latest-nsmiracle/#comments>51 Replies/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>nsmiracle is apparently stuck at version 1.2.2 published in 11-07-2008 as shown on his a hrefhttp://www.dei.unipd.it/wdyn/?IDsezione3966>official website/a>./p>p>but that’s not true because is still in development and a currently updated version can be retrieved by using subversion (svn)./p>p>let’s see how to proceed./p>p>1) install subversion if miss it and litbool too. libtool is an automated tool that create makefile and configures. open terminal and type /p>pre classbrush: plain; title: ; notranslate title>sudo apt-get install subversion libtool/pre>p>2) download the latest version (actually rev 97) from nsmiracle repository /p>pre classbrush: plain; title: ; notranslate title>svn co --username nsmiracle-dev-guest --password nsmiracleguest https://telecom.dei.unipd.it:/tlcrepos/nsmiracle-dev/trunk/pre>p>3) go inside trunk: main is the nsmiracle latest release and inside addon folder there are sandbox, umts, wimax and other supplementary modulesbr />4) copy main folder and paste wherever you want (i put it inside ns-allinone directory). i suggest to rename main folder to something that you can easily remember (“nsmiracle” for example)br />5) open terminal and inside nsmiracle directory type in order (configure need your actually paths. i left mine just for example)/p>pre classbrush: plain; title: ; notranslate title>$ ./autogen.sh$ ./configure --with-ns-allinone/home/lotti/Scrivania/ns/ns-allinone-2.34 --prefix/home/lotti/Scrivania/ns/ns-allinone-2.34 --disable-static --with-dei80211mr/home/lotti/Scrivania/ns/ns-allinone-2.34/dei80211mr-1.1.4$ make$ make install/pre>p>6) now you’re ready to use nsmiracle/p>p>if you need to use also addons here there is an example /p>p>1) copy the wanted addon directory inside nsmiracle directorybr />2) open a terminal and go to the addon freshly pasted directorybr />3) type (always use your actual paths!):/p>pre classbrush: plain; title: ; notranslate title>$ ./autogen.sh$ ./configure --with-ns-allinone/home/lotti/Scrivania/ns/ns-allinone-2.34 --with-nsmiracle/home/lotti/Scrivania/ns/ns-allinone-2.34/nsmiracle$ make/pre>p>that’s all./p>p>run some samples to check if everything works. (some samples are broken – most errors are on loading libraries because of wrong paths)/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2009/12/how-to-install-latest-nsmiracle/ data-a2a-titleHow to install latest nsmiracle.>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F12%2Fhow-to-install-latest-nsmiracle%2F&linknameHow%20to%20install%20latest%20nsmiracle. titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F12%2Fhow-to-install-latest-nsmiracle%2F&linknameHow%20to%20install%20latest%20nsmiracle. titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F12%2Fhow-to-install-latest-nsmiracle%2F&linknameHow%20to%20install%20latest%20nsmiracle. titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a>, a hrefhttps://www.valerioriva.it/category/linux/ relcategory tag>Linux/a> and tagged a hrefhttps://www.valerioriva.it/tag/cpp/ reltag>C/C++/a>, a hrefhttps://www.valerioriva.it/tag/ns-miracle/ reltag>ns-miracle/a>, a hrefhttps://www.valerioriva.it/tag/ns2/ reltag>NS2/a> on a hrefhttps://www.valerioriva.it/2009/12/how-to-install-latest-nsmiracle/ title13:14 relbookmark>time classentry-date datetime2009-12-14T13:14:22+02:00>14/12/2009/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-124 classpost-124 post type-post status-publish format-standard hentry category-coding category-linux tag-cpp tag-ns2> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2009/12/install-ns-allinone-2-34-on-ubuntu-9-10/ relbookmark>Install ns-allinone-2.34 on ubuntu karmic koala 9.10 and ubuntu lucid lynx 10.04/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2009/12/install-ns-allinone-2-34-on-ubuntu-9-10/#comments>13 Replies/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>i wrote this tutorial because a hrefhttp://nsnam.isi.edu/nsnam/index.php/User_Information>official ns installation problems website/a> actually return a blank useless page. all the credits goes to nsnam.isi.edu people.br />a hrefhttp://209.85.129.132/search?qcache:QbfznHB5aoYJ:nsnam.isi.edu/nsnam/index.php/User_Information+http://nsnam.isi.edu/nsnam/index.php/User_Information%23Ubuntu_Installation_Guide&cd1&hlit&ctclnk>the googled cache copy of the page is here/a>./p>p>WARNING: apply point 3-4 only if you noticed the error while installing ns-allinone-2.34 the first time./p>pre classbrush: plain; title: ; notranslate title> otcl.o: In function `OTclDispatch: /home/ns/ns-allinone-2.34/otcl/otcl.c:495: undefined reference to `__stack_chk_fail_local otcl.o: In function `Otcl_Init: /home/ns/ns-allinone-2.34/otcl/otcl.c:2284: undefined reference to `__stack_chk_fail_local ld: libotcl.so: hidden symbol `__stack_chk_fail_local isnt defined ld: final link failed: Nonrepresentable section on output make: *** [libotcl.so Error 1/pre>p>otcl-1.13 has some compatibility issues with latest g++ (>4.4) but ns-allinone-2.34 need it./p>p>all you have to do to fix issues and make a successfull installation is:/p>p>0) /p>pre classbrush: plain; title: ; notranslate title>sudo apt-get install build-essential autoconf automake libxmu-dev/pre>p>1) extract ns-allinone wherever you want. open directory, go to otcl-1.13./p>p>2) open configure file (the one without extension)/p>p>3) search for:/p>pre classbrush: plain; title: ; notranslate title> Linux*) SHLIB_CFLAGS"-fpic" SHLIB_LD"ld -shared" SHLIB_SUFFIX".so" DL_LIBS"-ldl" SHLD_FLAGS"" ;;/pre>p>and replace it with/p>pre classbrush: plain; title: ; notranslate title> Linux*) SHLIB_CFLAGS"-fpic" SHLIB_LD"gcc -shared" SHLIB_SUFFIX".so" DL_LIBS"-ldl" SHLD_FLAGS"" ;;/pre>p>4) save configure file/p>p>5) go back to ns-allinone-2.34 main directory and launch install./p>p>6) remember to add to your .bash file (hided inside your home directory) with path variables. here there are mine for example/p>pre classbrush: plain; title: ; notranslate title># LD_LIBRARY_PATHOTCL_LIB/home/lotti/Scrivania/ns/ns-allinone-2.34/otcl-1.13NS2_LIB/home/lotti/Scrivania/ns/ns-allinone-2.34/libX11_LIB/usr/X11R6/libUSR_LOCAL_LIB/usr/local/libexport LD_LIBRARY_PATH$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB:$X11_LIB:$USR_LOCAL_LIB# TCL_LIBRARYTCL_LIB/home/lotti/Scrivania/ns/ns-allinone-2.34/tcl8.4.18/libraryUSR_LIB/usr/libexport TCL_LIBRARY$TCL_LIB:$USR_LIB# PATHXGRAPH/home/lotti/Scrivania/ns/ns-allinone-2.34/bin:/home/lotti/Scrivania/ns/ns-allinone-2.34/tcl8.4.18/unix:/home/lotti/Scrivania/ns/ns-allinone-2.34/tk8.4.18/unixNS/home/lotti/Scrivania/ns/ns-allinone-2.34/ns-2.34/NAM/home/lotti/Scrivania/ns/ns-allinone-2.34/nam-1.13/PATH$PATH:$XGRAPH:$NS:$NAM/pre>p>7) test it: close actual terminal and open a new one (to reload changed .bash file) and type “ns”. if a % appear, your actually on ns2 console./p>p>Finish!/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2009/12/install-ns-allinone-2-34-on-ubuntu-9-10/ data-a2a-titleInstall ns-allinone-2.34 on ubuntu karmic koala 9.10 and ubuntu lucid lynx 10.04>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F12%2Finstall-ns-allinone-2-34-on-ubuntu-9-10%2F&linknameInstall%20ns-allinone-2.34%20on%20ubuntu%20karmic%20koala%209.10%20and%20ubuntu%20lucid%20lynx%2010.04 titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F12%2Finstall-ns-allinone-2-34-on-ubuntu-9-10%2F&linknameInstall%20ns-allinone-2.34%20on%20ubuntu%20karmic%20koala%209.10%20and%20ubuntu%20lucid%20lynx%2010.04 titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F12%2Finstall-ns-allinone-2-34-on-ubuntu-9-10%2F&linknameInstall%20ns-allinone-2.34%20on%20ubuntu%20karmic%20koala%209.10%20and%20ubuntu%20lucid%20lynx%2010.04 titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a>, a hrefhttps://www.valerioriva.it/category/linux/ relcategory tag>Linux/a> and tagged a hrefhttps://www.valerioriva.it/tag/cpp/ reltag>C/C++/a>, a hrefhttps://www.valerioriva.it/tag/ns2/ reltag>NS2/a> on a hrefhttps://www.valerioriva.it/2009/12/install-ns-allinone-2-34-on-ubuntu-9-10/ title12:41 relbookmark>time classentry-date datetime2009-12-14T12:41:39+02:00>14/12/2009/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-115 classpost-115 post type-post status-publish format-standard hentry category-coding tag-actionscript tag-flash tag-hack> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2009/11/hackme/ relbookmark>hackme!/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2009/11/hackme/#respond>span classleave-reply>Leave a reply/span>/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>a hrefhttp://www.valerioriva.it/files/hackme.zip>download/a>/p>p>hackme is a test-program: i figured out a way to protect variables from hacking and now i need some tester 🙂/p>p>the program is really simple: 1 dynamic text, 1 buttons.br />the dynamic text contains the output of the variable.br />the “update” button refresh the dynamic text with the content of the variable./p>p>you (the hacker) have to hack my variable (with cheatengine, for example) injecting “1337” value in the variable, then press “update” button 🙂br />obviously, hack the dynamic text doesn’t mean hack my variable./p>p>send comments or opinion to lotti *A.T* fastwebnet *D.O.T* it or reply to this post/p>p>thanks./p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2009/11/hackme/ data-a2a-titlehackme!>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F11%2Fhackme%2F&linknamehackme%21 titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F11%2Fhackme%2F&linknamehackme%21 titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F11%2Fhackme%2F&linknamehackme%21 titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a> and tagged a hrefhttps://www.valerioriva.it/tag/actionscript/ reltag>actionscript/a>, a hrefhttps://www.valerioriva.it/tag/flash/ reltag>flash/a>, a hrefhttps://www.valerioriva.it/tag/hack/ reltag>hack/a> on a hrefhttps://www.valerioriva.it/2009/11/hackme/ title13:54 relbookmark>time classentry-date datetime2009-11-01T13:54:46+02:00>01/11/2009/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-79 classpost-79 post type-post status-publish format-standard hentry category-coding tag-html tag-javascript tag-jquery tag-js> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2009/09/igoogle-box-set-like-script/ relbookmark>jquery: igoogle box-set like script/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2009/09/igoogle-box-set-like-script/#comments>2 Replies/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>hello world! (sounds familiar..)/p>p>lr1 parser is complete! woooah. it takes me 3 weeks of work and now i will have a printed permanent smile on my face for at least 1 month. well i will post source codes, but not for now :)./p>p>today i’d like to show you a nice work made with a hrefhttp://www.jquery.com/>jquery/a>, a powerful javascript library that i discovered two days ago./p>p>This is a tutorial that will show how to make a simple but nice customizable blocks-made interface/homepage, with jquery. the script is based on a hrefhttp://www.shopdev.co.uk/blog/sortable-lists-using-jquery-ui/>this other tutorial/a>./p>p>Here it is the demo: a hrefhttp://www.valerioriva.it/jquery/lotti-block.html>http://www.valerioriva.it/jquery/lotti-block.html/a>br />how to use the demo: you will see 6 blocks. click on the wrench to enter customization mode, a dialog will appear. click on every boxes’ icon (click and drag to move blocks with 4 arrow cross) and customize your layout. save or restore states/order/everything if you don’t like the customization./p>p>features:/p>ul>li>movable blocks/li>li>closable blocks/li>li>minimizable blocks/li>li>save blocks’ state and order into cookies/li>/ul>p>let’s start with the html template./p>p>build your html layout.. with divs! made 1 or 2 or 3 or how many you need div “columns”. i’ll choose 3. then, you have to put inside each columns some divs that will be acting as boxes with some simply css commands./p>p>here it is my example remember to include always jquery library, jquery cookie plugin, jquery ui theme script and of course, my script (lotti-block)br />there is also a css example for people that doesn’t know how to make divs act as blocks/p>p>a hrefhttp://www.valerioriva.it/wp-content/demo.zip>download the demo files!/a>/p>pre classbrush: xml; title: ; notranslate title><html> <head><title>Demo</title> <link type"text/css" href"css/demo/jquery-ui-1.7.2.demo.css" rel"stylesheet" /> <script type"text/javascript" src"js/jquery-1.3.2.min.js"></script> <script type"text/javascript" src"js/jquery.cookie.js"></script> <script type"text/javascript" src"js/jquery-ui-1.7.2.demo.min.js"></script> <script type"text/javascript" src"js/lotti-block.js"></script> <style> #left { width: 20%; float:left; } #center { width: 58%; float: left; margin-right:1%; margin-left:1%; } #right { width: 20%; float:right; } .box { background-color:#eef3f8; border:1px solid #d5dde5; border-bottom:4px solid #d5dde5; padding:10px; margin-bottom:15px; overflow:hidden; } .box h3{ background:#d5dde5; color:#1d3652 } .portlet-header .ui-icon { float: right; } .placeholder { border: 1px dotted black; visibility: visible !important; background-color: #0066CC; color: #FFFFFF; font-weight: bold; } .placeholder * { visibility: hidden; } .ui-sortable-placeholder { border: 1px dotted black; visibility: visible !important; height: 100px !important; } .ui-sortable-placeholder * { visibility: hidden; } </style> </head> <body> <div id"customize-dialog" title"Reset Layout Page"><p>Now you can customize your page.<br /> Move boxes from column to another, minimize/close them or get back to default settings by clicking on these buttons:</p></div><div id"left"> <div align"center">PLACEHOLDER</div> <div id"b1"><h3>Block 1</h3> <div>Block 1</div> </div> <div id"b2"><h3>Block 2</h3> <div>Block 2</div> </div></div><div id"center" > <div align"center">PLACEHOLDER</div> <div id"b3"><h3>Block 3</h3> <div>Block 3</div> </div> <div id"b4"><h3>Block 4</h3> <div>Block 4</div> </div></div><div id"right" > <div align"center">PLACEHOLDER</div> <div id"b5"><h3>Block 5</h3> <div>Block 5</div> </div> <div id"b6"><h3>Block 6</h3> <div>Block 6</div> </div></div> </body></html>/pre>p>ok. now let’s examine this page. every column (they have IDs: left, center and right) must have the class identifier “sortable” and each block must have a different ID (in this example from b1 to b6). then placeholder divs (class”placeholder”) blocks are used only to facilitate boxes drag’n’drop inside each column.br />Every box have some special class that are: customizer, movable, minimizable, closable. each of those words adds an ability to the block. There must be at least 1 customizer (and preferably it doesn’t have to be closeable). you can use every combinations of those class identifier./p>p>Then, a box is defined, as you can see, by this code (for example, i took the last block)/p>pre classbrush: xml; title: ; notranslate title><div id"b3"><h3>Block 3</h3> <div>Block 3</div> </div>/pre>p>REMEMBER! there must be a tag with class identifier “portlet-header” (i used h3 but it could be a div too) and another tag (preferably a div) with class identifier “portlet-content”/p>p>there is a “dialog” div too (it will act as a dialog box) that will appear when the customizer icon is clicked. it contains buttons to save or restore the homepage configuration/style./p>p>now let’s see something about the js code/p>pre classbrush: jscript; title: ; notranslate title>//configurable variablesvar cookienamedemo;var cookie_options { path: /, expires: 10 };function resetCookie() //delete cookie{jQuery.cookie(cookiename, null, cookie_options);}function resetCookieState() //delete only blocks states from cookie{var cookie jQuery.cookie(cookiename);if (!cookie) return;var cookiecookie.split("|");var savedBlocks cookie[0;var savedState cookie[1;jQuery.cookie(cookiename, savedBlocks+|, cookie_options);}function resetCookieOrder() //delete only blocks order from cookie{var cookie jQuery.cookie(cookiename);if (!cookie) return;var cookiecookie.split("|");var savedBlocks cookie[0;var savedState cookie[1;jQuery.cookie(cookiename, |+savedState, cookie_options);}function getCookie() //read the cookie and restore blocks order and states{var cookie jQuery.cookie(cookiename);if (!cookie) return;var cookiecookie.split("|");var savedBlocks;var savedStates;if (cookie[0) savedBlocks cookie[0;if (cookie[1) savedStates cookie[1;//orderif (savedBlocks){ var orders savedBlocks.split(";");//below you need to be replace with your columns id!! jQuery("#left").sortable(toArray); jQuery("#center").sortable(toArray); jQuery("#right").sortable(toArray);//here too!! if(orders[0) restoreOrder(#left,orders[0); if(orders[1) restoreOrder(#center,orders[1); if(orders[2) restoreOrder(#right,orders[2); }//statesif (savedStates){ var states savedStates.split(","); var blocks_id new Array(); var blocks_state new Array(); var i0; for (i0; i<states.length; i++) { var temp states[i.split(""); blocks_id[itemp[0; blocks_state[itemp[1; } for (i0; i<states.length; i++) { var itemblocks_id[i; var stateblocks_state[i; if (state1) jQuery("#"+item).find(".portlet-content").hide(); else if (state2) jQuery("#"+item).hide(); } }}function setCookie() //save the blocks order and states inside a single cookie{ var s""; var i0; var n0; //order//below you need to be replace with your columns id!! if (jQuery("#left").sortable(toArray)!"undefined") s+jQuery("#left").sortable(toArray)+";"if (jQuery("#center").sortable(toArray)!"undefined") s+jQuery("#center").sortable(toArray)+";"if (jQuery("#right").sortable(toArray)!"undefined") s+jQuery("#right").sortable(toArray)+";" ss.substr(0,s.length-1); s+|; //states var blocks_minimized new Array(); var blocks_closed new Array(); njQuery(.portlet-content:hidden).size(); for (i0; i<n; i++) s+jQuery(.portlet-content:hidden).eq(i).parent(.minimizable).attr(id)+"1,"; njQuery(.closable:hidden).size(); for (i0; i<n; i++) s+jQuery(.closable:hidden).eq(i).attr(id)+"2,"; if (n!0) ss.substr(0,s.length-1); if (s.length>0) jQuery.cookie(cookiename, s, cookie_options); else jQuery.cookie(cookiename, null);}function restoreOrder(list,order) //restore blocks order for each column{var list jQuery(list);if (list null) return// make array from saved ordervar IDs order.split(",");for (var i 0, n IDs.length; i<n; i++) {var item IDs[i; // select the item from the proper columnvar child jQuery("div.ui-sortable").children("#" + item);// make a copy of the itemvar savedOrd jQuery("div.ui-sortable").children("#" + item);// remove the original itemchild.remove(); //insert the copy inside the ordered columnjQuery(list).append(savedOrd);}}function removeButtons() //remove cutomization buttons{jQuery(".ui-icon-newwin").replaceWith();jQuery(".ui-icon-arrow-4").replaceWith();jQuery(".ui-icon-power").replaceWith();}function addButtons() //adds customization buttons and actions{removeButtons();jQuery(".minimizable").find(".portlet-header").append(<span class"ui-icon ui-icon-newwin"></span>)jQuery(".movable").find(".portlet-header").append(<span class"ui-icon ui-icon-arrow-4"></span>)jQuery(".closable").find(".portlet-header").append(<span class"ui-icon ui-icon-power"></span>)jQuery(".minimizable").find(".portlet-header").find(".ui-icon-newwin").click(function() {jQuery(this).parents(".minimizable").find(".portlet-content").toggle();});jQuery(".closable").find(".portlet-header").find(".ui-icon-power").click(function() { jQuery(this).parents(".closable").hide();});}function enableCustomization() //shows the dialog, the placeholders, makes columns item sortable and adds buttons{jQuery(#customize-dialog).dialog(open);jQuery(".placeholder").show();jQuery(".sortable").sortable({ handle: .ui-icon-arrow-4, tolerance: pointer,items: .movable, connectWith: .sortable, update : function () { setCookie(); } }); addButtons();}function disableCustomization() //remove buttons, set the cookie, hides the placeholders and block the columns{removeButtons(); setCookie();jQuery(".placeholder").hide(); jQuery(".sortable").sortable(destroy);}jQuery(function() { //jQuery "Main"jQuery(#customize-dialog).dialog({ //configure the dialog box autoOpen: false, width: 400, buttons: { "Everything": function() { //reset to normal page layout jQuery(this).dialog("close"); //close the dialog resetCookie(); //full reset window.location.reload(); //refresh page to see changes }, "States": function() { //reset only the states jQuery(this).dialog("close"); //close the dialog resetCookieState(); //partial reset, only states window.location.reload(); //refresh page to see changes }, "Order": function() { //reset only the order jQuery(this).dialog("close"); //close the dialog resetCookieOrder(); //partial reset, only order window.location.reload(); //refresh page to see changes }, "Save": function() { //save state and order jQuery(this).dialog("close"); //close the dialog } }, close: function(event, ui) { disableCustomization(); } //every time the dialog is closed.. disableCustomization is launched! }); jQuery(.placeholder).hide(); //hides the placeholdersjQuery(.customizer).find(.portlet-header).append(<span class"ui-icon ui-icon-wrench"></span>) //adds the customization button on customizer boxes..jQuery(.customizer).find(.portlet-header).find(.ui-icon-wrench).click(function() { //and add his actionenableCustomization();});jQuery(.sortable).sortable({ //instiate columns as sortable to fetch order from cookie handle: .ui-icon-arrow-4, tolerance: pointer,items: .movable, connectWith: .sortable, }); getCookie(); //read the cookiejQuery(.sortable).sortable( refresh ) //refresh columns status jQuery(.sortable).sortable(destroy); //lock columns});/pre>p>well, i commented every function, i hope you will understand. if not, go to jQuery documentation or view the linked tutorials on top of this post.br />however, inside the cookie the order is save with strings like this: b1,b2;b3,b4;b5,b6 where the ; stands for “end of column” so it is most important to put ids in the correct order inside getCookie e setCookie functions. the blocks’ state is saved like this: b11,b22,b41 where 1 stands for minimized and 2 for closed. no need to save “normal state” because we already have it by default (everytime you load the page, every is on default order/state). that’s all. hope you liked! feel free to ask questions!/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2009/09/igoogle-box-set-like-script/ data-a2a-titlejquery: igoogle box-set like script>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F09%2Figoogle-box-set-like-script%2F&linknamejquery%3A%20igoogle%20box-set%20like%20script titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F09%2Figoogle-box-set-like-script%2F&linknamejquery%3A%20igoogle%20box-set%20like%20script titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F09%2Figoogle-box-set-like-script%2F&linknamejquery%3A%20igoogle%20box-set%20like%20script titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/coding/ relcategory tag>Coding/a> and tagged a hrefhttps://www.valerioriva.it/tag/html/ reltag>HTML/a>, a hrefhttps://www.valerioriva.it/tag/javascript/ reltag>javascript/a>, a hrefhttps://www.valerioriva.it/tag/jquery/ reltag>jQuery/a>, a hrefhttps://www.valerioriva.it/tag/js/ reltag>Js/a> on a hrefhttps://www.valerioriva.it/2009/09/igoogle-box-set-like-script/ title09:47 relbookmark>time classentry-date datetime2009-09-10T09:47:01+02:00>10/09/2009/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-71 classpost-71 post type-post status-publish format-standard hentry category-various tag-diy> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2009/06/rs232-ttl-logic-converter/ relbookmark>RS232-TTL Logic converter :)/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2009/06/rs232-ttl-logic-converter/#comments>1 Reply/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p styletext-align: left;>Here it is the schema to make a rs232-ttl logic converter for general purpose. I used this schema to read the dvd key of my xbox 360. Quite easy to do and works perfectly. See you./p>p styletext-align: center;>a hrefhttps://i0.wp.com/www.valerioriva.it/wp-content/circuit_232.jpg>img data-recalc-dims1 fetchpriorityhigh decodingasync classaligncenter size-full wp-image-72 titleRS232 to TTL srchttps://i0.wp.com/www.valerioriva.it/wp-content/circuit_232.jpg?resize392%2C299 altRS232 to TTL width392 height299 srcsethttps://i0.wp.com/www.valerioriva.it/wp-content/circuit_232.jpg?w392&ssl1 392w, https://i0.wp.com/www.valerioriva.it/wp-content/circuit_232.jpg?resize300%2C228&ssl1 300w sizes(max-width: 392px) 100vw, 392px />/a>/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2009/06/rs232-ttl-logic-converter/ data-a2a-titleRS232-TTL Logic converter :)>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F06%2Frs232-ttl-logic-converter%2F&linknameRS232-TTL%20Logic%20converter%20%3A%29 titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F06%2Frs232-ttl-logic-converter%2F&linknameRS232-TTL%20Logic%20converter%20%3A%29 titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F06%2Frs232-ttl-logic-converter%2F&linknameRS232-TTL%20Logic%20converter%20%3A%29 titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/various/ relcategory tag>Various/a> and tagged a hrefhttps://www.valerioriva.it/tag/diy/ reltag>DIY/a> on a hrefhttps://www.valerioriva.it/2009/06/rs232-ttl-logic-converter/ title13:27 relbookmark>time classentry-date datetime2009-06-13T13:27:57+02:00>13/06/2009/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> article idpost-57 classpost-57 post type-post status-publish format-standard hentry category-data-structures category-grammars category-homebrews category-networking category-publishing category-various category-wwtbafm tag-java tag-mysql tag-php tag-wwtbafm> header classentry-header> h1 classentry-title> a hrefhttps://www.valerioriva.it/2009/05/projects-that-kept-and-keep-me-busy-in-these-months/ relbookmark>Projects that kept (and keep) me busy in these months/a> /h1> div classcomments-link> a hrefhttps://www.valerioriva.it/2009/05/projects-that-kept-and-keep-me-busy-in-these-months/#respond>span classleave-reply>Leave a reply/span>/a> /div>!-- .comments-link --> /header>!-- .entry-header --> div classentry-content> p>Hi everybody! I don’t know why i keep update this wordpress release but not post something new.. maybe i lack of inspiration or i just think that people don’t care (and me too). So, this is the first 2009 update, let’s start./p>ol>li>NeXtRL.it FanZinebr />I was six years old when i bought and read my first magazine, console magazine, and now i’m a sort of publisher of a community-made magazine, the NeXtRL.it Fanzine (started on December 2008). a hrefhttp://issuu.com/lotti/docs target_blank>Here/a> are the published issues.br />I made a lot of experience with both amateur (publisher 2007) and professional (quarkxpress) press software and i studied some way to share works (the written articles) and simplify human interactions with a “nothing-can-go-wrong” module (see point (2)). Now i’m working on the third issue of the fanzine and i’d like to do it with adobe indesign (another pro app) because i didn’t enjoy my experience with quarkxpress – complicated also on easy tasks like pick the right tool from the panel and no color picker!/li>li>NeXtRL.it – Form to submit articles for the FanZinebr />It’s a simple form with some javascript that uses a validation engine (in javascript too) found on a hrefhttp://www.javascript-coder.com/html-form/javascript-form-validation.phtml target_blank>this tutorial/a>. People can enter various type of articles, filling in the different fields that the chosen type of article requires. Then they can modify, delete or send (to themselves or to publisher – me) their ready-to-print articles. Then the articles arrive on my google docs account so i can share them with my collaborators that check for grammar errors and i finally i can paginate the final articles.br />I made it with php, mysql and IPB API because nextrl.it uses IPB Forum. So here it is the a hrefhttp://www.nextrl.it/>link/a>, but you can’t access if you’re not logged in – and it’s all written in italian, too.br />Source code not available because i made it just for nextrl.it/li>li>NeXtRL.it – Tournament scriptbr />Here, i enanched an old script that i made adhoc for nextrl.it a year ago. It was messy and hardcoded, now it’s more flexible and still a bit messy 😛 I think i need to switch my php’s habits to OOP and start comment while (and not after) coding.br />Now the script can handle more than one tournament and of various type: ladders, points, victories. I rewritten quite the 95% of the code and it took me a week. a hrefhttp://www.nextrl.it/tourney/ target_blank>This/a> is the link and, also there, you can’t access if you’re not logged in and it’s in italian too.br />Source code not available because i made it just for nextrl.it/li>li>Automata & Languages: Cocke-Younger-Kasami Parserbr />I made this parser in a month for university purpose. I will post and explain the code when i will pass the related exam, so a hrefhttp://en.wikipedia.org/wiki/CYK_algorithm>here /a>there are some info form wikipedia. Basically, i did a program that manipulate a context-free grammar to eliminate epsilon production, unit production, put it in chomsky normal form and last parse a word with CYK algorithm and say if it belong, or not, to the given grammar.br />Made with Java (instead of C++) for it’s wide library of string manipulation functions./li>li>ns2/nsmiraclebr />I started to study about my thesis: understand how ns2 and nsmiracle modules are written to implement specific ones. Next monday (the 18th of May 2009) i will know more about those modules./li>li>WWTBAFM: new release?br />I though two times about release a new version of wwtbafm: two separated homebrew, one to play and the other to update questions. when i’ll have time and i will get my nds back i would give it a try, now that palibs are fixed to work with latest ndslib/li>/ol>p>That’s all, let’s hope more updates soon 🙂/p>p>UPDATE: oh, well, i forgot to mention that i have also build a simple rs232-ttl interface to mod my x360. I will post schema and how-to on next post 🙂/p>div classaddtoany_share_save_container addtoany_content addtoany_content_bottom>div classa2a_kit a2a_kit_size_32 addtoany_list data-a2a-urlhttps://www.valerioriva.it/2009/05/projects-that-kept-and-keep-me-busy-in-these-months/ data-a2a-titleProjects that kept (and keep) me busy in these months>a classa2a_button_facebook hrefhttps://www.addtoany.com/add_to/facebook?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F05%2Fprojects-that-kept-and-keep-me-busy-in-these-months%2F&linknameProjects%20that%20kept%20%28and%20keep%29%20me%20busy%20in%20these%20months titleFacebook relnofollow noopener target_blank>/a>a classa2a_button_mastodon hrefhttps://www.addtoany.com/add_to/mastodon?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F05%2Fprojects-that-kept-and-keep-me-busy-in-these-months%2F&linknameProjects%20that%20kept%20%28and%20keep%29%20me%20busy%20in%20these%20months titleMastodon relnofollow noopener target_blank>/a>a classa2a_button_email hrefhttps://www.addtoany.com/add_to/email?linkurlhttps%3A%2F%2Fwww.valerioriva.it%2F2009%2F05%2Fprojects-that-kept-and-keep-me-busy-in-these-months%2F&linknameProjects%20that%20kept%20%28and%20keep%29%20me%20busy%20in%20these%20months titleEmail relnofollow noopener target_blank>/a>a classa2a_dd addtoany_share_save addtoany_share hrefhttps://www.addtoany.com/share>/a>/div>/div> /div>!-- .entry-content --> footer classentry-meta> This entry was posted in a hrefhttps://www.valerioriva.it/category/data-structures/ relcategory tag>Data Structures/a>, a hrefhttps://www.valerioriva.it/category/grammars/ relcategory tag>Grammars/a>, a hrefhttps://www.valerioriva.it/category/homebrews/ relcategory tag>Homebrews/a>, a hrefhttps://www.valerioriva.it/category/networking/ relcategory tag>Networking/a>, a hrefhttps://www.valerioriva.it/category/publishing/ relcategory tag>Publishing/a>, a hrefhttps://www.valerioriva.it/category/various/ relcategory tag>Various/a>, a hrefhttps://www.valerioriva.it/category/homebrews/wwtbafm/ relcategory tag>WWTBAFM/a> and tagged a hrefhttps://www.valerioriva.it/tag/java/ reltag>Java/a>, a hrefhttps://www.valerioriva.it/tag/mysql/ reltag>MySQL/a>, a hrefhttps://www.valerioriva.it/tag/php/ reltag>PHP/a>, a hrefhttps://www.valerioriva.it/tag/wwtbafm/ reltag>WWTBAFM/a> on a hrefhttps://www.valerioriva.it/2009/05/projects-that-kept-and-keep-me-busy-in-these-months/ title17:42 relbookmark>time classentry-date datetime2009-05-12T17:42:18+02:00>12/05/2009/time>/a>span classby-author> by span classauthor vcard>a classurl fn n hrefhttps://www.valerioriva.it/author/lotti/ titleView all posts by Valerio Riva relauthor>Valerio Riva/a>/span>/span>. /footer>!-- .entry-meta --> /article>!-- #post --> nav idnav-below classnavigation> h3 classassistive-text>Post navigation/h3> div classnav-previous>a hrefhttps://www.valerioriva.it/page/2/ >span classmeta-nav>←/span> Older posts/a>/div> div classnav-next>/div> /nav>!-- .navigation --> /div>!-- #content --> /div>!-- #primary --> div idsecondary classwidget-area rolecomplementary> aside idlinkcat-14 classwidget widget_links>h3 classwidget-title>Downloads/h3> ul classxoxo blogroll>li>a hrefhttp://www.valerioriva.it/files/JoggleDS.zip titleLatest JoggleDS>JoggleDS/a>/li>li>a hrefhttp://www.valerioriva.it/files/litedat.zip titleLatest LiteDat>LiteDat/a>/li>li>a hrefhttp://www.valerioriva.it/files/MancalaDS.zip titleLatest MancalaDS>MancalaDS/a>/li>li>a hrefhttp://www.valerioriva.it/files/PAFont.zip titleLatest PAFont>PAFont/a>/li>li>a hrefhttp://www.valerioriva.it/files/PAFont.source.zip titleLatest PAFont Source>PAFont Source/a>/li>li>a hrefhttp://www.valerioriva.it/files/WWTBAFM.zip titleLatest WWTBAFM>WWTBAFM/a>/li> /ul>/aside>aside idlinkcat-2 classwidget widget_links>h3 classwidget-title>Links/h3> ul classxoxo blogroll>li>a hrefhttp://www.coltivareorto.it/ relme noopener titleColtivare l’orto in balcone target_blank>ColtivareOrto.it/a>/li>li>a hrefhttp://www.nextrl.it/ titleNext-Gen Console Italian Community>NeXtRL.it/a>/li>li>a hrefhttp://www.wucca.it/ relme noopener titleWucca! target_blank>Wucca.it/a>/li> /ul>/aside>aside idtag_cloud-3 classwidget widget_tag_cloud>h3 classwidget-title>Tags/h3>div classtagcloud>ul classwp-tag-cloud rolelist> li>a hrefhttps://www.valerioriva.it/tag/actionscript/ classtag-cloud-link tag-link-33 tag-link-position-1 stylefont-size: 8pt; aria-labelactionscript (1 item)>actionscript/a>/li> li>a hrefhttps://www.valerioriva.it/tag/cpp/ classtag-cloud-link tag-link-24 tag-link-position-2 stylefont-size: 12.666666666667pt; aria-labelC/C++ (3 items)>C/C++/a>/li> li>a hrefhttps://www.valerioriva.it/tag/diy/ classtag-cloud-link tag-link-26 tag-link-position-3 stylefont-size: 8pt; aria-labelDIY (1 item)>DIY/a>/li> li>a hrefhttps://www.valerioriva.it/tag/flash/ classtag-cloud-link tag-link-31 tag-link-position-4 stylefont-size: 8pt; aria-labelflash (1 item)>flash/a>/li> li>a hrefhttps://www.valerioriva.it/tag/hack/ classtag-cloud-link tag-link-32 tag-link-position-5 stylefont-size: 8pt; aria-labelhack (1 item)>hack/a>/li> li>a hrefhttps://www.valerioriva.it/tag/html/ classtag-cloud-link tag-link-29 tag-link-position-6 stylefont-size: 8pt; aria-labelHTML (1 item)>HTML/a>/li> li>a hrefhttps://www.valerioriva.it/tag/java/ classtag-cloud-link tag-link-15 tag-link-position-7 stylefont-size: 10.8pt; aria-labelJava (2 items)>Java/a>/li> li>a hrefhttps://www.valerioriva.it/tag/javascript/ classtag-cloud-link tag-link-27 tag-link-position-8 stylefont-size: 10.8pt; aria-labeljavascript (2 items)>javascript/a>/li> li>a hrefhttps://www.valerioriva.it/tag/jquery/ classtag-cloud-link tag-link-28 tag-link-position-9 stylefont-size: 8pt; aria-labeljQuery (1 item)>jQuery/a>/li> li>a hrefhttps://www.valerioriva.it/tag/js/ classtag-cloud-link tag-link-30 tag-link-position-10 stylefont-size: 8pt; aria-labelJs (1 item)>Js/a>/li> li>a hrefhttps://www.valerioriva.it/tag/mancalads/ classtag-cloud-link tag-link-38 tag-link-position-11 stylefont-size: 18.111111111111pt; aria-labelMancalaDS (8 items)>MancalaDS/a>/li> li>a hrefhttps://www.valerioriva.it/tag/mysql/ classtag-cloud-link tag-link-5 tag-link-position-12 stylefont-size: 10.8pt; aria-labelMySQL (2 items)>MySQL/a>/li> li>a hrefhttps://www.valerioriva.it/tag/nds/ classtag-cloud-link tag-link-19 tag-link-position-13 stylefont-size: 12.666666666667pt; aria-labelNintendo DS (3 items)>Nintendo DS/a>/li> li>a hrefhttps://www.valerioriva.it/tag/wii/ classtag-cloud-link tag-link-20 tag-link-position-14 stylefont-size: 17.333333333333pt; aria-labelNintendo Wii (7 items)>Nintendo Wii/a>/li> li>a hrefhttps://www.valerioriva.it/tag/ns-miracle/ classtag-cloud-link tag-link-37 tag-link-position-15 stylefont-size: 8pt; aria-labelns-miracle (1 item)>ns-miracle/a>/li> li>a hrefhttps://www.valerioriva.it/tag/ns2/ classtag-cloud-link tag-link-36 tag-link-position-16 stylefont-size: 10.8pt; aria-labelNS2 (2 items)>NS2/a>/li> li>a hrefhttps://www.valerioriva.it/tag/php/ classtag-cloud-link tag-link-3 tag-link-position-17 stylefont-size: 18.888888888889pt; aria-labelPHP (9 items)>PHP/a>/li> li>a hrefhttps://www.valerioriva.it/tag/prestashop/ classtag-cloud-link tag-link-35 tag-link-position-18 stylefont-size: 10.8pt; aria-labelPrestaShop (2 items)>PrestaShop/a>/li> li>a hrefhttps://www.valerioriva.it/tag/wwtbafm/ classtag-cloud-link tag-link-39 tag-link-position-19 stylefont-size: 22pt; aria-labelWWTBAFM (15 items)>WWTBAFM/a>/li>/ul>/div>/aside>aside idcategories-1 classwidget widget_categories>h3 classwidget-title>Categories/h3> ul> li classcat-item cat-item-25>a hrefhttps://www.valerioriva.it/category/coding/>Coding/a> (8)/li> li classcat-item cat-item-6>a hrefhttps://www.valerioriva.it/category/console/>Console/a> (32)/li> li classcat-item cat-item-4>a hrefhttps://www.valerioriva.it/category/data-structures/>Data Structures/a> (2)/li> li classcat-item cat-item-16>a hrefhttps://www.valerioriva.it/category/grammars/>Grammars/a> (2)/li> li classcat-item cat-item-7>a hrefhttps://www.valerioriva.it/category/homebrews/>Homebrews/a> (28)ul classchildren> li classcat-item cat-item-10>a hrefhttps://www.valerioriva.it/category/homebrews/glovepie/>Glovepie/a> (2)/li> li classcat-item cat-item-8>a hrefhttps://www.valerioriva.it/category/homebrews/mancalads/>MancalaDS/a> (8)/li> li classcat-item cat-item-12>a hrefhttps://www.valerioriva.it/category/homebrews/wwtbafm/>WWTBAFM/a> (13)/li>/ul>/li> li classcat-item cat-item-34>a hrefhttps://www.valerioriva.it/category/linux/>Linux/a> (2)/li> li classcat-item cat-item-11>a hrefhttps://www.valerioriva.it/category/modding/>Modding/a> (2)/li> li classcat-item cat-item-18>a hrefhttps://www.valerioriva.it/category/networking/>Networking/a> (1)/li> li classcat-item cat-item-17>a hrefhttps://www.valerioriva.it/category/publishing/>Publishing/a> (1)/li> li classcat-item cat-item-1>a hrefhttps://www.valerioriva.it/category/various/>Various/a> (4)/li> /ul> /aside>aside idarchives-2 classwidget widget_archive>h3 classwidget-title>Archives/h3> label classscreen-reader-text forarchives-dropdown-2>Archives/label> select idarchives-dropdown-2 namearchive-dropdown> option value>Select Month/option> option valuehttps://www.valerioriva.it/2013/05/> May 2013 (1)/option> option valuehttps://www.valerioriva.it/2012/03/> March 2012 (1)/option> option valuehttps://www.valerioriva.it/2010/08/> August 2010 (2)/option> option valuehttps://www.valerioriva.it/2009/12/> December 2009 (2)/option> option valuehttps://www.valerioriva.it/2009/11/> November 2009 (1)/option> option valuehttps://www.valerioriva.it/2009/09/> September 2009 (1)/option> option valuehttps://www.valerioriva.it/2009/06/> June 2009 (1)/option> option valuehttps://www.valerioriva.it/2009/05/> May 2009 (1)/option> option valuehttps://www.valerioriva.it/2008/07/> July 2008 (1)/option> option valuehttps://www.valerioriva.it/2007/08/> August 2007 (5)/option> option valuehttps://www.valerioriva.it/2007/07/> July 2007 (2)/option> option valuehttps://www.valerioriva.it/2007/06/> June 2007 (5)/option> option valuehttps://www.valerioriva.it/2007/05/> May 2007 (2)/option> option valuehttps://www.valerioriva.it/2007/04/> April 2007 (1)/option> option valuehttps://www.valerioriva.it/2007/03/> March 2007 (1)/option> option valuehttps://www.valerioriva.it/2007/02/> February 2007 (3)/option> option valuehttps://www.valerioriva.it/2007/01/> January 2007 (5)/option> option valuehttps://www.valerioriva.it/2006/12/> December 2006 (6)/option> option valuehttps://www.valerioriva.it/2006/11/> November 2006 (2)/option> option valuehttps://www.valerioriva.it/2006/10/> October 2006 (3)/option> /select> script typetext/javascript>/* !CDATA */(function() { var dropdown document.getElementById( archives-dropdown-2 ); function onSelectChange() { if ( dropdown.options dropdown.selectedIndex .value ! ) { document.location.href this.options this.selectedIndex .value; } } dropdown.onchange onSelectChange;})();/* > *//script>/aside>aside idmeta-2 classwidget widget_meta>h3 classwidget-title>Meta/h3> ul> li>a hrefhttps://www.valerioriva.it/wp-login.php>Log in/a>/li> li>a hrefhttps://www.valerioriva.it/feed/>Entries feed/a>/li> li>a hrefhttps://www.valerioriva.it/comments/feed/>Comments feed/a>/li> li>a hrefhttps://wordpress.org/>WordPress.org/a>/li> /ul> /aside>aside idrecent-comments-2 classwidget widget_recent_comments>h3 classwidget-title>Latest Comments/h3>ul idrecentcomments>li classrecentcomments>span classcomment-author-link>Luis Enrique/span> on a hrefhttps://www.valerioriva.it/2009/06/rs232-ttl-logic-converter/comment-page-1/#comment-97470>RS232-TTL Logic converter :)/a>/li>li classrecentcomments>span classcomment-author-link>Jacob/span> on a hrefhttps://www.valerioriva.it/2013/05/candy-box-cheats/comment-page-1/#comment-28219>Candy Box Cheats/a>/li>li classrecentcomments>span classcomment-author-link>michael baldwin/span> on a hrefhttps://www.valerioriva.it/2007/02/glovepie-fps-script-without-sensorbar/comment-page-1/#comment-26175>GlovePIE FPS Script without SensorBar/a>/li>li classrecentcomments>span classcomment-author-link>a hrefhttp://www.facebook.com/profile.php?id100003469773539 classurl relugc external nofollow>Boy/a>/span> on a hrefhttps://www.valerioriva.it/2007/03/chiip-programmer/comment-page-1/#comment-25733>Chiip Programmer/a>/li>li classrecentcomments>span classcomment-author-link>a hrefhttp://ritikachauhan06@gmail.com classurl relugc external nofollow>ritika/a>/span> on a hrefhttps://www.valerioriva.it/2009/12/how-to-install-latest-nsmiracle/comment-page-1/#comment-25711>How to install latest nsmiracle./a>/li>/ul>/aside>aside idtext-429985811 classwidget widget_text>h3 classwidget-title>NeXtRL.it FanZine/h3> div classtextwidget>div aligncenter>object stylewidth:100%;height:117px >param namemovie valuehttp://static.issuu.com/webembed/viewers/style1/v1/IssuuViewer.swf?modeembed&layouthttp%3A%2F%2Fskin.issuu.com%2Fv%2Fcolor%2Flayout.xml&backgroundColorFFFFFF&showFlipBtntrue&autoFliptrue&autoFlipTime6000&documentId090505175708-362be58327f54354bb4e21c5618bb502&docNamenextrl_fanzine_2&usernameLotti&loadingInfoTextNeXtRL%20FanZine%202&et1242144519318&er84 />param nameallowfullscreen valuetrue/>param namemenu valuefalse/>embed srchttp://static.issuu.com/webembed/viewers/style1/v1/IssuuViewer.swf typeapplication/x-shockwave-flash allowfullscreentrue menufalse stylewidth:100%;height:117px flashvarsmodeembed&layouthttp%3A%2F%2Fskin.issuu.com%2Fv%2Fcolor%2Flayout.xml&backgroundColorFFFFFF&showFlipBtntrue&autoFliptrue&autoFlipTime6000&documentId090505175708-362be58327f54354bb4e21c5618bb502&docNamenextrl_fanzine_2&usernameLotti&loadingInfoTextNeXtRL%20FanZine%202&et1242144519318&er84 />/object>div stylewidth:200px;text-align:center;>a hrefhttp://issuu.com/Lotti/docs/nextrl_fanzine_2?modeembed&layouthttp%3A%2F%2Fskin.issuu.com%2Fv%2Fcolor%2Flayout.xml&backgroundColorFFFFFF&showFlipBtntrue&autoFliptrue&autoFlipTime6000 target_blank>Open publication/a>/div>/div>/div> /aside>aside idtext-1 classwidget widget_text> div classtextwidget>center>!-- Begin Shinystat Free code -->script typetext/javascript languageJavaScript srchttp://codice.shinystat.com/cgi-bin/getcod.cgi?USERwwtbafm>/script>noscript>a hrefhttp://www.shinystat.com target_top>img srchttp://www.shinystat.com/cgi-bin/shinystat.cgi?USERwwtbafm altFree web counters border0>/a>/noscript>!-- End Shinystat Free code -->br>script typetext/javascript>!--google_ad_client pub-1306468634258866;google_alternate_color E6E6E6;google_ad_width 160;google_ad_height 600;google_ad_format 160x600_as;google_ad_type text;google_ad_channel ;google_color_border 336699;google_color_bg FFFFFF;google_color_link 0000FF;google_color_text 000000;google_color_url 008000;google_ui_features rc:6;//-->/script>script typetext/javascript srchttp://pagead2.googlesyndication.com/pagead/show_ads.js>/script>/center>/div> /aside> /div>!-- #secondary --> /div>!-- #main .wrapper --> footer idcolophon rolecontentinfo> div classsite-info> a hrefhttps://wordpress.org/ classimprint titleSemantic Personal Publishing Platform> Proudly powered by WordPress /a> /div>!-- .site-info --> /footer>!-- #colophon -->/div>!-- #page -->br />b>Warning/b>: Trying to access array offset on value of type bool in b>/var/www/valerioriva.it/public/wp-content/plugins/segmentio/integrations/intercom.php/b> on line b>14/b>br /> script typetext/javascript> analytics.track(Viewed Home Page, {noninteraction:true}, {library:analytics-wordpress}); /script>script typetext/javascript srchttps://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js?ver3.0.9b idsyntaxhighlighter-core-js>/script>script typetext/javascript srchttps://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js?ver3.0.9b idsyntaxhighlighter-brush-jscript-js>/script>script typetext/javascript srchttps://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPhp.js?ver3.0.9b idsyntaxhighlighter-brush-php-js>/script>script typetext/javascript srchttps://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js?ver3.0.9b idsyntaxhighlighter-brush-plain-js>/script>script typetext/javascript srchttps://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js?ver3.0.9b idsyntaxhighlighter-brush-xml-js>/script>script typetext/javascript> (function(){ var corecss document.createElement(link); var themecss document.createElement(link); var corecssurl https://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css?ver3.0.9b; if ( corecss.setAttribute ) { corecss.setAttribute( rel, stylesheet ); corecss.setAttribute( type, text/css ); corecss.setAttribute( href, corecssurl ); } else { corecss.rel stylesheet; corecss.href corecssurl; } document.head.appendChild( corecss ); var themecssurl https://www.valerioriva.it/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeRDark.css?ver3.0.9b; if ( themecss.setAttribute ) { themecss.setAttribute( rel, stylesheet ); themecss.setAttribute( type, text/css ); themecss.setAttribute( href, themecssurl ); } else { themecss.rel stylesheet; themecss.href themecssurl; } document.head.appendChild( themecss ); })(); SyntaxHighlighter.config.strings.expandSource + expand source; SyntaxHighlighter.config.strings.help ?; SyntaxHighlighter.config.strings.alert SyntaxHighlighter\n\n; SyntaxHighlighter.config.strings.noBrush Can\t find brush for: ; SyntaxHighlighter.config.strings.brushNotHtmlScript Brush wasn\t configured for html-script option: ; SyntaxHighlighter.defaultspad-line-numbers true; SyntaxHighlighter.defaultstab-size 2; SyntaxHighlighter.defaultswrap-lines false; SyntaxHighlighter.all(); // Infinite scroll support if ( typeof( jQuery ) ! undefined ) { jQuery( function( $ ) { $( document.body ).on( post-load, function() { SyntaxHighlighter.highlight(); } ); } ); }/script>script typetext/javascript srchttps://www.valerioriva.it/wp-content/themes/twentytwelve/js/navigation.js?ver20141205 idtwentytwelve-navigation-js>/script>script typetext/javascript srchttps://stats.wp.com/e-202506.js idjetpack-stats-js data-wp-strategydefer>/script>script typetext/javascript idjetpack-stats-js-after>/* !CDATA */_stq window._stq || ;_stq.push( view, JSON.parse({\v\:\ext\,\blog\:\77718370\,\post\:\0\,\tz\:\2\,\srv\:\www.valerioriva.it\,\j\:\1:14.3\}) );_stq.push( clickTrackerInit, 77718370, 0 );/* > *//script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]