https://files.fm/f/vb3s8pvaqp

Eingereichte URL:
https://files.fm/f/vb3s8pvaqp
Bericht beendet:

Die von der Seite ausgehenden identifizierten Links

LinkText
https://apps.apple.com/in/app/files-fm-cloud-storage/id1636301796 Mobile: Apple iOSNew!
https://video.failiem.lv/b/auth/openid_connectCreate video room
https://www.facebook.com/Filesfm/
https://twitter.com/files_fm
https://discord.gg/BCTJyNZABJDiscord chat

JavaScript-Variablen · 187 gefunden

Globale JavaScript-Variablen, die in das Window Object einer Seite geladen werden, sind Variablen, die außerhalb von Funktionen deklariert werden und von jeder Stelle des Codes innerhalb des aktuellen Bereichs zugänglich sind

NameTyp
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject
_paqobject
gtagfunction
dataLayerobject
filesfm_gtag_report_conversionfunction
$function
jQueryfunction
objFilesFmErrorHandlerobject

Konsolenprotokoll-Meldungen · 2 gefunden

In der Web-Konsole protokollierte Meldungen

TypKategorieProtokoll
verbosedom
URL
https://files.fm/f/vb3s8pvaqp
Text
[DOM] Password field is not contained in a form: (More info: https://goo.gl/9p2vKq) %o
verbosedom
URL
https://files.fm/f/vb3s8pvaqp
Text
[DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o

HTML

Der HTML-Rohtext der Seite

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html id="adaptive_html" lang="EN"><head>
<meta charset="UTF-8">
<meta name="globalsign-domain-verification" content="WVoCXGP9WWz7ZO3hqGZASmZCYQ2jhO7WxIRwsepEgV">
<meta name="theme-color" content="#ffffff">
<meta name="facebook-domain-verification" content="nikti9bu56gz5oi6d126k5bloj0772">
<title>File upload &amp; sharing. Send large photos and videos. Online cloud storage.</title>
<meta name="keywords" content="ftp file upload, file hosting, android, file cloud, cloud storage, file sharing, failu glabāšana, bilžu hostings, bilžu apmaiņa, failu apmaiņa, failu serveris, failu koplietošana, failu rezerves kopijas, failu backup, file hosting, file sharing, file exchange, file storage, image hosting, file upload, files, file share, web file hosting, internet file storage, image upload, free upload, photo sharing, online photo gallery, photos online, data backup, online backup">
<meta property="og:title" content="File upload &amp; sharing. Send large photos and videos. Online cloud storage.">
<meta property="og:description" content="File upload &amp; sharing. Cloud file storage. Store, Share, Send or Sell your files, photos, videos, music and docs. Free signup.">
<meta name="description" content="File upload &amp; sharing. Cloud file storage. Store, Share, Send or Sell your files, photos, videos, music and docs. Free signup.">
<meta property="og:image" content="https://files.fm/images/meta_share/files-meta-1200-2x.png">
<meta property="og:image:secure_url" content="https://files.fm/images/meta_share/files-meta-1200-2x.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="https://files.fm/images/meta_share/files-meta-1200-2x.png">
<meta property="twitter:image" content="https://files.fm/images/meta_share/files-meta-1200-2x.png">
<meta property="og:url" content="https://files.fm">
<meta property="og:type" content="website">
<meta property="og:site_name" content="Files.fm">
<meta property="fb:app_id" content="303254966461402">
<link rel="canonical" href="https://files.fm/f/vb3s8pvaqp">
<link rel="alternate" hreflang="x-default" href="https://files.fm/f/vb3s8pvaqp">
<link rel="alternate" hreflang="en" href="https://files.fm/f/vb3s8pvaqp">
<link rel="preconnect" href="https://www.googletagmanager.com" crossorigin="">
<link rel="preconnect" href="https://files.fm" crossorigin="">
<link rel="preconnect" href="https://www.google-analytics.com" crossorigin="">
<link rel="preconnect" href="https://www.googleadservices.com" crossorigin="">
<link rel="preconnect" href="https://googleads.g.doubleclick.net" crossorigin="">
<link rel="preconnect" href="https://stats.g.doubleclick.net" crossorigin="">
<link rel="preconnect" href="https://www.google.com" crossorigin="">
<link rel="preconnect" href="https://www.google.lv" crossorigin="">
<script type="text/javascript" async="" src="https://www.google-analytics.com/analytics.js"></script><script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=G-H8LJ280FZW&amp;l=dataLayer&amp;cx=c"></script><script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=AW-1043031755&amp;l=dataLayer&amp;cx=c"></script><script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=UA-1970559-6&amp;l=dataLayer&amp;cx=c"></script><script type="text/javascript" async="" src="https://www.google-analytics.com/analytics.js"></script><script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=G-EFZ32Z07VR&amp;l=dataLayer&amp;cx=c"></script><script async="" src="//analytics.files.fm/matomo.js"></script><script>
	
    var _paq = window._paq = window._paq || [];
    
    _paq.push( [ 'trackPageView' ] );
    _paq.push( [ 'enableLinkTracking' ] );
    
    (function()
    {
        var u= '//analytics.files.fm/';
        
        _paq.push( [ 'setTrackerUrl', u + 'matomo.php' ] );
        _paq.push( [ 'setSiteId', '1' ] );
        
        var d = document;
        var g = d.createElement( 'script' );
        var s = d.getElementsByTagName( 'script' )[ 0 ];
        
        g.async = true;
        g.src = u + 'matomo.js';
        s.parentNode.insertBefore( g, s );
    } )();

</script>
<script async="" src="https://www.googletagmanager.com/gtag/js?id=UA-1970559-10"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  
    
  gtag('js', new Date());
  
    gtag('config', 'UA-1970559-10');

    gtag('config', 'UA-1970559-6');
  
    
    gtag('config', 'AW-1043031755');
  
</script>
<script src="/js/google_conversion.js?v=4"></script>
<base href="https://files.fm/">
<meta name="verify-v1" content="4MHpv5CF+UNp34oMIZOxnVwoSslLpr+5GPkxFp94Wq8=">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" media="all" href="/css/reset.css?v=1715343650"><link rel="stylesheet" type="text/css" media="all" href="/css/global.css?v=1722490362"><link rel="stylesheet" type="text/css" media="all" href="/css/header.css?v=1728475221"><link rel="stylesheet" type="text/css" media="all" href="/css/messages/messages.css?v=1715343651"><link rel="stylesheet" type="text/css" media="all" href="/ts/chat/dist/chat.css?v=1715343647">
<script src="/js/jquery-1.12.2.min.js?v=1715343643"></script>
<script src="/js/jquery-migrate-1.3.0.js?v=1715343643"></script>
<script src="/js/JSON/cycle.js?v=1715343642"></script> <script src="/error_handler_client?v=4"></script>
<link rel="icon" type="image/png" href="/images/logo/rebranded/favicon-192x192px.png?v=2">
<link rel="icon" type="image/svg+xml" href="/images/logo/rebranded/favicon-192x192px.svg?v=2">
<script>

				var DOMAIN_NAME = 'files.fm';
				
				var HTTP_HOST = 'files.fm';
				var IS_DEV_SERVER = false;

				// capitalize first letter of domain
                DOMAIN_NAME = DOMAIN_NAME.charAt(0).toUpperCase() + DOMAIN_NAME.slice(1);

				var lang_code = 'EN';

				var DOCUMENT_IS_LOADED = false;

				var MMVD = false;
				var STDT = new Date().getTime();

				var WEB_ROOT_PATH = '';

				var FB_APP_ID = '303254966461402';

				var strTranslation_LinkCopied = 'Link copied to memory';

				var strSellFilesCurrency = 'USD';

				$(function(){

					DOCUMENT_IS_LOADED=true

                    var intScrollTop = $('html').scrollTop();
                    var intFlagHeight = $('body').hasClass('show_header_flag') ? 20 : 0;
					intScrollTop = Math.max(intScrollTop, $('body').scrollTop());
					
                    if ( intScrollTop > 0 )
                    {
                        $('body').addClass('scrolled');
                    }
                    
                    var intPrevScrollPos = intScrollTop;
                    var objHeaderElem = document.getElementById("header");
                    
                    $(window).on('scroll', function () {
                        //close side menu
                        $( '#navbar-toggler-chb' ).prop('checked', false);
                        $( '#header' ).css('z-index', '');

                        var intScrollTop = $('html').scrollTop();
                        intScrollTop = Math.max(intScrollTop, $('body').scrollTop());
                        
                        if ( intScrollTop > 0 )
                        {
                            $('body').addClass('scrolled');
                        }
                        else
                        {
                            $('body').removeClass('scrolled');
                            checkMenuItems();
                        }

                                            });

					$( document ).mousemove( function( event )
					{
						if ( ! MMVD )
						{
							if ( ( ( new Date().getTime() ) - STDT ) > 1000 )
							{
								MMVD = true;
							}
						}
					});
				});


				function changeLanguage(strLangCode, strTitle)
				{
					var strUrl = '';
					switch (strLangCode)
					{
						case 'lv':
                            strUrl = 'https://failiem.lv/f/vb3s8pvaqp';
                            break;
						case 'en':
                            strUrl = 'https://files.fm/f/vb3s8pvaqp';
                            break;
						case 'ru':
                            strUrl = 'https://ru.files.fm/f/vb3s8pvaqp';
                            break;
						case 'de':
                            strUrl = 'https://de.files.fm/f/vb3s8pvaqp';
                            break;
						case 'fi':
                            strUrl = 'https://fi.files.fm/f/vb3s8pvaqp';
                            break;
                        case 'es':
                            strUrl = 'https://es.files.fm/f/vb3s8pvaqp';
                            break;
                        case 'ko':
                            strUrl = 'https://ko.files.fm/f/vb3s8pvaqp';
                            break;
                        case 'uk':
                            strUrl = 'https://ua.files.fm/f/vb3s8pvaqp';
                            break;
					}
                    gaev('HeaderClick', 'Lang_switch', strLangCode);
					window.location = strUrl + WEB_ROOT_PATH;// + '?lng='+strLangCode;
					$('.language_dropdown .activator SPAN').each(function (){
						var img = $('IMG', this).clone();
						$(this).html(strTitle + ' ').append(img);
					});
					hidePopups();
				}


				function gaev(strCategory, strAction, strLabel, strValue) {

					if (typeof gtag != 'undefined') {
						// old ga.js
						//_gaq.push(['_trackEvent', strCategory, strAction, strLabel]);
						
						// Send the event to the gtag.js Google Analytics property
						// with tracking ID GA_MEASUREMENT_ID.
						gtag('event', 'Events', {
						  'event_category': strCategory,
						  'event_action': 	strAction,
						  'event_label': 	strLabel,
						  'value':			strValue
						});
						
						/*gtag('event', 'strEveryEventTest', {
						  'send_to': 'UA-1970559-10',
						  'event_category': 'EveryEvent',
						  'event_action': 	'TestAction',
						  'event_label': 	'TestLabel'
						});*/

					};
					
					
					if ( typeof _paq != 'undefined' )
					{
						_paq.push( [
							'trackEvent',
							strCategory ,
							strAction ,
							strLabel ,
							strValue
						] );
					}
				}
				
				function logClick(strButton)
				{
										if (typeof gtag != 'undefined')
					{
						//_gaq.push(['_trackEvent', 'ActionLine', strButton, 'List']);

						gtag('event', 'Clicks', {
						  'send_to': 'UA-1970559-10',
						  'event_category': 'ActionLine',
						  'event_action': 	strButton,
						  'event_label': 	'List'
						});
					};
									}


				function printAdwordsConversion(strIframeName) {

					var  iframe = document.createElement('iframe');
					iframe.style.width = '0px';
					iframe.style.height = '0px';
					document.body.appendChild(iframe);

					iframe.src = 'https://files.fm/server_scripts/google_adwords/'+ strIframeName +'.php';
				}

			</script>
<script>
				var IS_MOBILE = false;
			</script>

<!--[if lt IE 9]>
				<script type="text/javascript" src="./js/html5.js"></script>
				<script type="text/javascript" src="./js/css3-mediaqueries.js"></script>
			<![endif]-->
<script>  	var tb_lang = new Object();  	tb_lang["close"] = "Close";  	tb_lang["or_esc_key"] = "or press the Esc key";  </script>
<script>

				Math._round = function(number, precision)
				{
					precision = Math.abs(parseInt(precision)) || 0;
					var coefficient = Math.pow(10, precision);
					return Math.round(number*coefficient)/coefficient;
				}

				function file_size_format (filesize, intPrecision, bolShowBits=false )
				{
					if ( bolShowBits )
					{
						filesize = filesize * 8;
					}
				    
				    if (typeof(intPrecision) == 'undefined' || intPrecision==null)
				        intPrecision = 2;
				    
					if (filesize >= 1073741824)
					{
						filesize = Math._round(filesize / 1073741824, 2).toFixed(intPrecision) + '&nbsp;G';
					}
					else
					{
						if (filesize >= 1048576)
						{
							filesize = Math._round(filesize / 1048576, 2).toFixed(intPrecision) + '&nbsp;M';
						}
						else
						{
							if (filesize >= 1024)
							{
								filesize = Math._round(filesize / 1024, 0).toFixed(intPrecision) + '&nbsp;K';
							}
							else
							{
								filesize = filesize.toFixed(intPrecision) + '&nbsp;';
							};
						};
					};
					
					if ( bolShowBits )
					{
						filesize += 'bits';
					}
					else 
					{
						filesize += 'B';
					}
					
					return filesize;
				};

			</script>
<script>
    /**
     * @param strEmails - one or more emails delimited with ","
     * @param bolIsSingleEmail - is strEmails only one email
     */
    function EmailValidator(strEmails, bolIsSingleEmail)
    {
        this.state = EmailValidator.states.READY;
        this.strSuggestedEmails = "";
        this.strEmails = strEmails.trim();
        this.strNoMxEmails = "";
        this.strInputID = "";
        this.bolIsSingleEmail = bolIsSingleEmail;

        // set default invalid cb
        this.setOnInvalidCB(function(){});
        this.strErrorClass = "has-error";
    }
    
    EmailValidator.regexTest = function(email) 
    {
        var re = /^(([^<>()[\]\\.,;:\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,}))$/;
        
        return re.test( email )
            // disallow single quotes
            && email.indexOf( "'" ) === -1;
    };
    
    //<editor-fold desc="Setters">
    /**
     * this.onValidCB and this.onInvalidCB and this.setOnSuggestionCB execution order:
     *  1. remove this.strErrorClass from this.strInputID
     *  2. show or hide modal - only for onInvalid and onValid
     *  3. run callback
     */
    EmailValidator.prototype.setOnValidCB = function (onValidCB)
    {
        this.onValidCB = applyTo(this, function ()
        {
            if (this.strModalID && $('#' + this.strModalID).css('opacity') == 0)
            {
                showModal(this.strModalID);
            }
            this.removeClassFromInput();
            onValidCB();
        });

        return this;
    };
    EmailValidator.prototype.setOnInvalidCB = function (onInvalidCB)
    {
        this.onInvalidCB = applyTo(this, function ( strInvalidEmails)
        {
            if( typeof strInvalidEmails === 'undefined' )
            {
                strInvalidEmails =  '';
            }
            
            if (this.strModalID && $('#' + this.strModalID).css('opacity') == 0)
            {
                showModal(this.strModalID);
            }
            this.addErrorClassToInput();
            onInvalidCB(strInvalidEmails);
        });

        return this;
    };
    EmailValidator.prototype.setOnSuggestionCB = function (onSuggestionCB)
    {
        this.revalidate = function ()
        {
            this.addErrorClassToInput();
            onSuggestionCB();
        };
        return this;
    };
    
    EmailValidator.prototype.setModalID = function (strModalID)
    {
        this.strModalID = strModalID;
        return this;
    };

    EmailValidator.prototype.setInputID = function (strInputID)
    {
        this.strInputID = strInputID;
        return this;
    };

    EmailValidator.prototype.setErrorClass = function (strErrorClass)
    {
        this.strErrorClass = strErrorClass;
        return this;
    };
    //</editor-fold>
    
    EmailValidator.prototype.onTooManyEmails = function () 
    {
        fError("You cannot send more than 5 emails at one time.", "", "OK", applyTo(this, this.onInvalidCB));
    };

    /**
     * adds this.strErrorClass to element with ID this.strInputID
     */
    EmailValidator.prototype.addErrorClassToInput = function ()
    {
        if (this.strInputID)
        {
            $("#" + this.strInputID).addClass(this.strErrorClass);
        }
    };

    /**
     * removes this.strErrorClass from element with ID this.strInputID
     */
    EmailValidator.prototype.removeClassFromInput = function ()
    {
        if (this.strInputID)
        {
            $("#" + this.strInputID).removeClass(this.strErrorClass);
        }
    };

    EmailValidator.prototype.run = function ()
    {
        if(this.strEmails === "") 
        {
            this.state = EmailValidator.states.INVALID;
            this.onInvalidCB();
            return;
        }
        
        // onValid, onInvalid and strEmails are necessary!
        if (!this.onValidCB || !this.onInvalidCB)
        {
            throw new Error("EmailValidator is missing essential data!");
        }
        
        var emails;

        // check if not over allowed email count
        if( !this.bolIsSingleEmail )
        {
            emails = this.strEmails.split(",");
            if( emails.length > 50 ) {
                this.state = EmailValidator.states.TOO_MANY_EMAILS;
                this.onTooManyEmails();
                return;
            }
        }
        else
        {
            emails = [ this.strEmails ];
        }

        // test emails against email regex before posting them
        for (var i in emails)
        {
            if ( emails.hasOwnProperty(i) && !EmailValidator.regexTest( emails[i].trim() ) )
            {
                this.state = EmailValidator.states.INVALID;
                this.onInvalidCB( emails[i].trim() );
                return;
            }
        }

        this.state = EmailValidator.states.RUNNING;

        $.post('/chkMail.php', {'q': this.strEmails}, applyTo(this, this.onResponse));
    };

    EmailValidator.prototype.onResponse = function (data)
    {
        var arrReturn = JSON.parse(data);

        if (arrReturn['result'] === 0)
        {
            this.state = EmailValidator.states.VALID;
            this.onValidCB(this);
        }
        else if(arrReturn['result'] === EmailValidator.states.INVALID) 
        {
            this.state = EmailValidator.states.INVALID;
            this.onInvalidCB();
        }
        else if (arrReturn['result'] === 2)
        {
            this.strSuggestedEmails = arrReturn['suggest'];

            if (arrReturn['no_mx'])
            {
                this.strNoMxEmails = arrReturn['no_mx'];
                this.state = EmailValidator.states.MISSING_MX_RECORDS;
            }
            else
            {
                this.state = EmailValidator.states.POSSIBLE_TYPO;
            }

            // this calls onSuggestionCB
            this.revalidate();
        }
        else if (arrReturn['result'] === 4)
        {
            this.state = EmailValidator.states.TOO_MANY_EMAILS;
            this.onTooManyEmails();
        }
    };

    EmailValidator.prototype.revalidate = function ()
    {
        // add typo suggestions and emails with no mx records to string
        var strMsg = '';
        if (this.strSuggestedEmails !== '')
        {
            strMsg += "Did you mean:";
            strMsg += " " + this.strSuggestedEmails + "?\n";
        }
        if (this.strNoMxEmails !== '')
        {
            if(this.bolIsSingleEmail)
            {
                strMsg += "It\u2019s possible that this e-mail address is incorrect:"            }
            else 
            {
                strMsg += "These e-mail addresses might be invalid:"            }
            
            strMsg += " " + this.strNoMxEmails + ".\n";
        }

        if(this.bolIsSingleEmail)
        {
            strMsg += "Please check the email you have entered! If it is correct, click OK.";
        }
        else 
        {
            strMsg += "Please verify that the entered e-mails are correct! If all e-mails are correct, press OK.";
        }

        this.addErrorClassToInput();

        // hide the original modal to avoid overlapping
        if (this.strModalID && $('#'+this.strModalID).css('opacity') == 1)
        {
            hideModal(this.strModalID);
        }

        fConfirm(
            strMsg,
            "Check the email address you entered",
            "OK",
            "Cancel",
            applyTo(this, function ( bolResult)
            {
                // execute onInvalid only if user declines
                if (bolResult === false)
                {
                    this.state = EmailValidator.states.INVALID;
                    this.onInvalidCB();
                }
            }),
            applyTo(this, function ()
            {
                this.state = EmailValidator.states.ACCEPTED_TYPO;
                this.onValidCB();
            }, this)
        );
    };

    EmailValidator.prototype.isSubmittable = function ()
    {
        return [EmailValidator.states.VALID, EmailValidator.states.ACCEPTED_TYPO].indexOf(this.state) !== -1;
    };

    EmailValidator.states = {
        READY: -2,              // initial state
        RUNNING: -1,            // request has started and server has not responded yet

        // => onValidCB
        VALID: 0,

        // => onInvalidCB
        INVALID: 1,

        // => revalidate => onSuggestionCB
        POSSIBLE_TYPO: 2,       // there are typos in the submitted emails
        MISSING_MX_RECORDS: 3,  // some emails have missing mx records
        TOO_MANY_EMAILS: 4,     // too many emails are submitted

        // => revalidate => onSuggestionCB (clicked OK) => onValid 
        ACCEPTED_TYPO: 5        // typo was spotted but user dismissed it
    };
    
    // the function is defined in functions.js, but because this script is included in bergafoto, lets check to make sure.
    if ( typeof applyTo !== 'function' )
    {
        /**
         * Magic function that makes vanilla JS objects usable
         *  - execute fn in the context of $this with passed parameters
         *  - you can also pass parameters to the fn that is returned, they will be added to the fn call
         * @param $this - Object scope
         * @param fn - Object method to execute
         * @param var1 - first parameter to be passed to fn
         * @returns {Function}
         */
        window.applyTo = function( $this, fn, var1 )
        {
            if ( !$this )
            {
                throw new Error( "Invalid usage of closure function, scope must be defined." );
            }
        
            if ( !fn )
            {
                throw new Error( "Invalid usage of closure function, fn must be defined." );
            }
        
            var finalArgs = [];
        
            // skip first 3 arguments (callee, $this, fn)
            for ( var i = 2; i < arguments.length; ++i )
            {
                // add to list of args
                finalArgs.push( arguments[ i ] );
            }
        
            return function ()
            {
                // add all arguments
                for ( var i = 0; i < arguments.length; ++i )
                {
                    finalArgs.push( arguments[ i ] );
                }
            
                // first arguments will be the ones passed to closure, then the ones passed to this function
                return fn.apply( $this, finalArgs );
            };
        }
    }
</script>
<link rel="stylesheet" type="text/css" media="all" href="/bootstrap/css/dropdown.css?v=1715343645"><link rel="stylesheet" type="text/css" media="all" href="/css/global_facelift.css?v=1720449903"><link rel="stylesheet" type="text/css" media="all" href="/css/inputs.css?v=1717752354"><link rel="stylesheet" type="text/css" media="all" href="/js/jquery-ui-1.12.1.custom/jquery-ui.min.css?v=1715343640"><link rel="stylesheet" type="text/css" media="all" href="/css/thickbox.css?v=1715343651"><link rel="stylesheet" type="text/css" media="all" href="/css/modal.css?v=1715343648"><link rel="stylesheet" type="text/css" media="all" href="/css/font-awesome-new/css/font-awesome.min.css?v=1715343648"><link rel="stylesheet" type="text/css" media="all" href="/css/font-awesome-pro/css/light.min.css?v=1715343650"><link rel="stylesheet" type="text/css" media="all" href="/css/font-awesome-pro/css/brands.min.css?v=1715343650"><link rel="stylesheet" type="text/css" media="all" href="/css/font-awesome-pro/css/fontawesome.min.css?v=1715343649"><link rel="stylesheet" type="text/css" media="all" href="/css/alert.css?v=1715343648">
<script src="/js/jquery.cookie.js?v=1715343634"></script>
<script src="/js/jquery-ui-1.12.1.custom/jquery-ui.js?v=1715343640"></script>
<script src="/js/global.js?v=1727422596"></script>
<script src="/js/info_tooltips.js?v=1722490360"></script>
<script src="/js/jquery-ui-1.11.4.custom/jquery-ui.min.js?v=1715343634"></script>
<script src="/js/event.js?v=1715343644"></script>
<script src="/js/functions.js?v=1715343642"></script>
<script src="/js/thickbox.js?v=1715343642"></script>
<script src="/js/modal.js?v=1715343639"></script>
<script src="/js/alert.js?v=1715343643"></script><link rel="stylesheet" type="text/css" media="all" href="/css/stripe_payment_form.css?v=1715343648">
<script src="/js/stripe_payment_form.js?v=1720712236"></script>
<script>

	var PHPSESSID = '7631d5f47f04cc8b0625379e8685336dbe57ec52';
	var STRIPE_PUBLIC_KEY = 'pk_live_qdaFEN4KBX40UvEYnwlKCIX8';
	var STRIPE_LOCALE = 'auto';

	var arrStripePaymentFormErrorMsg = {
		'FinishOrder' : 'An error occurred while processing the order. Please contact [email protected]!' ,
		'Processing' : 'An error occurred while processing the payment. Please try again or contact [email protected]!' ,
		'InvalidData' : 'Please enter valid payment card details!' ,
		'BankDeclined' : 'An error occurred while processing payment - your bank declined the payment. Please check if your bank account has enough funds; if your payment card is authorized to make payments on the Internet. Or contact your bank, or use another payment card.' ,
		'NotEnoughFunds' : 'Your bank account does not have enough funds. Please supplement the account or use another payment card!' ,
		'InvalidCVV' : 'Please check and enter a valid payment card CVV code!' ,
        'AlreadyPaid' : 'Thank you, payment has already been received.' ,
	};

</script> </head>
<body class="lang_en use_vh full-width non-sticky">

<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-N9HRMM7"
            height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>


<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5ZNTW54" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>

<script>

    jQuery.fn.shake = function(interval,distance,times){
        interval = typeof interval == "undefined" ? 100 : interval;
        distance = typeof distance == "undefined" ? 10 : distance;
        times = typeof times == "undefined" ? 3 : times;
        var jTarget = $(this);
        jTarget.css('position','relative');
        for(var iter=0;iter<(times+1);iter++){
            jTarget.animate({ left: ((iter%2==0 ? distance : distance*-1))}, interval);
        }
        return jTarget.animate({ left: 0},interval);
    }

	$( window ).bind( 'load', function()
	{
        const strUrlParams = new URLSearchParams(window.location.search);
		if( strUrlParams.has('coupon') || strUrlParams.has('kupons') ) 
		{
			showCreateAccount();
            adaptFormForCoupon();
        }
	} );
</script>
<div id="container" class="filesfm ">
<noscript>
				<table class="alert_container alert_container_danger" style="display: block">
					<tr>
						<td>
							<i class="fa fa-exclamation-circle"></i>
						</td>
						<td>
							<div class="alert_main_text">
								Your browser does not support Javascript. To use this page turn on JavaScript or use another browser.							</div>
						</td>
					</tr>
				</table>
			</noscript>
<header id="header" class="">
<nav>


<div id="header_flag">
<div id="header_flag_1"></div>
<div id="header_flag_2"></div>
</div>
<!-- -->

<div class="container">
<input type="checkbox" class="navbar-toggler" id="navbar-toggler-chb">
<label id="navbar-toggler" class="only-bottom navbar-toggler-stripes user-has-not-clicked-navbar-toggler new" for="navbar-toggler-chb" onclick="if(! $('#navbar-toggler-chb').is(':checked')) { $( '#header' ).css('z-index', '100000'); } $( this ).toggleClass( 'clicked' ); navbarTogglerClicked(); gaev('HeaderClick', 'Hamburger-menu', '');" onmouseover="navbarTogglerClicked()" style="visibility: visible;">
Menu </label>
<script type="text/javascript">
                function navbarTogglerClicked()
                {
                    $( '#navbar-toggler' ).removeClass( 'user-has-not-clicked-navbar-toggler' );
                    document.cookie = 'user-has-clicked-navbar-toggler=1; max-age=' + (365*24*60*60) + ' ; path=/ ; domain=failiem.lv';
                    document.cookie = 'user-has-clicked-navbar-toggler=1; max-age=' + (365*24*60*60) + ' ; path=/ ; domain=.failiem.lv';
                    document.cookie = 'user-has-clicked-navbar-toggler=1; max-age=' + (365*24*60*60) + ' ; path=/ ; domain=files.fm';
                    document.cookie = 'user-has-clicked-navbar-toggler=1; max-age=' + (365*24*60*60) + ' ; path=/ ; domain=.files.fm';
                }
            </script>
<div class="nav-left">
<a class="navbar-brand menu-link" onclick="gaev('HeaderClick', 'Logo', '');" href="/">
<img class="logo" alt="Files.fm" src="/images/logo/rebranded/files-fm-logo-slogan.svg"> </a>
</div>
<div class="navbar" id="main-nav" style="overflow: initial;">
<ul>





<li class="nav-button showonfirstload_mid nav-upload nav-bottom" data-priority="2" data-original-order="5" style="display: list-item;">
<a class="nav-link" href="javascript:void(0);" onclick="$('html, body').animate({ scrollTop: 0 }, 'fast'); setTimeout(()=>{$('#uploadifive-file_upload').shake();}, 50); gaev('HeaderClick', 'Upload', '');"></a>
</li>
<li class="nav-button showonfirstload_mid nav-plans nav-bottom" data-priority="2" data-original-order="6">
<a class="nav-link" href="/storage-plans" onclick="gaev('HeaderClick', 'Storage_plans_and_prices', '');">
<div class="top">Pricing</div>
<div class="bottom">Upgrade</div>
</a>
</li>
<li class="nav-button darker nav-right" data-priority="2" data-original-order="7" style="display: list-item;">
<a href="/" onclick="gaev('HeaderClick', 'Start_upload', ''); hidePopups();" class="nav-link">
Upload files </a>
</li>
<li class="nav-button darker blue showonfirstload_small nav-files nav-bottom nav-hideTop" data-priority="1" style="margin-right: 6px; display: list-item;" data-original-order="8">
<a href="/filebrowser" onclick="gaev('HeaderClick', 'My_files', 'NotLoggedIn');" class="nav-link">
My files </a>
</li>
<li class="nav-right nav-button darker showonfirstload_small nav-bottom nav-login" data-priority="0" data-original-order="9">
<div id="login">
<a href="javascript:void(0);" onclick="gaev('HeaderClick', 'Log_in', ''); showSignIn(); return false;" id="login_button" class="">
<span id="login_button_text">Log in</span>
</a>
</div>
</li>
<li class="nav-right nav-button red showonfirstload_small" data-priority="1" data-original-order="10">
<div>
<a href="javascript:void(0);" onclick="gaev('HeaderClick', 'Sign_up', ''); showCreateAccount(); return false;" id="signup">New</a>
</div>
</li>
<li class="nav-right showonfirstload_mid" id="lang_switch" data-priority="2" data-original-order="11">
<div class="header_menu_wrap">
<div class="header_menu_label">
<img id="lang_switch_icon_dark" src="/images/UI_icons/globe.svg">
<span class="currentlang">EN</span>
</div>
<div class="header_menu_drawer right">
<a class="drawer-item" href="javascript:changeLanguage('en', 'EN');">English (EN)</a>
<a class="drawer-item" href="javascript:changeLanguage('es', 'ES');">Español (ES)</a>
<a class="drawer-item" href="javascript:changeLanguage('de', 'DE');">Deutsch (DE)</a>
<a class="drawer-item" href="javascript:changeLanguage('fi', 'FI');">Suomi (FI)</a>

<a class="drawer-item" href="javascript:changeLanguage('ru', 'РУ');">Русский (РУ)</a>
<a class="drawer-item" href="javascript:changeLanguage('uk', 'UK');">Українська (UA)</a>
<a class="drawer-item" href="javascript:changeLanguage('lv', 'LV');">Latviešu (LV)</a>
</div>
</div>
</li>
</ul>
</div>
<script>
                function addAnonymousUploads()
                {
                    var addUploads = confirm('Bind previous uploads from this device to your account? You can manage or delete them.');
                    if (addUploads == true)
                    {
                        $('.add_anonym_uplaods').val('1');
                    }
                }
            </script>
<div id="mega-menu" class="collapse">
<div class="container event_ignore_click">
<ul id="nav-functional" class="has-items event_ignore_click"><li data-priority="10" class="nav-button" data-original-order="0" data-original-width="125" style="display: list-item;">
<div class="header_menu_wrap">
<div class="header_menu_label">Solutions</div>
<div class="header_menu_drawer">
<a class=" SyncShare withicon drawer-item" href="/sync-share" onclick="gaev('HeaderClick', 'Solutions-Storage', '');">
Data storage <div class="desc">Automatic sync and sharing tools</div>
</a>
<a class=" Filebox withicon drawer-item" href="/upload-form" onclick="gaev('HeaderClick', 'Solutions-Filebox', '');">
Integrate file uploads or API <div class="desc">File upload form for websites</div>
</a>
<a class="PublicProfiles withicon drawer-item" href="/public-profiles" onclick="gaev('HeaderClick', 'Solutions-Publish', '');">
Publish content <div class="desc">Create a public profile and file catalog</div>
</a>
<a class=" SportEvents withicon drawer-item" href="/events" onclick="gaev('HeaderClick', 'Solutions-SportEvents', '');">
For sports and events <div class="desc">Publishing content from events</div>
</a>
<a class=" SellFiles withicon drawer-item" href="/sell-files" onclick="gaev('HeaderClick', 'Solutions-SellFiles', '');">
Sell content <div class="desc">Sell your content publicly or privately</div>
</a>

</div>
</div>
</li><li data-priority="2" class="nav-button" data-original-order="1" style="display: list-item;" data-original-width="96">
<div class="header_menu_wrap">
<div class="header_menu_label">Apps</div>
<div class="header_menu_drawer">
<a class="drawer-item" href="https://chat.files.fm" onclick="gaev('HeaderClick', 'Apps-Chat-AI', '');" target="_blank"> AI chat.files.fm</a>
<a class="drawer-item" href="https://play.google.com/store/apps/details?id=com.files.fm" onclick="gaev('HeaderClick', 'Apps-Android', '');" target="_blank"> Mobile: Android <div class="drawer-item-new">New!</div></a>
<a class="drawer-item" href="https://apps.apple.com/in/app/files-fm-cloud-storage/id1636301796" onclick="gaev('HeaderClick', 'Apps-IOS', '');" target="_blank"> Mobile: Apple iOS <div class="drawer-item-new">New!</div></a>
<a class="drawer-item" href="/sync-share#setup" onclick="gaev('HeaderClick', 'Apps-Desktop', '');"> Sync for Windows | MacOS | Linux</a>

<a class="drawer-item" href="/webdav-info" onclick="gaev('HeaderClick', 'Apps-Webdav', '');">Network drive via Webdav</a>
</div>
</div>
</li><li data-priority="2" class="nav-button" data-original-order="2" style="display: list-item;" data-original-width="96">
<div class="header_menu_wrap">
<div class="header_menu_label">Tools</div>
<div class="header_menu_drawer">
<a class="withicon drawer-item Useroutline" target="_blank" href="/public-profiles" onclick="gaev('HeaderClick', 'Tools-My-public-profile', '');">My public profile</a>
<a class="withicon drawer-item ConvertMp4" href="?convert-to-mp4" onclick="gaev('HeaderClick', 'Tools-convert-to-mp4', '');">Convert video to mp4</a>
<a class="withicon drawer-item ConvertPDF" href="?convert-to-pdf" onclick="gaev('HeaderClick', 'Tools-convert-to-pdf', '');">Convert docs to PDF</a>
<a class="withicon drawer-item VideoCall" href="https://video.failiem.lv/b/auth/openid_connect" onclick="gaev('HeaderClick', 'Tools-Video-room', '');">Create video room</a>
</div>
</div>
</li><li class="nav-button" data-priority="2" data-original-order="3" style="display: list-item;" data-original-width="109">
<a href="/business" class="nav-link">
Business </a>
</li><li class="nav-button library-button  new" data-priority="2" data-original-order="4" style="display: list-item;" data-original-width="103">
<a href="/discover" class="nav-link">
Content <div class="tag new">New!</div>
</a>
</li></ul>
</div>
<div class="overlay"></div>
</div>
<div id="mega-menu-close"></div>
</div>
<div id="navbar-css"></div>
</nav>
</header>
<script>

            if (!$.cookie('new_library'))
        {
            $('.library-button').addClass('new');
            $('.navbar-toggler-stripes').addClass('new');
            
        }

        $('.library-button').on('click', function () {
            if ( $(this).hasClass('new') )
            {
                document.cookie = 'new_library="1"; max-age=' + (90*24*60*60) + ' ; path=/ ; domain=failiem.lv';
                document.cookie = 'new_library="1"; max-age=' + (90*24*60*60) + ' ; path=/ ; domain=.failiem.lv';
                document.cookie = 'new_library="1"; max-age=' + (90*24*60*60) + ' ; path=/ ; domain=files.fm';
                document.cookie = 'new_library="1"; max-age=' + (90*24*60*60) + ' ; path=/ ; domain=.files.fm';

                $(this).removeClass('new');
                $('.navbar-toggler-stripes').removeClass('new');
            }
        });

        
    $('#mega-menu .other-apps LI').on('click', function () {
        if ( $('A:first-child', this).attr('href') != null && $('A:first-child', this).attr('href').indexOf('javascript:') == -1 )
        {
            window.location = $('A:first-child', this).attr('href');
        }
    });
    
    $('#mega-menu-close').on('click', function () {
        $( '#navbar-toggler-chb' ).prop('checked', false);
        $( '#header' ).css('z-index', '');
    });

    $('.header_menu_wrap').on('mouseleave', function (e)
    {
        var $elem = $(this);
        
        if (! $elem.parents('#mega-menu').length) 
        {
            if ($elem.is("#usergreeting") ){
                setTimeout(function() {
                    if(! $('#usergreeting:hover').length > 0)
                    {
                        $elem.find('.header_menu_label').removeClass('open');
                    }
                }, 500);
            }
            else
            {
                if(!$elem[ 0 ].matches(":hover"))
                {
                    $elem.find('.header_menu_label').removeClass('open');
                }
            }
        }
    });

    $('.header_menu_label').on('click', function () {
       
        var that = this;

        $(".header_menu_label").filter(function() {
            // check object in list is not current object
            if ($(this).parents('#mega-menu').length)
            {
                return false;
            }
            return this != that;
        }).removeClass('open');

        $(this).toggleClass('open');
       
        var $elem = $(this);
        
        $elem.parent().find('.header_menu_drawer').css({
            'left': '', 
            'right': ''
        });
        
        var bounding = $elem.parent().find('.header_menu_drawer')[0].getBoundingClientRect();
        var boundingParent = $elem[0].getBoundingClientRect();
        if (bounding.left < 0)
        {
            $elem.parent().find('.header_menu_drawer').css({
                'left': -boundingParent.left+5 + 'px', 
                'right': 'unset'
            });
        }
        if (bounding.right > (window.innerWidth || document.documentElement.clientWidth))
        {
            $elem.parent().find('.header_menu_drawer').css({
                'left': 'unset', 
                'right': -(window.innerWidth-boundingParent.right)+20 + 'px'
            });
        }
    });
</script>
<script src="/js/Captcha/Google/LazyGoogleReCaptchaV2.js"></script>
<script>
                objLazyGoogleReCaptchaV2.strLanguageKey = "en";
                objLazyGoogleReCaptchaV2.strSiteKey = "6LflqXQUAAAAAP2CM782IqIgjzooEt9soXTCwxX2";
            </script>
<link rel="stylesheet" type="text/css" media="all" href="/css/sign_in_form.css?v=35">
<div id="sign-in" class="modal-container" tabindex="-1" role="dialog" aria-labelledby="createaccount-header signin-header" aria-hidden="true" style="display:none">
<div class="modal-inner">

<div id="sign-in-header">
<span id="signin-header" onclick="if( !$( '#signin-modal-content' ).is( ':visible' ) ) showSignIn(); return false;">
Log in <img id="signin-header_icon_inactive" src="/images/signup_form/log_in.svg?v=2" alt="Login to upload files">
<img id="signin-header_icon_active" src="/images/signup_form/log_in_blue.svg?v=2" alt="Login to upload files">
</span>
<span id="createaccount-header" onclick="if( !$('#createaccount-modal-content').is(':visible')) showCreateAccount(); return false;">
Sign up </span>
</div>

<div id="createaccount-referral-container" style="display:none">
<span class="referrer-container">
You have been invited by&nbsp;<span id="createaccount-referral-referrer"></span>&nbsp;to create account and get 1GB </span>
<hr>
</div>
<div id="createaccount-message-container">
<table class="alert_container alert_container_danger">
<tbody><tr>
<td><i class="fa fa-exclamation-circle"></i></td>
<td><div class="alert_main_text"></div></td>
</tr>
</tbody></table>
</div>

<div id="createaccount-modal-content" class="modal-content">
<div class="info"></div>

<div class="signin-modal-content-social">
<div class="signin-modal-content-social-title">Create free account:</div>
<div class="signin-modal-content-social-buttons-container signin-modal-content-social-buttons-container-2-buttons">

<div class="standard_button google_button social_login_button" onclick="checkSocialLogin('google');">
<img src="/images/signup_form/login-google.svg?v=2" alt="Sign up with Google to upload files for free">
<span>Google</span>
</div>
<div class="standard_button ms_button social_login_button" onclick="checkSocialLogin('microsoft');">
<img src="/images/signup_form/login-microsoft.svg" alt="Sign up with Microsoft to upload files for free">
<span>Microsoft</span>
</div>
<div class="justify_el"></div>
</div>
</div>

<div class="or-delimiter">
or </div>

<div id="createaccount-simple-container">
<input id="createaccount-referral-hash" name="inviter_hash" type="hidden">
<input id="createaccount-referral-user" name="inviter_user" type="hidden">
<div id="register_coupon_code">
<div class="input-label">
<label for="register_coupon_code_input">Coupon code</label>
<input id="register_coupon_code_input" name="coupon_code" type="text">
</div>
<div class="createaccount-input-container"></div>
</div>
<div class="no-coupon-link">
<a href="" onclick="revertFormFromCoupon(); return false">I do not have a coupon code »</a>
</div>
<div class="input-label">
<label for="createaccount_name">First name</label>
<input id="createaccount_name" name="createaccount_name" type="text" autocomplete="off">
</div>
<div class="input-label">
<label for="createaccount_surname">Last name</label>
<input id="createaccount_surname" name="createaccount_surname" type="text" autocomplete="off">
</div>
<div class="input-label">
<label for="createaccount_email">E-mail</label>
<input id="createaccount_email" name="createaccount_email" type="email" autocomplete="off" onchange="createUsername(this.value);">
</div>
<div class="input-label">
<label for="createaccount_password">Password</label>
<input id="createaccount_password" name="createaccount_password" type="password" autocomplete="off">
</div>
<div class="justify_el"></div>


<div id="your_public_profile_container">
<div id="your_public_profile_label_text_before">
Your profile:
</div>
<div id="your_public_profile_label">
<span id="your_public_profile_label_text">
Your profile:
</span>
<span id="your_public_profile_label_host">
https://files.fm/ </span>
</div>
<div id="your_public_profile_field_input">
<input id="createaccount_username" name="createaccount_username" type="text" autocomplete="off" placeholder="Username" onkeyup="usernameChanged();">
</div>
</div>
<div id="createaccount_coupon_info" onclick="showSignIn()">
I already have a Files.fm account » </div>
<div id="createaccount_error_msg" class="error_msg"></div>
<div class="sign_in_captcha" id="createaccount_captcha">
<div class="google-recaptcha-v2-container" id="78B590BB-D813-E6F3-5923-D49210AB98FE"></div> <script>
                                function loadCreateAccountCaptcha()
                                {
                                    (function () {
            var init = function (){
                // Wait for include to load
                if ( typeof(objLazyGoogleReCaptchaV2) !== "undefined" )
                {
                    objLazyGoogleReCaptchaV2.initInstance (
                        "78B590BB-D813-E6F3-5923-D49210AB98FE",
                        captchaCreateAccountLoaded,
                        captchaCreateAccountSubmitted
                    )
                }
                else
                {
                    setTimeout(init, 50);
                }
            };
            init();
        })();
                                }
                            </script>
</div>
<div class="sign_in_submit_bn" onclick="checkCreateAccountForm();">
Sign up <img src="/images/signup_form/sign_up.svg" alt="Sign up to upload files for free">
</div>
<div id="createaccount-modal-link-container">
<a id="createaccount-modal-coupon-link" href="javascript:void(0)" onclick="adaptFormForCoupon()">
<span>Use a coupon</span>
</a>
</div>
<div id="createaccount_info">
By using this website, you agree to the terms and data processing: <a href="/terms?source=sign-up" target="_blank">Learn more »</a> </div>
<div id="createaccount_info_ico">
Registred users can store and access files for unlimited time and choose to publish them in their profile. <a href="/storage-plans" target="_blank">More info »</a> </div>

<div id="createaccount_termsandcondtotions_ico">
By signing up, you agree to our <a href="/terms" target="blank">terms of use »</a> </div>
<input id="register_from_ico" type="hidden" name="from_ico" value="0">
<input type="hidden" name="login_return_url" class="login_return_url" value="">
<input type="hidden" name="dont_redirect_after_login" class="dont_redirect_after_login" value="">
</div>

</div>


<div id="signin-modal-content" class="modal-content">
<table id="signin-modal-content-error" class="alert_container alert_container_info">
<tbody><tr>
<td>
<i class="fa fa-exclamation-circle"></i>
</td>
<td>
<div class="alert_main_text"></div>
</td>
</tr>
</tbody></table>

<div class="signin-modal-content-social">
<div class="signin-modal-content-social-title">Choose sign-in method:</div>
<div class="signin-modal-content-social-buttons-container">
<div class="standard_button fb_button social_login_button" onclick="checkSocialLogin('facebook');">
<img src="/images/signup_form/login-facebook.svg?v=2" alt="Login with Facebook to upload files for free">
<span>Facebook</span>
</div>
<div class="standard_button google_button social_login_button" onclick="checkSocialLogin('google');">
<img src="/images/signup_form/login-google.svg?v=2" alt="Login with Google to upload files for free">
<span>Google</span>
</div>
<div class="standard_button ms_button social_login_button" onclick="checkSocialLogin('microsoft');">
<img src="/images/signup_form/login-microsoft.svg" alt="Sign up with Microsoft to upload files for free">
<span>Microsoft</span>
</div>
<div class="justify_el"></div>
</div>
</div>

<div class="or-delimiter">
or </div>

<div id="signin-modal-content-simple">
<form onsubmit="checkSignInForm(); return false;" id="login_filesfm">
<div id="signin_input_container">
<div class="input-label l_coupon_code">
<label for="l_coupon_code">Coupon code</label>
<input id="l_coupon_code" name="coupon_code" type="text">
</div>
<div class="no-coupon-link">
<a href="" onclick="revertFormFromCoupon(); return false">I do not have a coupon code »</a>
</div>
<div class="input-label">
<label for="l_user">Username or e-mail</label>
<input id="l_user" name="l_user" type="text">
</div>
<div class="input-label">
<label for="l_pass">Password</label>
<input id="l_pass" name="l_pass" type="password">
</div>
<div class="justify_el"></div>
</div>
<a id="signin-modal-forgot-link" href="" onclick="showForgotPassword(); return false">
<span>Forgot password?</span>
</a>
<div id="signin_coupon_info" onclick="showCreateAccount()">
I do not have a Files.fm account » </div>
<div id="signin_error_msg" class="error_msg"></div>
<input type="submit" style="display: none;">
<div class="sign_in_submit_bn" onclick="checkSignInForm()">
Log in <img src="/images/signup_form/sign_up.svg" alt="Sign up">
</div>
</form>
<div id="signin-modal-link-container">
<a id="signin-modal-coupon-link" href="javascript:void(0)" onclick="adaptFormForCoupon()">
<span>Use a coupon</span>
</a>
</div>
<input type="hidden" name="login_return_url" class="login_return_url" value="">
<input type="hidden" name="dont_redirect_after_login" class="dont_redirect_after_login" value="">
</div>

</div>


<div id="forgotpassword-modal-content" class="modal-content">
<form onsubmit="return false;">
<div id="forgotpassword_text">
Enter your email address to reset your password. You may need to check your spam folder: </div>
<div class="input-label forgotpassword_email">
<label for="forgotpassword_email">E-mail</label>
<input id="forgotpassword_email" type="text">
</div>
<div id="forgotpassword_error_msg" class="error_msg"></div>
<div class="sign_in_submit_bn" onclick="checkForgotPasswordForm();">
Send recovery email <img src="/images/signup_form/sign_up.svg" alt="Send recovery email">
</div>
</form>
</div>


<div id="addcookieuploads-modal-content" class="modal-content">
<div id="addcookieuploads_info">
Bind previous uploads from this device to your account? You can manage or delete them. </div>
<div id="addcookieuploads_button_container">
<div class="addcookieuploads_button" id="addcookieuploads_button_no" onclick="setAddCookieUploads(false)">
No </div>
<div class="addcookieuploads_button" id="addcookieuploads_button_yes" onclick="setAddCookieUploads(true)">
Yes </div>
</div>
</div>


<div id="createaccountsuccessmessage-modal-content" class="modal-content">
<div id="createaccountsuccessmessage_info">
<div>
Thank you! Your Files.fm account is created and an e-mail with account access data is sent to you. </div>
<div>
Close this form, fill in the information about the folder and press the button "Save and send the link". </div>
</div>
<div id="createaccountsuccessmessage_button" onclick="hideModal('sign-in', true)">
Close </div>
</div>

<div id="twofactor_authcode-modal-content" class="modal-content" style="display:none">
<div id="twofactor_authcode_container">
<div id="twofactor_error_msg" class="error_msg"></div>
<div class="twofactor_code_required_message">
Please enter the two factor authentication code from your email! </div>
<input id="twofactorcode" name="twofactorcode" type="text" placeholder="Authentification code">
<div class="sign_in_submit_bn" onclick="trySignIn( $('#twofactorcode').val() )">
Log in <img src="/images/signup_form/sign_up.svg" alt="Log in">
</div>
<div id="twofactor-modal-link-container">
<a id="twofactor-modal-goback-link" href="" onclick="bolPrevFinished_checkSignInForm = true; showSignIn(); return false">
<span>Go back</span>
</a>
</div>
</div>
</div>

<div style="display: none">
<form id="login_facebook" method="get" action="/">
<input type="hidden" name="fb_login" value="">
<input type="hidden" name="add_anonym_uplaods" class="add_anonym_uplaods" value="">
<input type="hidden" name="login_return_url" class="login_return_url" value="">
<input type="hidden" name="dont_redirect_after_login" class="dont_redirect_after_login" value="">
<input type="hidden" name="inviter_user" value="">
<input type="hidden" name="inviter_hash" value="">
<input type="submit" class="standard_button" value="Log in with Facebook" style="width: 100%">
</form>
<form id="login_google" method="get" action="/">
<input type="hidden" name="google_login" value="">
<input type="hidden" name="add_anonym_uplaods" class="add_anonym_uplaods" value="">
<input type="hidden" name="login_return_url" class="login_return_url" value="">
<input type="hidden" name="dont_redirect_after_login" class="dont_redirect_after_login" value="">
<input type="hidden" name="inviter_user" value="">
<input type="hidden" name="inviter_hash" value="">
<input type="submit" class="standard_button" value="Log in with Google" style="width: 100%">
</form>
<form id="login_microsoft" method="get" action="/">
<input type="hidden" name="microsoft_login" value="">
<input type="hidden" name="add_anonym_uplaods" class="add_anonym_uplaods" value="">
<input type="hidden" name="login_return_url" class="login_return_url" value="">
<input type="hidden" name="dont_redirect_after_login" class="dont_redirect_after_login" value="">
<input type="hidden" name="inviter_user" value="">
<input type="hidden" name="inviter_hash" value="">
<input type="submit" class="standard_button" value="Login with Microsoft account" style="width: 100%">
</form>
</div>

<div id="sign-in_disable_form">
<i class="fa fa-spinner fa-spin"></i>
</div>
</div>
<div class="modal-close" id="sign-in_modal_close" data-dismiss="modal" data-close="Close"></div>
</div>
<script>

	var bolRewriteUrlHash = true;
	
    var bolSigninCaptchaRequired = Boolean();
    var bolSignupCaptchaRequired = Boolean(1);
    
    var strSinginCaptchaContainerID = 'signin_captcha';
    var strSignupCaptchaContainerID = 'createaccount_captcha';
    
    
	function showCreateAccount( bolICO )
	{
        bolHasCookieUploadsFunc();
        if( typeof bolICO === 'undefined' )
        {
            // if switching forms, get bolICO from other form
            bolICO = $( "#register_from_ico" ).val() > 0;
        }
        
        $( '#signin-header' ).removeClass( 'active' );
        $( '#createaccount-header' ).addClass( 'active' );

		$( '#signin-modal-content' ).hide();
		$( '#forgotpassword-modal-content' ).hide();
		$( '#addcookieuploads-modal-content' ).hide();
		$( '#createaccountsuccessmessage-modal-content' ).hide();

		$('#createaccount-modal-content').show();
		
		if( bolICO )
        {
            $( "#business_account_chechbox_container" ).hide();
            $( "#createaccount_info_ico" ).show();
            $( "#createaccount_termsandcondtotions_ico" ).show( );
            $( "#createaccount_termsandcondtotions" ).hide( );
            $( "#createaccount_info" ).hide();
            $( "#register_from_ico" ).val( 1 );
        }
        else
        {
            $( "#business_account_chechbox_container" ).show();
            $( "#createaccount_termsandcondtotions" ).show( );
            $( "#createaccount_termsandcondtotions_ico" ).hide( );
            $( "#createaccount_info_ico" ).hide();
            $( "#createaccount_info" ).show();
            $( "#register_from_ico" ).val( 0 );
        }

		showModal( 'sign-in' );
  
		if ( bolSignupCaptchaRequired )
            loadCreateAccountCaptcha();
		
		if ( bolRewriteUrlHash )
		{
			window.location.hash = 'sign_up';
		}
	}
	
	function setRegisterReferral( strInviter, hash, strInviteeEmail )
    {
        $( "#createaccount-referral-referrer" ).text( strInviter );
        $( "#createaccount-referral-container" ).show();
        
        if ( strInviteeEmail )
        {
            $( "#createaccount_email" )
                .val( strInviteeEmail )
                .attr( 'disabled', 'true' );
        }
    
        $("input[name='inviter_user']").val( strInviter );
        $("input[name='inviter_hash']").val( hash );
    }

	function showSignIn( bolICO )
	{
        bolHasCookieUploadsFunc();
	    if( typeof bolICO === 'undefined' )
        {
            // if switching forms, get bolICO from other form
            bolICO = $( "#register_from_ico" ).val() > 0;
        }

        $( '#signin-header' ).addClass( 'active' );
        $( '#createaccount-header' ).removeClass( 'active' );
        
	    	    if( typeof closeGallery === "function" )
        {
            closeGallery();
        }
        		
		$( '#createaccount-modal-content' ).hide();
		$( '#forgotpassword-modal-content' ).hide();
		$( '#addcookieuploads-modal-content' ).hide();
		$( '#createaccountsuccessmessage-modal-content' ).hide();
        $( '#twofactor_authcode-modal-content' ).hide();
        
        if ( bolICO )
        {
            $( "#register_from_ico" ).val( 1 );
        }
        else
        {
            $( "#register_from_ico" ).val( 0 );
        }

		$( '#signin-modal-content' ).show();

		showModal( 'sign-in' );
  
		if ( bolSigninCaptchaRequired )
            loadSignInCaptcha();
		
		if ( bolRewriteUrlHash )
		{
			window.location.hash = 'log_in';
		}
	}
    
    /*** Start: Captcha callbacks ***/
    
    function captchaCreateAccountLoaded( bolSuccess )
    {
        if ( ! bolSuccess )
        {
            addError(strSignupCaptchaContainerID, "createaccount_error_msg", "An error has occurred! Please check your internet connection and try again later. If the problem does not resolve, please contact [email protected]");
        }
        else
        {
            removeError( strSignupCaptchaContainerID );
            removeAllErrors( "createaccount_error_msg" );
            $("#"+strSignupCaptchaContainerID).append('<input type="hidden" class="captcha_response" value="" />');
        }
    }
    
    function captchaCreateAccountSubmitted( strResponse )
    {
        removeError( strSignupCaptchaContainerID );
        removeAllErrors( "createaccount_error_msg" );
        $('#' + strSignupCaptchaContainerID + ' .captcha_response').val( strResponse );
    }
    
    
    function captchaSignInLoaded( bolSuccess )
    {
        if ( ! bolSuccess )
        {
            addError(strSinginCaptchaContainerID, "signin_error_msg", "An error has occurred! Please check your internet connection and try again later. If the problem does not resolve, please contact [email protected]");
        }
        else
        {
            removeError( strSinginCaptchaContainerID );
            removeAllErrors( "signin_error_msg" );
            $("#"+strSinginCaptchaContainerID).append('<input type="hidden" class="captcha_response" value="" />');
        }
    }
    function captchaSignInSubmitted( strResponse )
    {
        removeError( strSinginCaptchaContainerID );
        removeAllErrors( "signin_error_msg" );
        $('#' + strSinginCaptchaContainerID + ' .captcha_response').val( strResponse );
    }
    /*** End: Captcha callbacks ***/
    
    
	function revertFormFromCoupon()
    {
	    $( '#sign-in' ).removeClass( 'coupun_form' );
    }
    
    function adaptFormForCoupon()
    {
	    $( '#sign-in' ).addClass( 'coupun_form' );

        const strUrlParams = new URLSearchParams(window.location.search);
		if( strUrlParams.has('coupon') ) 
		{
            var strCouponCode = strUrlParams.get('coupon');
        }
        if( strUrlParams.has('kupons') ) 
		{
            var strCouponCode = strUrlParams.get('kupons')
        }

        if( typeof strCouponCode !== 'undefined' )
        {
            $('#register_coupon_code_input').val(strCouponCode)
        }
    }

	function showForgotPassword( strEmail )
	{
	    if ( typeof strEmail != 'undefined' )
	    {
			$( '#sign-in-header' ).hide();
			$( '#forgotpassword_email' ).val( strEmail );
	    }

		$( '#signin-header' ).insertBefore( $( '#createaccount-header' ) );
		
		$( '#createaccount-modal-content' ).hide();
		$( '#signin-modal-content' ).hide();
		$( '#addcookieuploads-modal-content' ).hide();
		$( '#createaccountsuccessmessage-modal-content' ).hide();

		$( '#forgotpassword-modal-content' ).show();

		showModal( 'sign-in' );

		if ( bolRewriteUrlHash )
		{
			window.location.hash = 'forgot_password';
		}
	}

	function showAddCookieUploads()
	{
		$( '#createaccount-modal-content' ).hide();
		$( '#forgotpassword-modal-content' ).hide();
		$( '#signin-modal-content' ).hide();
		$( '#createaccountsuccessmessage-modal-content' ).hide();

		$( '#addcookieuploads-modal-content' ).show();

		showModal( 'sign-in' );
	}

	function showCreateAccountSuccessMessage()
	{
		$( '#createaccount-modal-content' ).hide();
		$( '#forgotpassword-modal-content' ).hide();
		$( '#signin-modal-content' ).hide();
		$( '#addcookieuploads-modal-content' ).hide();
		
		$( '#createaccountsuccessmessage-modal-content' ).show();
		
		showModal( 'sign-in' );
	}

	var bolHasCookieUploads = false;

    function bolHasCookieUploadsFunc()
    {
        $.each(document.cookie.split(/; */), function()  {
            var splitCookie = this.split('=');
            if(splitCookie[0].slice(0, 2) == 'uf')
            {
                bolHasCookieUploads = true;
            }
        });
    }

	var bolAddCookieUploadsAnswered = false;
	var bolAddCookieUploads = false;
	var strActiveForm = '';

	function setAddCookieUploads(val) {

		bolAddCookieUploads = val;
		bolAddCookieUploadsAnswered = true;

		if (val) {
			$('#login_facebook .add_anonym_uplaods').val('1');
			$('#login_google .add_anonym_uplaods').val('1');
			$('#login_draugiem .add_anonym_uplaods').val('1');
		}

		if (strActiveForm == 'signin') {
			checkSignInForm();
			showSignIn();
		}
		else if (strActiveForm == 'createaccount') {
			checkCreateAccountForm();
			showCreateAccount();
		}
		else if (strActiveForm == 'facebook' || strActiveForm == 'google' || strActiveForm == 'draugiem') {

			checkSocialLogin(strActiveForm);
		}
	}


	var bolPrevFinished_checkCreateAccountForm = true;
	function checkCreateAccountForm(bolCouponCheckResult) {
        
        var jqCaptchaResultInput = $('#' + strSignupCaptchaContainerID + ' .captcha_response');
	    
		if ( bolCouponCheckResult === undefined )
		{
			bolCouponCheckResult = null;
		}

		if (bolPrevFinished_checkCreateAccountForm)
		{
			bolPrevFinished_checkCreateAccountForm = false;
			$('#sign-in_disable_form').show();
   
			var bolCreateBusinessAccountDataOk = true;
			if (bolCreateBusinessAccount)
			{
				bolCreateBusinessAccountDataOk = false;

				if ($('#createaccount_company_name').val().trim().length < 4 ) {

					addError('createaccount_company_name', 'createaccount_error_msg', 'Please enter a company name that is at least 4 characters long.');
				}
				else {

					removeError('createaccount_company_name');

					if ($('#createaccount_company_phone').val().trim().length < 4 ) {

						addError('createaccount_company_phone', 'createaccount_error_msg', 'The company phone number must be at least 4 digits long!');
					}
					else {

						removeError('createaccount_company_phone');

						bolCreateBusinessAccountDataOk = true;
					}
				}
			}
            
            if ( $( "#register_coupon_code" ).css("display") !== "none" && !bolCouponCheckResult )
            {
                // coupon field is visible -> so it must be filled
                if( bolCouponCheckResult === false )
                {
                    addError( 'register_coupon_code_input', 'createaccount_error_msg', 'The coupon code you entered is invalid or already used!' );
                    
                    bolPrevFinished_checkCreateAccountForm = true;
                    $('#sign-in_disable_form').hide();
                    return;
                }
                else if( !bolCouponCheckResult )
                {
                    removeError( 'register_coupon_code_input' );
                    
                    bolPrevFinished_checkCreateAccountForm = true;
                    verifyCouponCode( 'register_coupon_code_input', 'createaccount_error_msg', checkCreateAccountForm );
                    return;
                }                
            }
			
			if ( bolCreateBusinessAccountDataOk )
			{
				if ($('#createaccount_name').val().trim().length < 2 ) {

					addError('createaccount_name', 'createaccount_error_msg', 'Please enter a name that is at least 2 characters long.');

					bolPrevFinished_checkCreateAccountForm = true;
					$('#sign-in_disable_form').hide();
				}
				else {

					removeError('createaccount_name');

					if ($('#createaccount_surname').val().trim().length < 2 ) {

						addError('createaccount_surname', 'createaccount_error_msg', 'Please enter a surname that is at least 2 characters long.');

						bolPrevFinished_checkCreateAccountForm = true;
						$('#sign-in_disable_form').hide();
					}
					else {
                        function isURL(url) {
                           return url.match(/(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g) !== null;
                        }
                        
                        if ( isURL( $( '#createaccount_surname' ).val().trim() ) )
                        {
                            addError('createaccount_surname', 'createaccount_error_msg', 'Invalid name!');
                            
                            bolPrevFinished_checkCreateAccountForm = true;
                            $('#sign-in_disable_form').hide();
                            return;
                        }
                        else 
                        {
                            removeError( 'createaccount_surname' );
                        }
                        
                        if ( isURL( $( '#createaccount_name' ).val().trim() ) )
                        {
                            addError('createaccount_name', 'createaccount_error_msg', 'Invalid name!');
                            
                            bolPrevFinished_checkCreateAccountForm = true;
                            $('#sign-in_disable_form').hide();
                            return;
                        }
                        else
                        {
                            removeError( 'createaccount_name' );
                        }
					    
						removeError('createaccount_surname');

						if (!validateEmail($('#createaccount_email').val())) {

							addError('createaccount_email', 'createaccount_error_msg', 'Enter a valid e-mail!');

							bolPrevFinished_checkCreateAccountForm = true;
							$('#sign-in_disable_form').hide();
						}
						else {
				            new EmailValidator( $('#createaccount_email').val(), true)
                                .setOnValidCB(function(){
                                    $.ajax({
                                    type: "POST",
                                    dataType: "json",
                                    url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
                                    data: {
                                        'check_email' : true ,
                                        'email' : $('#createaccount_email').val()
                                    },
                                    success: function(data) {
                                        if (data['status'] != 'ok') {
                                            var strError = "This e-mail address is already taken!";
                                            strError += "<br/><a href='' onclick='showForgotPassword(); return false'>" + 'Forgot password' + "</a>";

                                            addHTMLError('createaccount_email', 'createaccount_error_msg', strError );

                                            bolPrevFinished_checkCreateAccountForm = true;
                                            $('#sign-in_disable_form').hide();
                                        }
                                        else {

                                            removeError('createaccount_email');

                                            if ($('#createaccount_username').val().trim().length < 4 ) {

                                                addError('createaccount_username', 'createaccount_error_msg', 'Please enter a username that is at least 4 characters long!');

                                                bolPrevFinished_checkCreateAccountForm = true;
                                                $('#sign-in_disable_form').hide();
                                            }
                                            else {

                                                if (!validateUsername($('#createaccount_username').val().trim())) {

                                                    addError('createaccount_username', 'createaccount_error_msg', 'Can only contain "a-z", "A-Z", "0-9" and "_.@-"');

                                                    bolPrevFinished_checkCreateAccountForm = true;
                                                    $('#sign-in_disable_form').hide();
                                                }
                                                else
                                                {
                                                    $.ajax({
                                                        type: "POST",
                                                        dataType: "json",
                                                        url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
                                                        data: {
                                                            'check_username' : true ,
                                                            'username' : $('#createaccount_username').val()
                                                        },
                                                        success: function(data) {
                                                            if (data['status'] != 'ok') {

                                                                addError('createaccount_username', 'createaccount_error_msg', 'This username is already taken! Please enter a different one!');

                                                                bolPrevFinished_checkCreateAccountForm = true;
                                                                $('#sign-in_disable_form').hide();
                                                            }
                                                            else {

                                                                removeError('createaccount_username');

                                                                if ($('#createaccount_password').val().trim().length < 4 ) {

                                                                    addError('createaccount_password', 'createaccount_error_msg', 'Please enter a password that is at least 4 characters long!');

                                                                    bolPrevFinished_checkCreateAccountForm = true;
                                                                    $('#sign-in_disable_form').hide();
                                                                }
                                                                else
                                                                {
                                                                    removeError('createaccount_password');
    
                                                                    var bolCaptchaOk = true;
                                                                    if ( bolSignupCaptchaRequired )
                                                                    {
                                                                        bolCaptchaOk = false;
                                                                        
                                                                        if ( jqCaptchaResultInput.length && jqCaptchaResultInput.val().length )
                                                                        {
                                                                            bolCaptchaOk = true;
                                                                            removeError( strSignupCaptchaContainerID );
                                                                        }
                                                                        else
                                                                        {
                                                                            if ( ! jqCaptchaResultInput.length )
                                                                            {
                                                                                addError( strSignupCaptchaContainerID, "createaccount_error_msg", "An error has occurred! Please check your internet connection and try again later. If the problem does not resolve, please contact [email protected]" );
                                                                            }
                                                                            else
                                                                            {
                                                                                addError( strSignupCaptchaContainerID, 'createaccount_error_msg', 'Please fill out Captcha!' );
                                                                            }
                                                                        }
                                                                    }
                                                                    
                                                                    if ( ! bolCaptchaOk )
                                                                    {
                                                                        bolPrevFinished_checkCreateAccountForm = true;
                                                                        $( '#sign-in_disable_form' ).hide();
                                                                    }
                                                                    else
                                                                    {
                                                                        removeError( 'createaccount_password' );
                                                                        removeError( strSignupCaptchaContainerID );
        
                                                                        removeAllErrors( 'createaccount_error_msg' );
        
        
                                                                        if ( bolHasCookieUploads == true && bolAddCookieUploadsAnswered == false )
                                                                        {
            
                                                                            strActiveForm = 'createaccount';
                                                                            showAddCookieUploads();
            
                                                                            bolPrevFinished_checkCreateAccountForm = true;
                                                                            $( '#sign-in_disable_form' ).hide();
                                                                        }
                                                                        else
                                                                        {
                                                                            var postData = {
                                                                                'create_account': true,
                                                                                'username': $( '#createaccount_username' ).val(),
                                                                                'email': $( '#createaccount_email' ).val(),
                                                                                'password': $( '#createaccount_password' ).val(),
                                                                                'add_cookie_uploads': bolAddCookieUploads,
                                                                                'first_name': $( '#createaccount_name' ).val(),
                                                                                'surname': $( '#createaccount_surname' ).val(),
                                                                                'create_business_account': bolCreateBusinessAccount,
                                                                                'company_name': $( '#createaccount_company_name' ).val(),
                                                                                'company_phone': $( '#createaccount_company_phone' ).val(),
                                                                                'company_country': $( '#createaccount_company_country' ).val(),
                                                                                'from_ico': $( "#register_from_ico" ).val() ,
                                                                                'recaptcha_response': (jqCaptchaResultInput.length ? jqCaptchaResultInput.val() : '')
                                                                            };

                                                                            // add referral fields if the container is visible
                                                                            if ( $( "#createaccount-referral-container" ).css( "display" ) !== "none" )
                                                                            {
                                                                                postData[ 'inviter_hash' ] = $( "#createaccount-referral-hash" ).val();
                                                                                postData[ 'inviter_user' ] = $( "#createaccount-referral-user" ).val();
                                                                            }
                                                                            
                                                                            if ( $( "#register_coupon_code" ).css( "display" ) !== "none" )
                                                                            {
                                                                                postData.coupon_code = $( "#register_coupon_code_input" ).val().trim();
                                                                            }

                                                                                                                                                        
                                                                            var bolDontRedirectAfterLogin = true;
                                                                            
                                                                            if ( $( '.dont_redirect_after_login' ).val() == '' )
                                                                            {
                                                                            	bolDontRedirectAfterLogin = false;
                                                                            }
                                                                            
                                                                            var strCustomLoginReturnUrl = $( '.login_return_url' ).val();

                                                                            
                                                                            if ( ! bolDontRedirectAfterLogin && strCustomLoginReturnUrl == '' )
                                                                            {
                                                                            	postData.show_onboarding_survey = true;
                                                                            }
                                                                            else 
                                                                            {
                                                                            	postData.show_onboarding_survey = false;
                                                                            }
                                                                            
            
                                                                            $.ajax( {
                                                                                type: "POST",
                                                                                dataType: "json",
                                                                                url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
                                                                                data: postData,
                                                                                success: function ( data )
                                                                                {
                                                                                    if ( data[ 'status' ] == 'ok' )
                                                                                    {
                        																                        																
                                                                                        if ( ! bolDontRedirectAfterLogin )
                                                                                        {
                                                                                            if ( data[ 'custom_login_return_url' ] != 'undefined' )
                                                                                            {
                                                                                                strCustomLoginReturnUrl = data[ 'custom_login_return_url' ];
                                                                                            }

                                                                                            if ( strCustomLoginReturnUrl != '' )
                                                                                            {

                                                                                                if (
                                                                                                    ( "/" + strCustomLoginReturnUrl ).search( 'filebrowser' ) == -1 &&
                                                                                                    ( "/" + strCustomLoginReturnUrl ).search( window.location.pathname ) != -1 &&
                                                                                                    strCustomLoginReturnUrl != 'sync-share?create_cloud_files_user' &&
                                                                                                    strCustomLoginReturnUrl != 'library-info?after_login' &&
                                                                                                    strCustomLoginReturnUrl != 'video?after-signup' &&
                                                                                                    ( "/" + strCustomLoginReturnUrl ).search( 'lifetime-storage' ) == -1 &&
                                                                                                    ( "/" + strCustomLoginReturnUrl ).search( 'save-youtube-video' ) == -1
                                                                                                )
                                                                                                {
                                                                                                    if ( location.hash == '#sign_up' )
                                                                                                    {
                                                                                                        location.hash = '';
                                                                                                    }
                                    
                                                                                                    if ( strCustomLoginReturnUrl == 'storage-plans#subscribe' )
                                                                                                    {
                                                                                                        location.hash = 'subscribe';
                                                                                                    }
                                    
                                                                                                    location.reload();
                                                                                                }
                                                                                                else
                                                                                                {
                                                                                                    window.location = "https://files.fm/" + strCustomLoginReturnUrl;
                                                                                                }
                                
                                                                                            }
                                                                                            else
                                                                                            {
                                
                                                                                                window.location = "/account";
                                                                                            }
                                                                                        }
                                                                                        else
                                                                                        {
        
                                                                                            showCreateAccountSuccessMessage();
                            
                                                                                            bolPrevFinished_checkCreateAccountForm = true;
                                                                                            $( '#sign-in_disable_form' ).hide();
                                                                                        }
                                                                                    }
                                                                                    else
                                                                                    {
                        
                                                                                        addError( 'createaccount_error_msg', 'createaccount_error_msg', 'There was an error, contact the Files.fm team!' );
                        
                                                                                        bolPrevFinished_checkCreateAccountForm = true;
                                                                                        $( '#sign-in_disable_form' ).hide();
                                                                                    }
                                                                                },
                                                                                error: function ( data )
                                                                                {
                    
                                                                                    addError( 'createaccount_error_msg', 'createaccount_error_msg', 'An error occurred. Please try again or contact [email protected]!' );
                    
                                                                                    bolPrevFinished_checkCreateAccountForm = true;
                                                                                    $( '#sign-in_disable_form' ).hide();
                                                                                }
                                                                            } );
                                                                        }
                                                                    }
                                                                }
                                                            }
                                                        } ,
                                                        error: function(data) {

                                                            addError('createaccount_error_msg', 'createaccount_error_msg', 'An error occurred. Please try again or contact [email protected]!');

                                                            bolPrevFinished_checkCreateAccountForm = true;
                                                            $('#sign-in_disable_form').hide();
                                                        }
                                                    });
                                                }
                                            }
                                        }
                                    } ,
                                    error: function(data) {

                                        addError('createaccount_error_msg', 'createaccount_error_msg', 'An error occurred. Please try again or contact [email protected]!');

                                        bolPrevFinished_checkCreateAccountForm = true;
                                        $('#sign-in_disable_form').hide();
                                    }
                                })
                                }).setOnInvalidCB(function() {
                                    bolPrevFinished_checkCreateAccountForm = true;
                                    $('#sign-in_disable_form').hide();
                                    addError('createaccount_email', 'createaccount_error_msg', 'Enter a valid e-mail!');
                                }).setModalID("sign-in").run();
						}
					}
				}
			}
			else
			{
				bolPrevFinished_checkCreateAccountForm = true;
				$('#sign-in_disable_form').hide();
			}
		}
	}

	function getSigninReturnRedirectUrl()
    {
        if ($('.login_return_url').val() != '') {

            if ($('.dont_redirect_after_login').val() == '') {
                if (
                    ("/"+$('.login_return_url').val()).search(window.location.pathname) != -1 &&
                    $('.login_return_url').val() != 'sync-share?create_cloud_files_user' && 
                    $('.login_return_url').val() == 'storage-plans#subscribe' 
                )
                {
                    return '#subscribe';
                }
                else if ($('.login_return_url').val() == 'my-profile' )
                {
                    return $( '#l_user' ).val();
                }
                else {
                    return $('.login_return_url').val();
                }
            }
        }

        
	    return false;
    }
     
    function verifyCouponCode( strCouponInputID, strErrorID, fnCallback, bolResult )
    {
    	if ( bolResult === undefined )
		{
    		bolResult = null;
		}

        var strCouponInputSelector = "#" + strCouponInputID;
        
        var onError = function ()
        {
            addError( strCouponInputID, strErrorID, 'Invalid coupon code!' );
            
            bolPrevFinished_checkCreateAccountForm = true;
            $( '#sign-in_disable_form' ).hide();
        };
        
        if ( bolResult === false )
        {
            onError();
            return false
        }
        else if ( bolResult === true )
        {
            return true;
        }
        
        if ( $( strCouponInputSelector ).css( "display" ) !== "none" )
        {
            // coupon field is visible -> so it must be filled
            if ( $( strCouponInputSelector ).val().trim().length === 0 )
            {
                onError();
                return false
            }
            else
            {
                if ( !bolResult )
                {
                    removeError( strCouponInputID );
                    
                    $.ajax( {
                        type: "POST",
                        dataType: "json",
                        url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
                        global: false,
                        data: {
                            'check_coupon': true,
                            'coupon_code': $( strCouponInputSelector ).val().trim()
                        },
                        success: function ( data )
                        {
                            fnCallback( typeof data[ 'status' ] !== "undefined" && data[ 'status' ] === 'ok' );
                        },
                        error: function ( )
                        {
                            fnCallback( false );
                        }
                    } );
                    return false;
                }
                else
                {
                    return true;
                }
            }
        }
        else
        {
            return true;
        }
    }

	var bolPrevFinished_checkSignInForm = true;

    function trySignIn( strTwoFactorAuthCode )
    {
        if ( typeof strTwoFactorAuthCode === "undefined" )
        {
            strTwoFactorAuthCode = "";
        }

        var jqCaptchaResultInput = $( '#' + strSinginCaptchaContainerID + ' .captcha_response' );

        removeAllErrors( 'signin_error_msg' );
       
        var strReturnUrl = getSigninReturnRedirectUrl();

        var objPostData = {
            'signin': true,
            'username': $( '#l_user' ).val(),
            'password': $( '#l_pass' ).val(),
            'remember_me': $( '#remember_me' ).prop( 'checked' ),
            'from_ico': $( '#register_from_ico' ).val(),
            'add_cookie_uploads': bolAddCookieUploads,
            'recaptcha_response': ( jqCaptchaResultInput.length ? jqCaptchaResultInput.val() : '' )
        };

        if ( strTwoFactorAuthCode )
        {
            objPostData[ 'two_factor_auth_code' ] = strTwoFactorAuthCode;
        }

        if ( strReturnUrl )
        {
            objPostData[ 'override_return_url' ] = strReturnUrl;
        }

        if ( $( "#l_coupon_code" ).css( "display" ) !== "none" )
        {
            objPostData.coupon_code = $( "#l_coupon_code" ).val().trim();
        }

        
        $.ajax( {
            type: "POST",
            dataType: "json",
            url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
            crossDomain: true,
            data: objPostData,
            success: function ( data )
            {
                var strAdditionalMessage = "";
                
                if ( typeof data[ 'login_attempts_left' ] !== 'undefined' )
                {
                    var strPartOne = +data[ 'login_attempts_left' ] === 1 ? ' You have ' : ' You have ';
                    var strPartTwo = +data[ 'login_attempts_left' ] === 1 ? ' login attempt left before your account is automatically blocked.' : ' more login attempts before your account is automatically blocked.';

                    strAdditionalMessage = strPartOne + data[ 'login_attempts_left' ] + strPartTwo;
                }
                
                if ( ( data[ 'status' ] === 'ok' || data[ 'status' ] === 'missing_account_data' ) && typeof data[ 'redirect_to' ] !== 'undefined' )
                {
                    
                    if ( data[ 'redirect_to' ].substring( 0, 17 ) == '/lifetime-storage' )
                    {
                        data[ 'redirect_to' ] += '?after_login';
                    }

                    if ( data[ 'redirect_to' ].substring( 0, 6 ) == '/token' )
                    {
                        data[ 'redirect_to' ] = '/token';
                    }

                    window.location = data[ 'redirect_to' ];
                }
                else if ( data[ 'status' ] === 'invalid_auth_code' )
                {
                    $( '#twofactor_error_msg' ).text( 'The entered code is invalid! Please try again!' + strAdditionalMessage ).show();
                    bolPrevFinished_checkSignInForm = true;
                    $( '#sign-in_disable_form' ).hide();
                }
                else
                {
                    var $errorCont;
                    if( strTwoFactorAuthCode )
                    {
                        $errorCont = $( '#twofactor_error_msg' );
                    }
                    else
                    {
                        $errorCont = $( '#signin_error_msg' );
                    }
                    
                    if ( typeof data[ "message" ] === "undefined" )
                    {
                       $errorCont.text( 'Incorrect username or password! Access can be restored via your email address.' + strAdditionalMessage );
                       console.log( 'SIGNIN ERROR CODE : 1' );
                    }
                    else
                    {
                        $errorCont.text( data[ "message" ] + strAdditionalMessage );
                    }
                    $errorCont.show();

                    bolPrevFinished_checkSignInForm = true;
                    $( '#sign-in_disable_form' ).hide();
                }
            },
            error: function ( data )
            {

                $( '#signin_error_msg' ).text( 'An error occurred. Please try again or contact [email protected]!' );
                $( '#signin_error_msg' ).show();

                bolPrevFinished_checkSignInForm = true;
                $( '#sign-in_disable_form' ).hide();
            }
        } );
    }

    function show2FAPrompt()
    {
        $( '#createaccount-modal-content' ).hide();
        $( '#forgotpassword-modal-content' ).hide();
        $( '#addcookieuploads-modal-content' ).hide();
        $( '#createaccountsuccessmessage-modal-content' ).hide();
        $( '#signin-modal-content' ).hide();

        $( '#twofactor_authcode-modal-content' ).show();
    }
    
	function checkSignInForm(bolCouponCheckResult) {

		if ( bolCouponCheckResult === undefined )
		{
			bolCouponCheckResult = null;
		}
        
        var jqCaptchaResultInput = $('#' + strSinginCaptchaContainerID + ' .captcha_response');
        
		if (bolPrevFinished_checkSignInForm) {

			bolPrevFinished_checkSignInForm = false;
            $('#sign-in_disable_form').show();
            
            if ( $( "#l_coupon_code" ).css("display") !== "none" )
            {
                if ( bolCouponCheckResult )
                {
                    $( "#signin_error_msg" ).hide();
                }
                else if ( bolCouponCheckResult === null )
                {
                    bolPrevFinished_checkSignInForm = true;
                    return verifyCouponCode( "l_coupon_code", "signin_error_msg", checkSignInForm, bolCouponCheckResult );
                }
                else
                {
                    $( "#signin_error_msg" )
                        .text( "The coupon code you entered is invalid or already used!" )
                        .show();
                    bolPrevFinished_checkSignInForm = true;
                    $( '#sign-in_disable_form' ).hide();
                    return false;
                }
            }
                
			bolError = false;

			if ($('#l_user').val() == '' ) {

				$('#l_user').addClass( 'has_error' );
				bolError = true;
			}
			else {
				$('#l_user').removeClass( 'has_error' );
			}

			if ($('#l_pass').val() == '' ) {
				$('#l_pass').addClass( 'has_error' );
				bolError = true;
			}
			else {
				$('#l_pass').removeClass( 'has_error' );
			}
            
            
            if ( bolSigninCaptchaRequired )
            {
                if ( jqCaptchaResultInput.length === 0 )
                {
                    bolError = true;
    
                    addError(strSinginCaptchaContainerID, "signin_error_msg", "An error has occurred! Please check your internet connection and try again later. If the problem does not resolve, please contact [email protected]");
                }
                else if ( jqCaptchaResultInput.val().length === 0 )
                {
                    bolError = true;
    
                    addError(strSinginCaptchaContainerID, "signin_error_msg", "Please fill in the captcha field!");
                }
                else
                {
                    removeError( strSinginCaptchaContainerID );
                }
            }

			if (!bolError) {

				$.ajax({
					type: "POST",
					dataType: "json",
					url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
                    crossDomain: true,
                    data: {
						'check_signin' : true ,
						'username' : $('#l_user').val() ,
						'password' : $('#l_pass').val()
					},
					success: function(data) {
                        if ( data[ 'status' ] === 'ok' )
                        {
                            if ( bolHasCookieUploads == true && bolAddCookieUploadsAnswered == false && data[ 'show_add_cookie_uploads' ] == true )
                            {
                                strActiveForm = 'signin';
                                showAddCookieUploads();

                                bolPrevFinished_checkSignInForm = true;
                                $( '#sign-in_disable_form' ).hide();
                            }
                            else
                            {
                                trySignIn();
                            }
                        }
                        else if ( data[ 'status' ] === 'requires_auth_code' )
                        {
                            $( '#sign-in_disable_form' ).hide();
                            bolPrevFinished_checkSignInForm = true;
                            
                            show2FAPrompt();
                        }
                        else
                        {
                            var strMessage = 'Incorrect username or password! Access can be restored via your email address.';

                            if ( typeof data[ 'message' ] !== "undefined" )
                            {
                                strMessage = data[ 'message' ];
                            } 
                            else if ( typeof data[ 'login_attempts_left' ] !== 'undefined' ) 
                            {
                                var strPartOne = +data['login_attempts_left'] === 1 ? ' You have ' : ' You have ';
                                var strPartTwo = +data['login_attempts_left'] === 1 ? ' login attempt left before your account is automatically blocked.' : ' more login attempts before your account is automatically blocked.';
                                
                                strMessage += strPartOne + data[ 'login_attempts_left' ]  + strPartTwo;
                            }
                            else
                            {
                                console.log( 'SIGNIN ERROR CODE : 2' );
                            }

                            $( '#signin_error_msg' ).text( strMessage );
							$('#signin_error_msg').show();

							bolPrevFinished_checkSignInForm = true;
							$('#sign-in_disable_form').hide();
						}
					} ,
					error: function(data) {

						$('#signin_error_msg').text('An error occurred. Please try again or contact [email protected]!');
						$('#signin_error_msg').show();

						bolPrevFinished_checkSignInForm = true;
						$('#sign-in_disable_form').hide();
					}
				});
			}
			else {

				bolPrevFinished_checkSignInForm = true;
				$('#sign-in_disable_form').hide();
			}
		}
	}


	function checkForgotPasswordForm() {

		if (!validateEmail($('#forgotpassword_email').val())) {

			addError('forgotpassword_email', 'forgotpassword_error_msg', 'Enter a valid e-mail!');
		}
		else {

			removeError('forgotpassword_email');

			$.ajax({
				type: "POST",
				dataType: "json",
				url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
				data: {
					'recover_password' : true ,
					'email' : $('#forgotpassword_email').val()
				},
				success: function(data) {
					if (data['status'] == 'ok') {

						removeAllErrors('forgotpassword_error_msg');

						$('#forgotpassword_error_msg').addClass('ok_msg_active');
						$('#forgotpassword_error_msg').text('If an account with this email exists, then the password reset link was sent to the email provided.');
						$('#forgotpassword_error_msg').show();
					}
					else {

						addError('forgotpassword_email', 'forgotpassword_error_msg', 'This e-mail is not registered.');
					}
				}
			});
		}
	}

	function checkSocialLogin(strType) {
	
		if ( strType == 'facebook' )
		{
			fError( 'Facebook has changed something, so unfortunately logging in with Facebook is not available at the moment. To get in, reset the password to your e-mail (with which you used Facebook) <a href="/?a#forgot_password">by clicking here</a> . In the future, we recommend using your email or Google account so that you are not dependent on Facebook. We plan to disable this method.' );
			return;
		}

		if (bolHasCookieUploads == true && bolAddCookieUploadsAnswered == false) {

			strActiveForm = strType;
			showAddCookieUploads();
		}
		else {

			if ($('.dont_redirect_after_login').val() == 'true')
			{
				$('#sendfiles').submit();
				$('.add_anonym_uplaods').val('true');
			}

			if (strType == 'facebook') {

				$('#login_facebook').submit();
			}
			else if (strType == 'google') {

				$('#login_google').submit();
			}
			else if (strType == 'draugiem') {

				$('#login_draugiem').submit();
			}
			else if (strType == 'microsoft') {

				$('#login_microsoft').submit();
			}

		}
	}


	function validateEmail(email) {
		var re = /^(([^<>()[\]\\.,;:\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,}))$/;
		var result = re.test(email);
		return result;
	}

	function validateUsername(username) {

		var re = /^[a-zA-Z0-9_\.@\-]+$/;
		var result = re.test(username);
		return result;
	}
    
    function addHTMLError(strDomId, strErrorMsgId, strErrorMsgText) {
        $('#' + strDomId).addClass( 'has_error' );
        $('#' + strErrorMsgId).html(strErrorMsgText);
        $('#' + strErrorMsgId).show();
    }

	function addError(strDomId, strErrorMsgId, strErrorMsgText) {
		$('#' + strDomId).addClass( 'has_error' );
		$('#' + strErrorMsgId).text(strErrorMsgText);
		$('#' + strErrorMsgId).show();
	}

	function removeError(strInputId) {
		$('#' + strInputId).removeClass( 'has_error' );
	}

	function removeAllErrors(strErrorMsgId) {
		$('#' + strErrorMsgId).text('');
		$('#' + strErrorMsgId).hide();
	}

	var isUsernameChanged = false;
	function usernameChanged()
	{
		isUsernameChanged = true;
	}

	function createUsername(strEmail)
	{
		if( !isUsernameChanged && strEmail != '' && validateEmail(strEmail))
		{
			var arrEmail = strEmail.split("@");

			var strUsername = arrEmail[0];
			while (strUsername.length < 4)
			{
				strUsername += '1';
			}


			$.ajax(
			{
				type: "POST",
				dataType: "json",
				url: "./ajax/sign_in.php?PHPSESSID=7631d5f47f04cc8b0625379e8685336dbe57ec52",
				data:
				{
					'get_username' : true ,
					'username' : strUsername
				},
				success: function(data)
				{
					if (data['status'] == 'ok' && data['username'])
					{
						$('#createaccount_username').val(data['username']);
					}
				}
			});
		}
	}

	var bolCreateBusinessAccount = false;
	function toggleCreateBusinessAccount()
	{
		if (bolCreateBusinessAccount)
		{
			bolCreateBusinessAccount = false;
			$('#create_business_account_container').hide();
		}
		else
		{
			bolCreateBusinessAccount = true;
			$('#create_business_account_container').show();
		}
	}


    
    </script> <script type="text/javascript" src="js/prebid-ads.js"></script>
<script type="text/javascript">
        if( window.canRunAds === undefined )
        {
            fError( "An ad blocking plugin has been detected in your browser. There is a possibility that the page is displayed incorrectly. Please disable the plugin and refresh the page!" );
            document.cookie="adblock_warning_shown; max-age=86400";
        }
    </script>
<div id="content">
<link rel="stylesheet" type="text/css" media="all" href="css/list.v2/main.css?v=5027">
<div class="deleted_wrapper">
<div class="deleted_inner">
<div class="deleted_vertical_center clearfix">
<div class="deleted_inner_left">
<img src="/images/list/deleted/files.svg">
</div>
<div class="deleted_inner_right">
<h1>This link does not contain any files</h1>
<p>Possible reasons:</p>
<ul>
<li><img src="/images/UI_icons/blue/check.svg" alt="✓">Expiry date is over</li>
<li><img src="/images/UI_icons/blue/check.svg" alt="✓">Owner has deleted file</li>
<li><img src="/images/UI_icons/blue/check.svg" alt="✓">The link is incorrect</li>
</ul>
</div>
</div>
</div>
</div>
<div class="undelete__wrapper">
<div class="undelete__inner">
<div class="undelete_msg__wrapper">
<div class="undelete_msg__info_txt">
<div>
<b>These files cannot be restored. To store your data permanently, create a free cloud storage user account.</b> </div>
</div>
<div class="standard_button undelete_msg__button" onclick="showCreateAccount();">
Sign up </div>
</div>
<div class="undelete__preloader">
<i class="fa fa-spinner fa-spin"></i>
<span>Please wait...</span>
</div>
</div>
</div>
<div class="deleted_footer__pricing_container">
<link rel="stylesheet" type="text/css" media="all" href="/css/elements/storage_plan_cards.css?v=14">
<div class="plan_cards monthly personal business">
<div class="plan_card_wrapper personal business ">
<div class="plan_card">
<div class="plan_title">Basic account</div>
<div class="plan_price annual hidden"><b></b> /month</div>
<div class="plan_price monthly hidden"><b></b> /month</div>
<div class="plan_pricedesc free ">Free</div>
<div class="plan_bullets">
<div class="plan_bullet">
<span>20GB storage a month</span>
</div>
<div class="plan_bullet">
<span>Store and share documents</span>
</div>
<div class="plan_bullet">
<span>Convert docs to PDF</span>
</div>
<div class="plan_bullet">
<span>Antivirus protection</span>
</div>
</div>
<a href="#" class="plan_button standart buttonwithoutprice red" onclick="gaev( 'upload_view', 'Free', 'Signup-Free' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">
Create account </a>
</div>
</div>
<div class="plan_card_wrapper personal highlighted">
<div class="top_bar" style="background: #F23047;">
<div class="top_bar_desc">Most popular features</div>
</div>
<div class="plan_card">
<div class="discount_annual">You’ll Save 24$</div>
<div class="plan_title">PRO</div>
<div class="plan_price annual "><b>$7,9</b> /month</div>
<div class="plan_price monthly "><b>$9,9</b> /month</div>
<div class="plan_pricedesc  "><span class="crossed">118,8$<svg><line x1="0" y1="70%" x2="120%" y2="0"></line></svg></span> 94,80$ yearly</div>
<div class="plan_bullets">
<div class="plan_bullet">
<span>Three times faster upload</span>
</div>
<div class="plan_bullet">
<span>2TB cloud storage + add more</span>
</div>
<div class="plan_bullet">
<span>20GB file size</span>
</div>
<div class="plan_bullet">
<span>Share without Ads</span>
</div>
<div class="plan_bullet">
<span>Password-protected links</span>
</div>
<div class="plan_bullet">
<span>Set delete date</span>
</div>
<div class="plan_bullet">
<span>File recovery for 30 days</span>
</div>
<div class="plan_bullet">
<span>Realtime Document editor</span>
</div>
<div class="plan_bullet">
<span>Image editor</span>
</div>
<div class="plan_bullet">
<span>Medadata: XMP, IPTC, Exif</span>
</div>
<div class="plan_bullet">
<span>AI image recognition</span>
</div>
<div class="plan_bullet">
<span>AI speech to text</span>
</div>
</div>
<div class="plan_button_wrapper">
<a href="#" class="plan_button annual " onclick="gaev( 'upload_view', 'Pro2TB', 'Signup-Pro2TB' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">Subscribe</a>
<a href="#" class="plan_button monthly " onclick="gaev( 'upload_view', 'Pro2TB', 'Signup-Pro2TB' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">Subscribe</a>
</div>
</div>
</div>
<div class="plan_card_wrapper business ">
<div class="plan_card">
<div class="discount_annual">You’ll Save 72$</div>
<div class="plan_title">TEAM</div>
<div class="plan_price annual "><b>$19</b> /month</div>
<div class="plan_price monthly "><b>$25</b> /month + VAT</div>
<div class="plan_pricedesc  "><span class="crossed">300$<svg><line x1="0" y1="70%" x2="120%" y2="0"></line></svg></span> 228$ + VAT yearly</div>
<div class="plan_bullets">
<div class="plan_bullet">
<span>2TB+ and 4 users included</span>
</div>
<div class="plan_bullet">
<span>More powerful servers</span>
</div>
<div class="plan_bullet">
<span>E-signing of documents</span>
</div>
<div class="plan_bullet">
<span>200GB+ file size</span>
</div>
<div class="plan_bullet">
<span>File Versioning</span>
</div>
<div class="plan_bullet">
<span>File recovery up to 1 year</span>
</div>
<div class="plan_bullet">
<span>2FA and security settings</span>
</div>
<div class="plan_bullet">
<span>Audit Trails and Activity Logs</span>
</div>
<div class="plan_bullet">
<span>Technical support</span>
</div>
</div>
<div class="plan_button_wrapper">
<a href="#" class="plan_button annual " onclick="gaev( 'upload_view', 'Team2TB', 'Signup-Team2TB' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">Subscribe</a>
<a href="#" class="plan_button monthly " onclick="gaev( 'upload_view', 'Team2TB', 'Signup-Team2TB' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">Subscribe</a>
</div>
</div>
</div>
<div class="plan_card_wrapper business ">
<div class="plan_card">
<div class="discount_annual">You’ll Save 312$</div>
<div class="plan_title">BUSINESS</div>
<div class="plan_price annual "><b>$99</b> /month</div>
<div class="plan_price monthly "><b>$125</b> /month + VAT</div>
<div class="plan_pricedesc  "><span class="crossed">1500$<svg><line x1="0" y1="70%" x2="120%" y2="0"></line></svg></span> 1188$ + VAT yearly</div>
<div class="plan_bullets">
<div class="plan_bullet">
<span>5TB+ and 10 users</span>
</div>
<div class="plan_bullet">
<span>Business storage tier</span>
</div>
<div class="plan_bullet">
<span>Business features and invoicing</span>
</div>
<div class="plan_bullet">
<span>400GB+ file size</span>
</div>
<div class="plan_bullet">
<span>File Versioning</span>
</div>
<div class="plan_bullet">
<span>File recovery up to 5 years</span>
</div>
<div class="plan_bullet">
<span>2FA and security settings</span>
</div>
<div class="plan_bullet">
<span>Activity and file access log</span>
</div>
<div class="plan_bullet">
<span>Business technical support</span>
</div>
<div class="plan_bullet">
<span>User group management</span>
</div>
<div class="plan_bullet">
<span>Bulk content recognition and search</span>
</div>
</div>
<div class="plan_button_wrapper">
<a href="#" class="plan_button annual " onclick="gaev( 'upload_view', 'Business5TB', 'Signup-Business5TB' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">Subscribe</a>
<a href="#" class="plan_button monthly " onclick="gaev( 'upload_view', 'Business5TB', 'Signup-Business5TB' ); $( '.login_return_url' ).val( 'storage-plans#subscribe' ); showCreateAccount(); return false;">Subscribe</a>
</div>
</div>
</div>
</div>
<script>
		var bolUserHasBusinessAccount = false;
		let unix_timestamp = 1729654083;
	</script>
<script src="js/storage_plan_cards.js?v=3"></script>
</div>
<div class="deleted_footer__faq_container">
<link rel="stylesheet" type="text/css" media="all" href="/css/elements/faq.css?v=2">
<div id="faq">
<h1>Frequently asked questions with file storage, data security and features</h1>
<div class="faq-list">
<div class="storage_plans_left">
<div class="faq-list__item faq-list__item_open">
<div class="faq-list__item__q">
Are my files private? </div>
<div class="faq-list__item__a">
The files are available in your account and are stored in secure data centers in the European Union. Each folder and file is automatically assigned a unique Internet link. Links have access rights: Private, Link, Public. If the link rights have not been set to private, then when you open the link, its content will be available.
<br><br>
File access settings are available both for the entire account and for each folder and file. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
What is the Files.fm platform for? </div>
<div class="faq-list__item__a">
Anyone looking to store and share their files with ease. Upload files of up to 5 GB for free and share unique links with anyone, anytime. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
Where are the files stored? How are they available? </div>
<div class="faq-list__item__a">
The files are available in your account and are stored in secure data centers in the European Union. Each folder and file is automatically assigned a unique link. Links have access rights: Private, Link, Public. If the link rights have not been set to private, then when you open the link, its content will be available.
<br><br>
File access settings are available both for the entire account and for each folder and file. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
What file types can I store? </div>
<div class="faq-list__item__a">
Upload, store and share all types of files - documents, photos, video, audio and other. The system preserves original file sizes. Select and upload multiple files at once.
<br><br>
Basic account user have a 5 GB upload limit, Pro - 20 GB and Business accounts have a 50 GB limit. Use Sync for unlimited uploads. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
What to do if there are complaints about the content published on the platform? </div>
<div class="faq-list__item__a">
Yes. Please submit your complaint (a DMCA type application) for file removal using <a href="/content-review" target="_blank"> this form </a>. </div>
</div>
<div class="faq-list__item faq-list__item_open">
<div class="faq-list__item__q">
Payment methods </div>
<div class="faq-list__item__a">
We support VISA, Mastercard, bank transfer and internal Files.fm tokens.
<br><br>
We do not have access, nor do we store your credit card data. All payments are made via banks and secure PCI-DSS certified payment institutions. </div>
</div>
</div>
<div class="storage_plans_right">
<div class="faq-list__item faq-list__item_open">
<div class="faq-list__item__q">
Data security </div>
<div class="faq-list__item__a">
Files are uploaded, shared and encrypted securely.
<br><br>
Use the "Backup" tool to create private encrypted backup copies stored in a secure data center. Otherwise, data arrays are reserved, <b>but no additional backups are made for your files</b>. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
How long are files stored for free users? </div>
<div class="faq-list__item__a">
This depends - <b>unregistered</b> users can access and share uploaded files for up to 60 days.
<br><br>
Pro and Business account users have free permanent file storage space, with access to upload details, access statistics and file privacy management. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
How can I delete files? </div>
<div class="faq-list__item__a">
You can. To delete files, provide an e-mail address for file management in the first field of the file upload form. The "delete-file" link will be sent to this email.
<br><br>
Registered users can delete their uploads in the "My files" section. In case of uploading files before logging-in, see the uploads made from
your device in the login page (or contact support). </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
Do I get a sharing link immediately after starting upload? </div>
<div class="faq-list__item__a">
Yes. Your sharing link should appear at the top of the file upload window right after you click "Start file upload".
<br><br>
For registered users, the uploaded file link also appears as the latest entry in "My files" section. </div>
</div>
<div class="faq-list__item">
<div class="faq-list__item__q">
Why can′t we refund payments? </div>
<div class="faq-list__item__a">
Because payments are processed automatically. As soon as a payment is made, the system reserves disk space, unlocks instant features and/or grants access to paid content.
<br><br>
To see if this is for you, try the Business account for free for 14 days. </div>
</div>
<div class="faq-list__item faq-list__item_open">
<div class="faq-list__item__q">
How much data can I store? </div>
<div class="faq-list__item__a">
Store as much as you need - rent more storage space as you go.
<br><br>
Your received Files.fm tokens also add to your permanent disk space. </div>
</div>
</div>
</div>
</div>
<script type="text/javascript">

	$(window).bind("load", function() {

		$(".faq-list__item__q").click(function (){
            var $this = $(this).closest(".faq-list__item");
            var strOpenClass = "faq-list__item_open";
		    
		    if( $this.hasClass(strOpenClass) ) 
		    {
		       $this.removeClass(strOpenClass);
            }
            else 
            {
                $this.addClass(strOpenClass);
            }           
        });
	});

</script></div>
<style type="text/css">
    #center {
        min-height: 0 !important;
    }
</style>
<script type="text/javascript">

	function restoreItem( strItemType, strItemHash )
    {
        $( '.undelete_msg__button' ).hide();
        $( '.undelete__preloader' ).show();
        
        var strAjax_Url;
        
        if ( strItemType == 'FILE' )
        {
        	strAjax_Url = '/api/undelete_file.php';
        }
        else 
        {
        	strAjax_Url = '/api/undelete_folder.php';
        }
        

        $.ajax(
        {
            type : 'POST' ,
            dataType : 'json' ,
            url : strAjax_Url ,
            data :
            {
                hash :  strItemHash ,
                return_new_path : false
            } ,
            success : function( data )
            {
                if ( data.status === 'ok' )
                {
                   window.location.reload();
                }
                else
                {
                    $( '.undelete_msg__button' ).show();
                    $( '.undelete__preloader' ).hide();
                    fError( 'Failed to restore. Please try again! If the error persists, contact [email protected]' );
                }
            } ,
            error : function()
            {
                $( '.undelete_msg__button' ).show();
                $( '.undelete__preloader' ).hide();
                fError( 'Failed to restore. Please try again! If the error persists, contact [email protected]' );
            }
        } );
    }
	
	function showCreateAccountWithRedirect()
    {
        $('.dont_redirect_after_login').val('');
        $('.login_return_url').val(window.location.pathname);
        
        showCreateAccount();
    }

</script>
</div>
<link rel="stylesheet" type="text/css" media="all" href="/css/footer.css?v=16">
<div id="footer_container">
<div id="footer" class="clearfix">
<div class="footer_block footer_block_left">
<div class="float_left">
<p class="header">2008 - 2024 <img src="images/european-flag.svg" width="24" height="24" alt="Files.fm EU Cloud storage">
EU Files.fm cloud storage </p>
<p>The Files.fm cloud storage platform offers comprehensive solutions for storing, sharing, publishing, and even selling various types of content, including photos, videos, music, applications, books, and documents.</p>
<div id="files_socials">
<a class="social_icon facebook" href="https://www.facebook.com/Filesfm/" target="_blank"></a>
<a class="social_icon linkedin" href="https://lv.linkedin.com/company/files.fm" target="_blank"></a>
<a class="social_icon instagram" href="https://www.instagram.com/files.fm/" target="_blank"></a>
<a class="social_icon twitter" href="https://twitter.com/files_fm" target="_blank"></a>
<a class="social_icon tiktok" href="https://www.tiktok.com/@files.fm" target="_blank"></a>
</div>

</div>
</div>
<div class="footer_block_right">
<div class="footer_block">
<div class="footer_title">
Get started </div>
<ul>
<li>
<a href="" onclick="showCreateAccount(); return false;">Create account / Login</a>
</li>
<li>
<a href="storage-plans">Pricing</a>
</li>
<li>
<a href="/business">Business</a>
</li>
<li>
<a href="/data-security" target="_blank">Data security</a>
</li>
<li>
<a href="terms">Terms</a>
</li>
<li>
<a href="questions-about-online-file-storage">Questions</a>
</li>
<li>
<a href="/token">Files.fm Token</a>
</li>
</ul>
</div>
<div class="footer_block">
<div class="footer_title">
Solutions </div>
<ul>
<li>
<a href="/sync-share">File sync</a>
</li>
<li>
<a href="/backup">Encrypted Backups</a>
</li>
<li>
<a href="upload-form" target="_blank">File upload form</a>
</li>
<li>
<a href="https://files.fm/servers" target="_blank">Virtual servers</a>
</li>
<li>
<a href="/sell-files">Content sales e-commerce</a>
</li>
<li>
<a href="/public-profiles" target="_blank">Content publishing</a>
</li>
</ul>
</div>
<div class="footer_block">
<div class="footer_title">
Apps </div>
<ul>
<li>
Mobile:
<a href="https://play.google.com/store/apps/details?id=com.files.fm" target="_blank"> Android </a>
 |
<a href="https://apps.apple.com/in/app/files-fm-cloud-storage/id1636301796" target="_blank"> Apple iOS </a>
</li>
<li>
Sync:
<a href="/sync-share#setup">Windows | MacOS</a>
</li>

<li>
<a href="?convert-to-pdf">Convert to PDF</a> | <a href="?convert-to-mp4">Convert to MP4</a>
</li>
<li>
<a href="/webdav-info">Webdav network drive</a>
</li><li>
<a href="/discover" target="_blank">Files.fm Public Content</a>
</li>
</ul>
</div>
<div class="footer_block">
<div class="footer_title">
Support </div>
<ul>
<li>
<a href="https://forum.files.fm/" target="_blank">User forum</a>
</li>
<li>
<a href="https://discord.gg/BCTJyNZABJ" target="_blank">Discord chat</a>
</li>
<li>
<a href="./contacts">Contact us</a>
</li>
<li>
<a href="about">About Files.fm</a>
</li>
<li>
<a href="./api.php">API for Developers</a>
</li>
</ul>
</div>
</div>
<p class="header_below">2008 - 2024 EU Files.fm cloud storage</p>
</div>

</div>
</div>
<div id="info_tooltip_global"></div>
<script>
    function CloseSuggestion(id) {
        
        if (id == 'suggest_lang') {
            $.get("includes/suggest_language.php", {sLang: 1});
        }
        else if (id == 'suggest_register'){
            $.get("includes/suggest_language.php", {sReg: 1});
        }
        
        document.getElementById(id).style.display='none';
    }
</script>
<script>
        
        $(window).bind("load", function() {
            $( "#register_from_ico" ).val( 0 );
            if	(window.location.hash == '#sign_up') {
                
                showCreateAccount();
            }
            else if	(window.location.hash == '#log_in') {
                
                showSignIn();
            }
            else if	(window.location.hash == '#forgot_password') {
                
                showForgotPassword();
            }
        });
    
    </script>
<div id="files_970x90_sticky_anchorad_responsive">
<script>
        if ( typeof googletag != 'undefined' && typeof googletag.cmd != 'undefined' )
        {
            googletag.cmd.push(function() { googletag.display('files_970x90_sticky_anchorad_responsive'); });
        }
    </script>
</div>
<script>
    window.addEventListener("stpdRendered", function (e) {
        var adName =  e.detail.name;
        var adWinner = e.detail.winner;
        var cleanEventName = adName.split('/')[2];

        if ( ( (cleanEventName == "files_970x90_sticky_anchorad_desktop") || (cleanEventName == "files_320x100_sticky_anchorad_mobile") ) && (adWinner != "passback")  ) {
            setTimeout(function () {
                var anchorParent = top.document.querySelector("#files_970x90_sticky_anchorad_responsive");
                var anchorIframe = top.document.querySelector("#files_970x90_sticky_anchorad_responsive > div > iframe");
                var anchorClose = top.document.querySelector("#stpd_close");
                if(window.innerWidth > 1000) {
                    anchorParent.style.cssText += "width: " + (anchorIframe.clientWidth + 100) + "px";
                    anchorClose.style.cssText += "width: 40px; height: 35px; padding-top: 5px; border-top: unset; border-left: unset; border: 5px solid red; border-radius: 50%; background: rgb(255 255 255);";
                } else {
                    anchorClose.style.cssText += "width: 30px; height: 30px; border-top: unset; border-left: unset; border: 5px solid red; border-radius: 50%; background: rgb(255 255 255); top: -40px;";
                }
            }, 50);
        }
    });
</script>
<script>
    window.addEventListener("stpdRendered", function (e) {
        var adName =  e.detail.name;
        var adWinner = e.detail.winner;
        var cleanEventName = adName.split('/')[2];

        if ( ( (cleanEventName == "failiem_970x90_sticky_anchorad_desktop") || (cleanEventName == "failiem_320x100_sticky_anchorad_mobile") ) && (adWinner != "passback")  ) {
            setTimeout(function () {
                var anchorParent = top.document.querySelector("#failiem_970x90_sticky_anchorad_responsive");
                var anchorIframe = top.document.querySelector("#failiem_970x90_sticky_anchorad_responsive > div > iframe");
                var anchorClose = top.document.querySelector("#stpd_close");
                if(window.innerWidth > 1000) {
                    anchorParent.style.cssText += "width: " + (anchorIframe.clientWidth + 100) + "px";
                    anchorClose.style.cssText += "width: 40px; height: 35px; padding-top: 5px; border-top: unset; border-left: unset; border: 5px solid red; border-radius: 50%; background: rgb(255 255 255);";
                } else {
                    anchorClose.style.cssText += "width: 30px; height: 30px; border-top: unset; border-left: unset; border: 5px solid red; border-radius: 50%; background: rgb(255 255 255); top: -40px;";
                }
            }, 50);
        }
    });
</script>

<div id="footer_bottom_floating_line" class="footer_bottom_floating_line__listphp  cookies_msg_active ">
<div id="footer_bottom_floating_line__cookies">
<div id="footer_bottom_floating_line__cookies__text">
By using this website, you agree to Files.fm <a href="https://files.fm/terms" target="_blank">terms</a> and <a href="https://files.fm/privacy-policy" target="_blank">cookie policy.</a> </div>
<button id="footer_bottom_floating_line__cookies__ok_btn" onclick="gaev('CookiePolicy', 'CloseButton', ''); $('#footer_bottom_floating_line__cookies').hide(); document.cookie='cookie_info_closed=true; max-age=31536000'; $( '#footer_bottom_floating_line' ).removeClass( 'cookies_msg_active' );">
OK </button>
</div>
</div>
<script src="/js/inputs.js?v=1715343640"></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{&quot;rayId&quot;:&quot;8d66652538932fbf&quot;,&quot;version&quot;:&quot;2024.10.3&quot;,&quot;serverTiming&quot;:{&quot;name&quot;:{&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfSpeedBrain&quot;:true,&quot;cfCacheStatus&quot;:true}},&quot;token&quot;:&quot;920d49a89d024a45b0d7a0081fbadb80&quot;,&quot;b&quot;:1}" crossorigin="anonymous"></script>


</body></html>