$App = this $TweenMax=null $Options={} $loadingpcnt=null $Container=null $Settings=null $Wallet=null //$Data = {} $Chain=null $User=null $UIElements={} $Viewer360 =null $ChainSettings =null $TheGallery =null $ArtistProfile =null $SVGS={} $NFTS={} $AR = null $Lang = _lang $Events=null $Collectibles=null $Gallery= null $mobileCheck = function() { let check = false; (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))) check = true;})(navigator.userAgent||navigator.vendor||window.opera); return check; }; $Logo = new Logo() $Lines = null var _Loading = new Loading() $Data={} //setInterval(resized,1000) window.onload=function(){ console.log("DocumentLoaded") var URL = window.location.search.substring(1) var page = getURLobject(URL) if(page.hasOwnProperty('lang')){ $Lang = page.lang } $App.NewPage(window.document.title,window.location.search) resized() _Loading.LoadingStarting() $Counters('landing') $Counters('landing-'+$Lang) if($mobileCheck()){ $Counters('user-mobile') }else{ $Counters('user-desktop') } } function LoadingScriptsComplete(){ console.log('LoadingScriptsComplete') try{ Initiallize() }catch(err){ console.log('InitiallizeFailed') console.log(err) } $( document ).tooltip({ track:true , show: { delay: 100 } }); $Counters('loaded') gsap.delayedCall(0.8,Navigate) //animateTheme('#19447a') } $obj = {color:'#0c0c0c'} function animateTheme(clr,dur=3,del=0){ gsap.killTweensOf($obj) gsap.to($obj,dur,{color:clr, delay:del, onUpdate:function (){ $('meta[name=theme-color]').remove() $('head').append('') }}) } window.onpopstate = GoBack var BackFunctions=[] function addBack(_func ,_vars=null ,_focus=null, _fvars=null){ BackFunctions.push({func:_func,vars:_vars,focus:_focus,fvars:_fvars}) } function GoBack(){ if(BackFunctions.length==0){ NewPage($LangText('titles','name',0),"?p=menu") return } BackFunctions[BackFunctions.length-1].func(BackFunctions[BackFunctions.length-1].vars) //BackFunctions.pop() ayto ginetai apo to fire toy function if(BackFunctions.length<1){return} //exei fygei to teleytaio, opote focus sto proigoumeno poy tora einai sto telos if(BackFunctions[BackFunctions.length-1].focus!=null){ BackFunctions[BackFunctions.length-1].focus(BackFunctions[BackFunctions.length-1].fvars) } } function Navigate(){ $Events.filterTags() $Collectibles.filterTags() var URL = window.location.search.substring(1) var page ='' var pos = 'menu' if(URL==""){ }else{ page = getURLobject(URL) if(page.hasOwnProperty('source')){ $Counters(page.source) } if(page.hasOwnProperty('p')){ pos = page.p } if(page.hasOwnProperty('exhibition')){ if(page.hasOwnProperty('type') && page.type=='virtual'){ var _page=page $Viewer360.Show($Data.exhibitions[page.exhibition] ,function(){$Events.Viewer.Show(_page.exhibition,$Menu.Render)} ) } if(page.hasOwnProperty('type') && page.type=='gallery'){ if(page.hasOwnProperty('artifact')){ $Logo.Hide() var _page=page $Artifacts.Viewer.Show($Data.exhibitions[page.exhibition],page.artifact,function(){$Events.Viewer.Show(_page.exhibition,$Menu.Render)} ) }else{ var _page=page $Artifacts.Show($Data.exhibitions[page.exhibition],function(){$Events.Viewer.Show(_page.exhibition,$Menu.Render)} ) } } if(page.hasOwnProperty('type') && page.type=='event'){ $Logo.Hide() $Events.Viewer.Show(page.exhibition,$Menu.Render) } if(page.hasOwnProperty('type') && page.type=='photogallery'){ $Logo.Hide() var _page=page $Gallery.Show($Data.exhibitions[page.exhibition],function(){$Events.Viewer.Show(_page.exhibition,$Menu.Render)}) } return } if(page.hasOwnProperty('collectible')){ $Logo.Hide() var tokenid =0 if(page.hasOwnProperty('tokenid') ){tokenid=page.tokenid} $Collectibles.Viewer.Show(page.collectible,tokenid,$Menu.Render) return } } if(pos == 'exhibition-menu' || pos=="more"|| pos=="ar"){ pos = 'menu' } if(pos == 'menu' ){ $Menu.Render(pos,null,null,true) }else{ if(!$Container.screens.hasOwnProperty(pos)){ if(pos=='exhibitions'){ $Events.Show() }else if(pos=='collectibles'){ $Collectibles.Show() }else if(pos=='thegallery'){ $Logo.Hide() gsap.delayedCall(0.6,$TheGallery.Show ) }else{ $Menu.Render(pos,null,null,true) } }else{ gsap.delayedCall(0.35,$Container.Show,[pos]) $Logo.Hide() } } } function bugFix(scrollbar) { const draggerRail = $(scrollbar).find(".mCSB_draggerRail"); const draggerContainer = $(scrollbar).find(".mCSB_draggerContainer"); if (draggerRail.length > 0 && draggerRail.parent().hasClass("mCSB_dragger")) { draggerContainer.append(draggerRail); } } function NewPage(title,url){ //console.log(url) var URL = url.substring(1) var page = getURLobject(URL) page['lang'] = $Lang var arr=Object.keys(page) url="?" for(var i=0; iError!') //resized() } function getURLobject(url){ var obj={} var arr = url.split("&") if(url==''){return({})} for(var i=0; iratio){ wdth = $( '#backgroundimg' ).width()*ratioH } var lft = ($( window ).width()-wdth)/2 $( '#backgroundimg' ).css({width:wdth,bottom:0, position:'absolute',left: lft }) } paramInput= ( e) => { } paramIn= ( e) => { if($( e.target).attr('defvalue')!=undefined){ var defvalue = $( e.target).attr('defvalue') var value= $( e.target).val() if(value==defvalue){ $( e.target).val('') } } } paramOut= ( e) => { if($( e.target).attr('defvalue')!=undefined){ var defvalue = $( e.target).attr('defvalue') var value= $( e.target).val() if (!value || !value.trim()) { $( e.target).val(defvalue) } } } paramChange= ( e) => { if($( e.target).val() ==""){return} var value= Number($( e.target).val() ) var max = Number($( e.target).attr('smax') ) var min = Number($( e.target).attr('smin') ) if(isNaN(value )){ $( e.target).val($( e.target).attr('prev')) return } if(valuemax){value=max } value=Number(value.toFixed($(e.target).attr('dec'))) $( e.target).val(value) $( e.target).attr('prev',value) } validateEmail = (email) => { return String(email) .toLowerCase() .match( /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|.(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ); }; function animateValue(item,from,pre="",val,aft=""){ from=Number(from) val=Number(val) if(item.html()==pre+val+aft){ return} var tweenobj={prev:from} TweenMax.to(tweenobj,0.5,{'prev':val,onUpdate:function (){item.html(pre+tweenobj.prev.toFixed(0)+aft)}}) } function timeElapsed( datetime,mult=1000 ) { var now = new Date().getTime() var elapsed = now - (datetime*mult) var diff = {}; diff.days = Math.floor(elapsed / 86400000); diff.hours = Math.floor(elapsed / 3600000 % 24); diff.minutes = Math.floor(elapsed / 60000 % 60); diff.secs = Math.floor(elapsed / 1000 % 60); var message='Just now' if(diff.minutes==0){ message=diff.secs+' secs ago' if(diff.secs==0){message="JustNow"} } if(diff.minutes>0){message=diff.minutes+' mins ago'} if(diff.hours>0){message=diff.hours+' hour ago'} if(diff.hours>1){message=diff.hours+' hours ago'} if(diff.days>0){message=diff.days+' day ago'} if(diff.days>1){message=diff.days+' days ago'} if(diff.days>6){message='Long time ago'} return(message); } function timeToGo( datetime,mult=1000 ) { var now = new Date().getTime() var togo = (datetime*mult)-now if(togo<0){ return(timeElapsed(datetime)) } var diff = {}; diff.days = Math.floor(togo / 86400000); diff.hours = Math.floor(togo / 3600000 % 24); diff.minutes = Math.floor(togo / 60000 % 60); diff.secs = Math.floor(togo / 1000 % 60); var message='Just now' if(diff.minutes==0){ message='in '+diff.secs+' secs' if(diff.secs==0){message="JustNow"} } if(diff.secs<10){diff.secs="0"+String(diff.secs)} if(diff.minutes>0){message='in '+diff.minutes+':'+diff.secs} if(diff.minutes>5){message='in '+diff.minutes+' mins'} if(diff.hours>0){message='in '+diff.hours+' hour'} if(diff.hours>1){message='in '+diff.hours+' hours'} if(diff.days>0){message='in '+diff.days+' day'} if(diff.days>1){message='in '+diff.days+' days'} return(message); } function formattedDate( datetime,mul ) { var date = new Date(datetime * mul); var day = date.getDate(); var month = date.getMonth()+1; var year = date.getFullYear(); var hours = "0" +date.getHours(); var minutes = "0" + date.getMinutes(); var formattedTime = day+"/"+month+"/"+year +" "+hours.substr(-2) + ':' + minutes.substr(-2) return(formattedTime) } setInterval(CalculateTimeClasses,5000) function CalculateTimeClassesItem(id){ var time = Number($("#"+id).attr( "time" )) $("#"+id).html(timeElapsed(time,1000)) $("#"+id).attr( "title" , formattedDate(time,1000)) } function CalculateTimeClasses(){ var arr = $('.timeclass') for(var i=0; i