rclone / rclone

"rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files
https://rclone.org
MIT License
45k stars 4.03k forks source link

support for pCloud #418

Closed mehargags closed 6 years ago

mehargags commented 8 years ago

hi, I was wondering if you guyz can include support for pCloud http://www.pcloud.com/

api: https://docs.pcloud.com/

niessen commented 7 years ago

+1 They now offer a lifetime 500GB storage for a single payment of 60$

fbraz3 commented 7 years ago

+1 =)

mehargags commented 7 years ago

still no love for pCloud ?

crakerjac commented 7 years ago

Any chance we can get pcloud support since ACD has been dropped?

briandlees commented 6 years ago

Very frustrating that the most cost effective provider is not supported by any of the tools! Premium plus on pCloud provides 2TB for the same price Dropbox or OneDrive offer 1TB.

ghost commented 6 years ago

+1

tungquyen commented 6 years ago

+1

tungquyen commented 6 years ago

Dear sir, Do you have any plans for adding Pcloud.com to Rclone?

tungquyen commented 6 years ago

Hi admin,

Are you in vacation? We are waiting for your response

ncw commented 6 years ago

I'm planning to do this for rclone 1.39 - I'll post a beta here in a week or two.

tungquyen commented 6 years ago

Great We wait for the good news from you Let us know when you come out to the beta

tungquyen commented 6 years ago

You remember to keep your health Wish you always lucky

karneaud commented 6 years ago

+1

manhkha commented 6 years ago

+1

ncw commented 6 years ago

I have implemented the pcloud remote. Please try the beta here and report issues in this ticket - Thanks

https://beta.rclone.org/v1.38-009-g9e929783/

The docs are here.

karneaud commented 6 years ago

@ncw Tested out and had some difficulty

OS Environment

Ubuntu Server 14.0.4( headless)

Expected Behaviour

Should take me to pCloud auth to login and authorise

Actual Behaviour

I run in a remote headless environment so no browser. I use HTTP Tunnelling which gave me

<html class="no-js" lang="en"><head>
    <title>pCloud Autorize</title>
    <meta name="apple-itunes-app" content="app-id=692002098">
    <meta name="HandheldFriendly" content="true">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    <meta name="keywords" content="best online storage,cloud security,cloud storage,file sharing,file transfer,free cloud storage,free file sharing,send big files,send large files">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="pragma" content="no-cache">

    <link type="text/css" rel="stylesheet" href="/tunnel/link.cgi/https://my.pcloud.com/css/oauth/main.css">

    <script src="/tunnel/link.cgi/https://my.pcloud.com/js/oauth/jquery.min.js"></script>
    <script src="/tunnel/link.cgi/https://my.pcloud.com/js/oauth/handlebars-v1.3.0.js"></script>

<script>
    /* Available template parameters:
     * application - object with application info
     * user - either an object with userinfo or false if the user is not logged in, if user is false after logging in refresh the page
     * folders - if the application.folderaccess is "pick" and user is logged this represents folder structure, false otherwise
     * response_type - properly quoted string, one of "token", "poll_token" or "code"
     * redirect_uri - URL to redirect after giving access
     * request_id - An unique request ID used to poll for token at oauth2_token API call
     * state - user provided state
     * sign - signature of the request
     *
     * When the user autorizes the application, he must be sent to: authorize_submit with the following parameters:
     * client_id - found in "application"
     * folderid - if application.folderaccess is "pick", than the folderid of the picked folder
     * response_type, redirect_uri, state, sign - must be send back without any modification
     *
     */
    var user=false;
    var application={
    "name": "rclone.org",
    "writeaccess": true,
    "app_id": 1522,
    "publisher": "The rclone project",
    "client_id": "DnONSzyJXpm",
    "website": "",
    "filetypes": 0,
    "description": "rsync for cloud storage",
    "folderaccess": "full",
    "allowimplicitgrant": true,
    "icon": {
        "path": "\/dpZryMYz7ZZZZuUNIE7Z3VZZKVzZZI5dleUhmcAyk924PnvbNDYeF81Uk\/icon-",
        "hash": 16267959853085970798,
        "expires": "Sun, 01 Oct 2017 22:19:42 +0000",
        "size": "64x64",
        "dwltag": "554FWooYmPV4W0rrf6cdy0",
        "hosts": [
            "c266.pcloud.com",
            "c86.pcloud.com"
        ]
    }
};
    var folders=false;
    var state="321c635a84a83cdff5c3acaf5eddebd5";
    var response_type="code";
    var redirect_uri="http:\/\/localhost:53682\/";
    var request_id="";
    var sign=false;
    var selected_folder_id = false;
</script>
<style type="text/css">:root topadblock, :root td[valign="top"] > .mainmenu[style="padding:10px 0 0 0 !important;"], :root input[onclick^="window.open('http://www.friendlyduck.com/"], :root input[onclick^="window.open('http://www.FriendlyDuck.com/"], :root img[alt^="Fuckbook"], :root iframe[src^="http://cdn1.adexprt.com/"], :root iframe[src^="http://ad.yieldmanager.com/"], :root div[id^="proadszone-"], :root div[id^="mainads"], :root div[id^="lazyad-"], :root div[id^="google_dfp_"], :root div[id^="dmRosAdWrapper"], :root div[id^="div_ad_stack_"], :root div[id^="div-adtech-ad-"], :root iframe[id^="google_ads_iframe"], :root div[id^="crt-"][style], :root div[id^="cns_ads_"], :root div[id^="ads300_250-widget"], :root iframe[src^="http://cdn2.adexprt.com/"], :root div[id^="ads300_100-widget"], :root div[id^="ads250_250-widget"], :root div[id^="adrotate_widgets-"], :root div[id^="ad_script_"], :root div[id^="ad-server-"], :root div[id^="acm-ad-tag-"], :root div[id^="MarketGid"], :root div[id^="ADV-SLOT-"], :root div[class^="proadszone-"], :root div[class^="BlockAdvert-"], :root div[class$="dealnews"] > .dealnews, :root div > [class][onclick*=".updateAnalyticsEvents"], :root bottomadblock, :root aside[id^="div-gpt-ad"], :root a[target="_blank"][href^="http://api.taboola.com/"], :root a[style="display:block;width:300px;min-height:250px"][href^="http://li.cnet.com/click?"], :root a[onmousedown^="this.href='https://paid.outbrain.com/network/redir?"][target="_blank"] + .ob_source, :root a[onmousedown^="this.href='http://staffpicks.outbrain.com/network/redir?"][target="_blank"] + .ob_source, :root a[onmousedown^="this.href='http://staffpicks.outbrain.com/network/redir?"][target="_blank"], :root a[onmousedown^="this.href='http://paid.outbrain.com/network/redir?"][target="_blank"] + .ob_source, :root a[onmousedown^="this.href='/wp-content/embed-ad-content/"], :root iframe[src^="http://static.mozo.com.au/strips/"], :root a[href^="https://www.spyoff.com/"], :root a[href^="https://www.share-online.biz/affiliate/"], :root a[href^="https://www.oboom.com/ad/"], :root a[href^="https://www.googleadservices.com/pagead/aclk?"], :root a[href^="https://www.firstload.com/affiliate/"], :root a[href^="https://www.adskeeper.co.uk/"], :root a[href^="https://windscribe.com/promo/"], :root a[href^="https://trust.zone/go/r.php?RID="], :root div[class^="gemini-ad"], :root a[href^="https://torguard.net/aff.php"], :root div[id^="YFBMSN"], :root a[href^="https://secure.eveonline.com/ft/?aid="], :root a[href^="https://pubads.g.doubleclick.net/"], :root a[href^="https://go.ad2up.com/"], :root a[href^="https://farm.plista.com/pets"], :root a[href^="https://click.plista.com/pets"], :root a[href^="https://chaturbate.com/affiliates/"], :root a[href^="https://affiliates.bet-at-home.com/processing/"], :root a[href^="https://adhealers.com/"], :root a[href^="https://ad.atdmt.com/"], :root a[href^="http://xtgem.com/click?"], :root div[itemtype="http://schema.org/WPAdBlock"], :root a[href^="http://xads.zedo.com/"], :root a[href^="http://wxdownloadmanager.com/dl/"], :root a[href^="http://www1.clickdownloader.com/"], :root a[href^="http://www.zergnet.com/i/"], :root a[href^="http://www.usearchmedia.com/signup?"], :root a[href^="http://www.torntv-downloader.com/"], :root a[href^="http://www.tirerack.com/affiliates/"], :root a[href^="http://www.text-link-ads.com/"], :root div[id^="div_openx_ad_"], :root a[href^="http://www.streamate.com/exports/"], :root a[href^="http://www.sfippa.com/"], :root a[href^="http://www.xmediaserve.com/"], :root a[href^="http://www.sex.com/videos/?utm_"], :root a[href^="http://www.sex.com/?utm_"], :root a[onmousedown^="this.href='http://paid.outbrain.com/network/redir?"][target="_blank"], :root a[href^="http://www.roboform.com/php/land.php"], :root a[href^="http://www.quick-torrent.com/download.html?aff"], :root #flowplayer > div[style="z-index: 208; position: absolute; width: 300px; height: 275px; left: 222.5px; top: 85px;"], :root a[href^="http://www.plus500.com/?id="], :root div[id^="google_ads_iframe_"], :root a[href^="http://www.affiliates1128.com/processing/"], :root a[href^="http://www.pheedo.com/"], :root a[href^="http://guideways.info/"], :root #\5f _nq__hh[style="display:block!important"], :root a[href^="http://www.on2url.com/app/adtrack.asp"], :root a[href^="http://www.myvpn.pro/"], :root a[href^="http://liversely.net/"], :root a[href^="http://www.my-dirty-hobby.com/?sub="], :root a[href^="http://www.download-provider.org/"], :root a[href^="http://www.installads.net/"], :root a[href^="http://www.incredimail.com/?id="], :root a[href^="http://tracking.toroadvertising.com/"], :root a[href^="http://www.graboid.com/affiliates/"], :root a[href^="http://www.gamebookers.com/cgi-bin/intro.cgi?"], :root a[href^="http://www.friendlyquacks.com/"], :root a[href^="http://cdn3.adbrau.com/"], :root a[href^="http://www.friendlyadvertisements.com/"], :root a[href^="http://ul.to/ref/"], :root a[href^="http://www.freefilesdownloader.com/"], :root a[href^="http://www.fpcTraffic2.com/blind/in.cgi?"], :root a[href^="http://www.fonts.com/BannerScript/"], :root a[href^="http://www.fleshlight.com/"], :root a[href^="http://www.mysuperpharm.com/"], :root a[href^="http://www.firstload.de/affiliate/"], :root a[href^="http://duckcash.eu/"], :root a[href^="http://www.firstload.com/affiliate/"], :root a[href*=".trust.zone"], :root a[href^="http://www.firstclass-download.com/"], :root a[href^="http://www.faceporn.net/free?"], :root a[href^="http://clicks.binarypromos.com/"], :root a[href^="http://www.downloadplayer1.com/"], :root a[href^="http://www.down1oads.com/"], :root a[href^="http://www.liutilities.com/"], :root a[href^="http://tracking.deltamediallc.com/"], :root a[href^="http://www.dl-provider.com/search/"], :root a[href^="http://www.cash-duck.com/"], :root a[href^="http://www.bet365.com/"][href*="?affiliate="], :root a[href^="http://www.bet365.com/"][href*="&affiliate="], :root a[href^="http://www.badoink.com/go.php?"], :root a[href^="http://ad-emea.doubleclick.net/"], :root a[href^="http://www.adskeeper.co.uk/"], :root div[id^="advads-"], :root a[href^="http://www.ringtonematcher.com/"], :root a[href^="http://www.adshost2.com/"], :root a[href^="http://www.adbrite.com/mb/commerce/purchase_form.php?"], :root a[href^="http://www.brightwheel.info/"], :root a[href^="http://www.1clickdownloader.com/"], :root a[href^="http://www.123-reg.co.uk/affiliate2.cgi"], :root a[href^="http://prousa.work/"], :root a[href^="http://see-work.info/"], :root a[href^="http://websitedhoome.com/"], :root a[href^="http://www.paddypower.com/?AFF_ID="], :root a[href^="http://uploaded.net/ref/"], :root a[href^="http://track.adform.net/"], :root a[href^="http://t.wowtrk.com/"], :root a[href^="http://adprovider.adlure.net/"], :root a[href^="http://tezfiles.com/pr/"], :root a[href^="http://go.seomojo.com/tracking202/"], :root a[href^="http://www.revenuehits.com/"], :root a[href^="http://www.easydownloadnow.com/"], :root .mw > #rcnt > #center_col > #taw > .c, :root a[href^="http://taboola-"][href*="/redirect.php?app.type="], :root a[href^="http://t.mdn2015x3.com/"], :root a[href^="http://clickandjoinyourgirl.com/"], :root a[href^="http://webtrackerplus.com/"], :root a[href^="http://b.bestcompleteusa.info/"], :root a[href^="http://t.mdn2015x2.com/"], :root a[href^="http://sharesuper.info/"], :root a[href^="http://getlinksinaseconds.com/"], :root a[href^="http://secure.signup-way.com/"], :root a[href^="http://secure.signup-page.com/"], :root [onclick^="window.open('http://adultfriendfinder.com/search/"], :root a[href^="http://secure.hostgator.com/~affiliat/"], :root a[href^="http://ryushare.com/affiliate.python"], :root a[href^="http://record.commissionking.com/"], :root a[href^="http://record.betsafe.com/"], :root a[href^="http://pubads.g.doubleclick.net/"], :root a[href^="http://www.epicgameads.com/"], :root a[href^="http://gca.sh/user/register?ref="], :root a[href^="http://promos.bwin.com/"], :root a[href^="http://prochina.link/"], :root a[href^="http://z1.zedo.com/"], :root a[href^="http://pokershibes.com/index.php?ref="], :root .ra[width="30%"][align="right"] + table[width="70%"][cellpadding="0"], :root a[href^="http://searchtabnew.com/"], :root a[href^="http://pan.adraccoon.com?"], :root a[href^="http://n217adserv.com/"], :root a[href^="http://mojofun.info/"], :root a[href^="http://mmo123.co/"], :root .plistaList > .itemLinkPET, :root a[href^="http://mgid.com/"], :root a[href^="http://media.paddypower.com/redirect.aspx?"], :root a[href^="http://marketgid.com"], :root a[href^="http://www.bitlord.me/share/"], :root a[href^="http://www.socialsex.com/"], :root a[href^="http://www.affbuzzads.com/affiliate/"], :root a[href*=".qertewrt.com/"], :root a[href^="http://lp.ncdownloader.com/"], :root a[href*=".adsrv.eacdn.com/"] > img, :root a[href^="http://lp.ilivid.com/"], :root #rhs_block .xpdopen > ._OKe > div > .mod > ._yYf, :root a[href^="http://lp.ezdownloadpro.info/"], :root a[href^="http://liversely.com/"], :root a[href^="http://latestdownloads.net/download.php?"], :root a[href^="http://keep2share.cc/pr/"], :root a[href^="http://k2s.cc/pr/"], :root a[href^="http://join3.bannedsextapes.com/track/"], :root a[href^="http://green.trafficinvest.com/"], :root a[href^="http://jobitem.org/"], :root a[href^="//adbit.co/?a=Advertise&"], :root a[href^="http://istri.it/?"], :root a[href^="https://dltags.com/"], :root a[href^="http://onclickads.net/"], :root a[href^="http://www.terraclicks.com/"], :root a[href^="http://www.coinducks.com/"], :root a[href^="http://internalredirect.site/"], :root a[href^="http://cdn.adstract.com/"], :root a[href^="http://hyperlinksecure.com/go/"], :root a[href^="http://greensmoke.com/"], :root a[href^="http://www.downloadthesefiles.com/"], :root a[href^="http://farm.plista.com/pets"], :root a[href^="http://mo8mwxi1.com/"], :root div[id^="block-views-topheader-ad-block-"], :root a[href^="http://go.oclaserver.com/"], :root .__y_elastic .__y_item, :root a[href^="http://go.mobisla.com/"], :root a[href^="http://go.ad2up.com/"], :root a[href^="http://www.duckssolutions.com/"], :root a[href^="http://games.ucoz.ru/"][target="_blank"], :root div[id^="div-gpt-ad"], :root a[href^="http://fusionads.net"], :root a[href^="http://us.marketgid.com"], :root a[href^="http://imads.integral-marketing.com/"], :root a[href^="http://freesoftwarelive.com/"], :root a[href^="http://adtrackone.eu/"], :root a[href^="http://finaljuyu.com/"], :root a[href^="http://tour.affbuzzads.com/"], :root a[href^="http://fileupnow.rocks/"], :root a[href^="http://fileloadr.com/"], :root a[href^="http://elitefuckbook.com/"], :root div[id^="ads300_600-widget"], :root a[href^="http://web.adblade.com/"], :root a[href^="http://elite-sex-finder.com/?"], :root a[href^="http://eclkmpsa.com/"], :root a[href^="http://dethao.com/"], :root a[href^="http://www.linkbucks.com/referral/"], :root a[href^="http://ddownload39.club/"], :root a[href^="http://www.moneyducks.com/"], :root a[href^="http://data.linoleictanzaniatitanic.com/"], :root a[href^="http://data.committeemenencyclopedicrepertory.info/"], :root a[href^="https://understandsolar.com/signup/?lead_source="][href*="&tracking_code="], :root a[href^="http://hdplugin.flashplayer-updates.com/"], :root a[href^="http://data.ad.yieldmanager.net/"], :root a[href^="http://www.babylon.com/welcome/index?affID"], :root a[href^="http://www.richducks.com/"], :root a[href^="http://campaign.bharatmatrimony.com/track/"], :root #content > #center > .dose > .dosesingle, :root a[href^="http://d2.zedo.com/"], :root a[href^="http://contractallsticker.net/"], :root a[href^="http://codec.codecm.com/"], :root div[id^="ads120_600-widget"], :root a[href^="http://clk.directrev.com/"], :root a[href^="http://refer.webhostingbuzz.com/"], :root a[href^="https://paid.outbrain.com/network/redir?"], :root a[href^="http://clickserv.sitescout.com/"], :root a[href^="http://clicks.guamwnvgashbkashawhgkhahshmashcas.pw/"], :root a[href^="https://dediseedbox.com/clients/aff.php?"], :root a[href^="http://www.wantstraffic.com/"], :root .lads[width="100%"][style="background:#FFF8DD"], :root a[href^="http://databass.info/"], :root a[href^="http://www.urmediazone.com/signup"], :root a[href^="http://ads.pheedo.com/"], :root a[href^="http://click.plista.com/pets"], :root a[href^="http://download-performance.com/"], :root .__ywvr .__y_item, :root a[href^="http://track.incognitovpn.com/"], :root a[href^="http://click.guamwnvgashbkashawhgkhahshmashcas.pw/"], :root a[href^="http://rekoverr.com/"], :root [lazy-ad="lefttop_banner"], :root a[href^="http://servicegetbook.net/"], :root a[href^="http://cinema.friendscout24.de?"], :root a[href^="http://cpaway.afftrack.com/"], :root a[href^="http://cdn.adsrvmedia.net/"], :root a[href^="http://360ads.go2cloud.org/"], :root a[href^="http://dftrck.com/"], :root a[href^="http://casino-x.com/?partner"], :root a[href^="http://www.clkads.com/adServe/"], :root a[href^="http://ads.expekt.com/affiliates/"], :root a[href^="http://callville.xyz/"], :root a[href^="http://serve.williamhill.com/promoRedirect?"], :root a[href^="http://feedads.g.doubleclick.net/"], :root a[href^="http://bs.serving-sys.com/"], :root a[href^="https://trklvs.com/"], :root a[href^="http://bestorican.com/"], :root a[href^="http://www.getyourguide.com/?partner_id="], :root a[href^="http://bcp.crwdcntrl.net/"], :root a[href^="http://install.securewebsiteaccess.com/"], :root .inlineNewsletterSubscription + .inlineNewsletterSubscription div[class$="_item"], :root a[href^="http://clkmon.com/adServe/"], :root a[href^="http://www.torntvdl.com/"], :root a[href^="http://at.atwola.com/"], :root ADS-RIGHT, :root a[href^="http://affiliates.score-affiliates.com/"], :root #rhs_block .mod > .luhb-div > div[data-async-type="updateHotelBookingModule"], :root a[href^="http://anonymous-net.com/"], :root a[href^="http://affiliate.glbtracker.com/"], :root a[href^="http://www.fbooksluts.com/"], :root a[href^="http://c.actiondesk.com/"], :root a[href^="http://www.fducks.com/"], :root .icons-rss-feed + .icons-rss-feed div[class$="_item"], :root a[href^="http://aflrm.com/"], :root a[href^="http://partner.sbaffiliates.com/"], :root a[href^="http://affiliate.coral.co.uk/processing/"], :root a[href^="http://api.content.ad/"], :root a[href^="https://bs.serving-sys.com"], :root a[href^="https://atomidownload.com/"], :root a[href^="http://adserver.itsfogo.com/"], :root a[href^="http://adtransfer.net/"], :root a[href^="http://zevera.com/afi.html"], :root a[href^="http://adsrv.keycaptcha.com"], :root a[data-widget-outbrain-redirect^="http://paid.outbrain.com/network/redir?"], :root a[href^="http://www.mobileandinternetadvertising.com/"], :root a[href^="http://adserving.unibet.com/"], :root a[href^="http://chaturbate.com/affiliates/"], :root a[href^="http://adserving.liveuniversenetwork.com/"], :root a[href^="http://adserver.adtechus.com/"], :root a[href^="http://buysellads.com/"], :root a[href^="http://down1oads.com/"], :root #\5f _mom_ad_12, :root a[href^="http://ads.integral-marketing.com/"], :root a[href^="http://adserver.adtech.de/"], :root a[href^="http://ads.betfair.com/redirect.aspx?"], :root a[href^="http://aff.ironsocket.com/"], :root a[href^="http://ads.affbuzzads.com/"], :root a[href^="http://online.ladbrokes.com/promoRedirect?"], :root a[href^="http://ads.ad-center.com/"], :root a[href^="http://adrunnr.com/"], :root a[href^="https://www.dsct1.com/"], :root a[href^="http://amzn.to/"] > img[src^="data"], :root a[href^="http://www.liversely.net/"], :root a[href^="http://admingame.info/"], :root div[id^="q1-adset-"], :root a[href^="http://adfarm.mediaplex.com/"], :root #center_col > #taw > #tvcap > .rscontainer, :root a[href^="http://adf.ly/?id="], :root a[href^="http://goldmoney.com/?gmrefcode="], :root a[href^="http://adexprt.me/"], :root a[href^="http://www.flashx.tv/downloadthis"], :root a[href^="http://affiliates.pinnaclesports.com/processing/"], :root a[href^="http://www.menaon.com/installs/"], :root a[href^="http://www.sex.com/pics/?utm_"], :root a[href^="http://engine.newsmaxfeednetwork.com/"], :root a[href^="http://ad.yieldmanager.com/"], :root a[href^="http://ad.doubleclick.net/"], :root #resultspanel > #topads, :root a[href^="http://www.seekbang.com/cs/"], :root a[href^="http://bluehost.com/track/"], :root a[href^="http://www.drowle.com/"], :root a[href^="http://abc2.mobile-10.com/"], :root a[href^="http://srvpub.com/"], :root a[href^="http://a.adquantix.com/"], :root a[href^="http://NowDownloadAll.com"], :root a[href^="http://www.ducksnetwork.com/"], :root a[href^="http://3wr110.net/"], :root a[href^="//ads.ad-center.com/"], :root a[href^="http://1phads.com/"], :root #center_col > #resultStats + div[style="border:1px solid #dedede;margin-bottom:11px;padding:5px 7px 5px 6px"], :root a[href^="https://www.secureupload.eu/suprerefid="], :root a[href^="http://yads.zedo.com/"], :root #mbEnd[cellspacing="0"][cellpadding="0"], :root a[href^="http://adclick.g.doubleclick.net/"], :root a[href^="//t.MtagMonetizationA.com/"], :root #\5f _mom_ad_2, :root a[href^="http://ads.activtrades.com/"], :root a[href^="//api.ad-goi.com/"], :root a[href^="http://www.clickansave.net/"], :root a[href^="http://get.slickvpn.com/"], :root [onclick*="content.ad/"], :root a[href^="http://galleries.securewebsiteaccess.com/"], :root a[href^=" http://n47adshostnet.com/"], :root a[href^="http://linksnappy.com/?ref="], :root #main_col > #center_col div[style="font-size:14px;margin:0 4px;padding:1px 5px;background:#fff7ed"], :root a[href^="http://adtrack123.pl/"], :root .section-result[data-result-ad-type], :root script[src^="http://free-shoutbox.net/app/webroot/shoutbox/sb.php?shoutbox="] + #freeshoutbox_content, :root a[href^=" http://ads.ad-center.com/"], :root .GPMV2XEDA2 > .GPMV2XEDP1 > .GPMV2XEDJBB, :root a[href*="onclkds."], :root a[href^="http://www.idownloadplay.com/"], :root a[href^="//srv.buysellads.com/"], :root div[itemtype="http://www.schema.org/WPAdBlock"], :root .__zinit .__y_item, :root .ch[onclick="ga(this,event)"], :root a[href^="https://ad.doubleclick.net/"], :root a[href*="letsadvertisetogether.com"], :root a[href^="http://fsoft4down.com/"], :root a[href*="ad2upapp.com/"], :root .ob_container a[data-redirect^="http://paid.outbrain.com/network/redir?"], :root #mn #center_col > div > h2.spon:first-child, :root a[href*="=Adtracker"], :root a[href^="https://www.popads.net/users/"], :root a[href^="http://tracking.crazylead.com/"], :root a[href*="/cmd.php?ad="], :root a[href^="http://www.myfreepaysite.com/sfw_int.php?aid"], :root a[href^="http://galleries.pinballpublishernetwork.com/"], :root .ob_dual_right > .ob_ads_header ~ .odb_div, :root a[href*=".adk2x.com/"], :root #\5f _admvnlb_modal_container, :root a[href^="http://www.duckcash.eu/"], :root a[href^="http://api.ringtonematcher.com/"], :root a[data-url^="http://paid.outbrain.com/network/redir?"] + .author, :root #MAIN.ShowTopic > .ad, :root a[href^="http://findersocket.com/"], :root a[href^="http://cdn3.adexprts.com/"], :root a[data-url^="http://paid.outbrain.com/network/redir?"], :root a[href^="http://www.twinplan.com/AF_"], :root a[href^="http://n.admagnet.net/"], :root a[href^="http://connectlinking6.com/"], :root a[data-obtrack^="http://paid.outbrain.com/network/redir?"], :root a[href^="http://bc.vc/?r="], :root a[href^="//www.mgid.com/"], :root a[href^="http://www.pinkvisualgames.com/?revid="], :root .__y_inner > .__y_item, :root .jobs-information-call-to-action + .jobs-information-call-to-action div[class$="_item"], :root AMP-AD, :root .widget-pane-section-result[data-result-ad-type], :root #center_col > #main > .dfrd > .mnr-c > .c._oc._zs, :root .trc_rbox_div .syndicatedItemUB, :root .ob_container .item-container-obpd, :root a[href^="http://centertrust.xyz/"], :root .trc_rbox_div .syndicatedItem, :root a[target="_blank"][onmousedown="this.href^='http://paid.outbrain.com/network/redir?"], :root #tads + div + .c, :root a[href^="http://www.accuserveadsystem.com/accuserve-go.php?"], :root a[href^="http://c.ketads.com/"], :root .trc_rbox .syndicatedItem, :root a[href^="http://pwrads.net/"], :root #mn div[style="position:relative"] > #center_col > div > ._dPg, :root .rhsvw[style="background-color:#fff;margin:0 0 14px;padding-bottom:1px;padding-top:1px;"], :root .ra[align="right"][width="30%"], :root .plista_widget_belowArticleRelaunch_item[data-type="pet"], :root #main-content > [style="padding:10px 0 0 0 !important;"], :root a[href^="http://www.webtrackerplus.com/"], :root .GJJKPX2N1 > .GJJKPX2M1 > .GJJKPX2P4, :root a[href^="http://ad.au.doubleclick.net/"], :root a[href^="http://record.sportsbetaffiliates.com.au/"], :root #topstuff > #tads, :root a[href^="http://www.1clickmoviedownloader.info/"], :root .mw > #rcnt > #center_col > #taw > #tvcap > .c, :root a[href^="http://affiliate.godaddy.com/"], :root #mn #center_col > div > h2.spon:first-child + ol:last-child, :root a[onmousedown^="this.href='https://paid.outbrain.com/network/redir?"][target="_blank"], :root a[href^="http://www.downloadweb.org/"], :root .plistaList > .plista_widget_underArticle_item[data-type="pet"], :root #center_col > #res > #topstuff + #search > div > #ires > #rso > #flun, :root a[href^="http://adultfriendfinder.com/p/register.cgi?pid="], :root a[href^="http://www.yourfuckbook.com/?"], :root a[href^="http://ads.sprintrade.com/"], :root .GHOFUQ5BG2 > .GHOFUQ5BF2 > .GHOFUQ5BG5, :root a[href^="http://ad-apac.doubleclick.net/"], :root .gbfwa > div[class$="_item"], :root a[href^="http://prochina.space/"], :root a[href^="http://www.uniblue.com/cm/"], :root a[data-redirect^="http://click.plista.com/pets"], :root #rhs_block > script + .c._oc._Ve.rhsvw, :root .rscontainer > .ellip, :root a[data-redirect^="this.href='http://paid.outbrain.com/network/redir?"], :root a[href^="http://stateresolver.link/"], :root .__ywl .__y_item, :root a[href^="http://www.myfreepaysite.com/sfw.php?aid"], :root a[href^="http://www.ireel.com/signup?ref"], :root #center_col > #resultStats + #tads, :root .__yinit .__y_item, :root [ad-id^="googlead"], :root a[href^="http://adlev.neodatagroup.com/"], :root .ra[align="left"][width="30%"], :root a[href^="https://trackjs.com/?utm_source"], :root AFS-AD, :root a[href^="http://server.cpmstar.com/click.aspx?poolid="], :root #cnt #center_col > #res > #topstuff > .ts, :root iframe[id^="google_ads_frame"], :root a[href^="http://www.dealcent.com/register.php?affid="], :root #cnt #center_col > #taw > #tvcap > .c._oc._Lp, :root .trc_rbox_div a[target="_blank"][href^="http://tab"], :root .GKJYXHBF2 > .GKJYXHBE2 > .GKJYXHBH5, :root #rhs_block .mod > .gws-local-hotels__booking-module, :root a[href^="http://banners.victor.com/processing/"], :root a[href*="googleme.eu"], :root .mod > ._jH + .rscontainer, :root .GFYY1SVD2 > .GFYY1SVC2 > .GFYY1SVF5, :root #rhswrapper > #rhssection[border="0"][bgcolor="#ffffff"], :root .Mpopup + #Mad > #MadZone, :root a[href^="http://www.TwinPlan.com/AF_"], :root a[href^="http://landingpagegenius.com/"], :root a[href^="http://www.streamtunerhd.com/signup?"], :root #ssmiwdiv[jsdisplay], :root div[id^="ad-div-"], :root #center_col > div[style="font-size:14px;margin-right:0;min-height:5px"] > div[style="font-size:14px;margin:0 4px;padding:1px 5px;background:#fff8e7"], :root a[href^="http://paid.outbrain.com/network/redir?"], :root #ads > .dose > .dosesingle, :root a[href^="http://easydownload4you.com/"], :root #rhs_block > #mbEnd, :root #center_col > #\5f Emc, :root a[href^="http://papi.mynativeplatform.com:80/pub2/"], :root div[id^="dfp-ad-"], :root .GB3L-QEDGY .GB3L-QEDF- > .GB3L-QEDE-, :root .rc-cta[data-target], :root a[href^="http://hd-plugins.com/download/"], :root #rhs_block > .ts[cellspacing="0"][cellpadding="0"][style="padding:0"], :root .GFYY1SVE2 > .GFYY1SVD2 > .GFYY1SVG5, :root #flowplayer > div[style="position: absolute; width: 300px; height: 275px; left: 222.5px; top: 85px; z-index: 999;"], :root a[href^="http://www.pinkvisualpad.com/?revid="], :root #center_col > #resultStats + div + #res + #tads, :root .nrelate .nr_partner, :root a[href^="http://bonusfapturbo.nmvsite.com/"], :root a[href^="http://www.sexgangsters.com/?pid="], :root a[href^="http://www.amazon.co.uk/exec/obidos/external-search?"], :root #mn div[style="position:relative"] > #center_col > ._Ak, :root a[href^="http://www.adxpansion.com"], :root div[id^="dfp-slot-"], :root .l-container > #fishtank, :root a[href*="/adrotate-out.php?"], :root a[href^="http://wgpartner.com/"], :root a[href^="http://www.greenmangaming.com/?tap_a="], :root #center_col > #resultStats + #tads + #res + #tads, :root a[href^="http://campaign.bharatmatrimony.com/cbstrack/"], :root .trc_related_container div[data-item-syndicated="true"], :root a[href^="http://t.mdn2015x1.com/"], :root .trc_rbox_border_elm .syndicatedItem, :root a[href^="http://dwn.pushtraffic.net/"], :root a[href$="/vghd.shtml"], :root #rhs_block > ol > .rhsvw > .kp-blk > .xpdopen > ._OKe > ol > ._DJe > .luhb-div, :root p[id^="div-gpt-ad-"], :root #assetsListings[style="display: block;"], :root #header + #content > #left > #rlblock_left, :root a[href*="emprestimo.eu"], :root #content > #right > .dose > .dosesingle { display: none !important; }</style></head>
<body style="overflow: auto;">
    <div id="auth">
    <div class="row row_max">
        <div class="hdr clearfix">
            <div class="a_logo"><img src="/tunnel/link.cgi/https://my.pcloud.com/img/oauth/logo.png" alt=""></div>
            <div id="logged"></div>
        </div>
        <div id="_cot"></div>
    </div>
</div>

<script id="filebrowser" type="text/x-handlebars-template">
    <div id="file_picker">
        <div id="fp_h">
            {{{file_path}}}
        </div>
        <div>
            {{#list_folders folders}} {{/list_folders}}
        </div>

        <div>
            <br />
            <br />
        </div>

    </div>
</script>

<style>
    #file_picker #fp_h {
        height: 34px;
        border-bottom: 1px solid #e5e5e5;
        background-color: #f6f9fc;
        line-height:34px;
        text-align:left;
        margin:0px;
        padding-left:10px;
        font-family: "Open Sans","lucida grande","Segoe UI",arial,verdana,"lucida sans unicode",tahoma,sans-serif;
        font-size: 13px;
        color: #3d464d;
        font-weight: normal;

        white-space: nowrap;
        overflow: hidden;
        width: 100%;
        display: block;

    }
    #file_picker .fb_select {
        cursor: pointer;
        text-align: left;
        display: inline-block;
        line-height: 37px;
        padding: 0px;
    }

    #file_picker .fb_select img { 
        margin-right: 10px;
        margin-top: -1px;
    }

    #file_picker .fb_select:hover {
        background-color: #e3f2ff;
    }

    #file_picker .fb_select span {
        line-height: 37px;
        word-wrap: break-word;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        width: 100%;
        display: block;
    }

    #file_picker .fb_select div {
        position: relative;
        margin: 0 5px;
        height: 43px;
        -webkit-border-radius: 2px;
        -moz-border-radius: 2px;
        -ms-border-radius: 2px;
        -o-border-radius: 2px;
        border-radius: 2px; 
        cursor: pointer;
    }

    #file_picker ._selectme {
        width: 20px !important;
        height: 20px !important;
        vertical-align: middle !important;
        margin-top: 8px !important;
        background-color: rgb(248,248,248);
        border-color: rgb(204,204,204);
        border-width: 1px;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px;
        border-style: solid;
        font-size: 16px;
        line-height: 40px;
    }
</style>

<script id="top_template_logged" type="text/x-handlebars-template">
    {{email}} <a href="#" onclick="app.logout();return false;">(change)</a>
</script>

<script id="entry-template" type="text/x-handlebars-template">
<div class="_cnt">
    <div class="name">
        <h3 class="light" style="font-size:30px">Connect {{name}} to your account</h3>
    </div>
    <div class="icons">
        <div class="row" style="text-align:center;margin:0 auto;width:222px">
            <div class="clearfix" >
                <div class="l1">
                    <div style="width:64px;height:64px"><img src="{{app_img}}" alt="{{name}}" /></div>
                </div>
                <div class="l1">
                    <div style="width:64px;height:64px"><img src="{{connect_img}}" alt="{{name}}" /></div>
                </div>
                <div class="l1">                            
                    <div style="width:64px;height:64px"><img src="{{pcloud_img}}" alt="{{name}}" /></div>
                </div>
            </div>  
        </div>
    </div>
    <div class="_txt"><br />{{{connect_txt}}}</div>
    {{#if user}}
        <div class="wanted_acc">{{#list_access want_access_txt}} {{/list_access}}</div>
            <div>
                {{{file_browser}}}              
            </div>
        <div class="footer_1">
        <br /><br />
        Please ensure that you trust this app before proceeding. <br />
        {{#if publisher_app}}
            This app is published by: <br /> 
            <a target="_blank" href="{{publisher_app}}">{{publisher_name}}</a>
        {{else}}
            <div style="width:100%;height:10px"></div>
            This app is published by: <b>{{publisher_name}}</b>
        {{/if}}

        </div>
        <div class="btns_f">
            <div class="row">
                <ul class="small-block-grid-2">
                    <li><a href="#" onclick="app.allow();return false;" class="bottom_icons green">Allow</a></li>
                    <li><a href="{{decline_url}}" class="bottom_icons gray">Deny</a></li>
                </ul>
            </div>
        </div>
    {{else}}
        <div class="auth_sub_head">
            <div class="row">
                <ul class="small-block-grid-2">
                    <li><a href="#" class="active" i="login_form" >Login</a></li>
                    <li><a href="#" i="reg_form">Sign up</a></li>
                </ul>
            </div>
        </div>

        <div class="login_form">
            <form action="" id="_loginform" onsubmit="app.login($(this)); return false;">

            <div id="login_errors" class="alert-box alert" style="display:none;"></div>

                <div>
                    <label>Email:</label>
                    <input type="text" name="mail" />   
                </div>
                <div>
                    <label>Password:</label>
                    <input type="password" name="password" />   
                </div>
                <div>
                    <div class="clearfix">
                        <div style="float:left"> <input type="checkbox" name="remember" /> Remember me </div>
                    </div>
                </div>
            </form>

            <div class="btns_f">
                <div class="row">
                    <ul class="small-block-grid-1">
                        <li><a href="#" onclick="app.login($('#_loginform')); return false;" class="bottom_icons green">Login</a></li>
                    </ul>
                </div>
            </div>  
        </div>

        <div class="reg_form" id="_signup" onsubmit="app.signup( $(this) );">

            <div id="reg_errors" class="alert-box alert" style="display:none;"></div>

            <form action="">
                <div>
                    <label>Email:</label>
                    <input type="text" name="mail" />   
                </div>
                <div>
                    <label>Password:</label>
                    <input type="password" name="password" />   
                </div>

                <div>
                    <label>Re-type Password:</label>
                    <input type="password" name="password2" />  
                </div>

                <div>
                    <div class="clearfix">
                        <div style="float:left"> <input type="checkbox" name="remember" /> </div>
                        <div class="left" style="margin-left: 10px; font-size: 12px;">
                        I accept pCloud <a href="/tunnel/link.cgi/https://www.pcloud.com/terms_and_conditions.html" target="_blank">Terms and Conditions</a>, <a href="/tunnel/link.cgi/https://www.pcloud.com/privacy_policy.html" target="_blank">Privacy policy</a> and <a href="/tunnel/link.cgi/https://www.pcloud.com/int_pr_policy.html" target="_blank">Intellectual Property Policy</a>
                    </div>
                    </div>
                </div>

            </form>

            <div class="btns_f">
                <div class="row">
                    <ul class="small-block-grid-1">
                        <li><a href="#" class="bottom_icons green" onclick="app.signup( $('#_signup') );return false;">Sign Up</a></li>
                    </ul>
                </div>
            </div>  
        </div>
    {{/if}}
</div>
</script>

<script>
var init;
//var user = user;
var api_url = '//api.pcloud.com/';
var app = {
    'logout' : function(){
        user = false;
        init();
    },
    'login' : function(el){
        $('#login_errors').hide();
        var mail = el.find('[name="mail"]').val();
        var pas = el.find('[name="password"]').val();

        var queryDict = {}
        location.search.substr(1).split("&").forEach(function(item) {queryDict[item.split("=")[0]] = item.split("=")[1]})

        if(mail != "" || pas != "") {
            $.post(api_url+'userinfo',{'username':mail,'password':pas,'getauth':'1'},function(data){
                if(data.error != undefined) { // handle error
                    $('#login_errors').html(data.error).show();
                }else {
                    app.loading();
                    var url = "//"+window.location.host + "/oauth2/authorize?client_id="+application.client_id+"&response_type="+response_type + '&auth='+data.auth;
                    if(queryDict['redirect_uri'] != undefined) {
                        url += '&redirect_uri=' + queryDict['redirect_uri'];
                    }
                    if (queryDict['request_id'] != undefined) {
                        url += '&request_id=' + queryDict['request_id'];
                    }                   
                    window.location = url;
                }
            },'json');
        }else {

        }
    },
    'allow' :function(){
        app.loading();

        var queryDict = {}
        location.search.substr(1).split("&").forEach(function(item) {queryDict[item.split("=")[0]] = item.split("=")[1]})

        var url =  '/oauth2/authorize_submit?client_id='+application.client_id+"&response_type="+response_type+"&redirect_uri="+redirect_uri+"&sign="+sign+"&folderid="+app.selected_folder;
        if (state != "" && state != false) {
            url += '&state='+state;
        }
        if (redirect_uri == false && queryDict['redirect_uri'] != undefined) {
            url += '&redirect_uri=' + queryDict['redirect_uri'];
        }
        if (request_id) {
            url += '&request_id=' + request_id;
        } 
        if (queryDict['auth'] != undefined) {
            url += '&auth=' + queryDict['auth'];
        }
        window.location = url;
    },
    'signup' : function(el){
        app.loading();

        var queryDict = {};
        location.search.substr(1).split("&").forEach(function(item) {queryDict[item.split("=")[0]] = item.split("=")[1]});

        var email = el.find('[name="mail"]').val();
        var password = el.find('[name="password"]').val();
        var password2 = el.find('[name="password2"]').val();
        var accept = el.find('[name="remember"]');
        var er = $("#reg_errors");
        var ref = 1634;

        function prepRef(done) {
            $.getJSON('//partner.pcloud.com/oauth', { appid: application.app_id }, function(ret) {
                if (!ret.result && ret.ref) {
                    ref = ret.ref;
                }

                done();
            });
        }

        if(!app.validateEmail(email)) {
            er.html('Email is not valid').show();   
        }else if(password != password2) {
            er.html('Password is not equal').show();    
        }else if(accept.is(':checked') == false){
            er.html('You must accept terms and conditions!').show();    
        }else {
            er.hide();

            prepRef(function() {
                $.getJSON(api_url+'register',{'termsaccepted':'yes','mail':email,'password':password,'referer':'oauth', ref: ref},function(data){
                    if(data.error != undefined) {
                        er.html(data.error).show(); 
                    }else {
                        $.post(api_url+'userinfo',{'username':email,'password':password,'getauth':'1'},function(data){
                            var url = "//"+window.location.host + "/oauth2/authorize?client_id="+application.client_id+"&response_type="+response_type + '&auth='+data.auth;
                            if(queryDict['redirect_uri'] != undefined) {
                                url += '&redirect_uri=' + queryDict['redirect_uri'];
                            }
                            if (queryDict['request_id'] != undefined) {
                                url += '&request_id=' + queryDict['request_id'];
                            }
                            window.location = url;
                        });
                    }
                });
            });
        }
    },
    'validateEmail' : 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);
    }, 
    'loading' : function(){
    },
    'fb_breadcrumbs' : [],
    'selected_folder': '0'
};
$(function(){
    function htmlentities(a){return $("<div>").text(a).html()};
    $('html, body').css('height','auto');
    Handlebars.registerHelper('list_access', function(items) {
        var out = "<ul>";
        $.each(items,function(k,v){
            if(v.type == "text") {
                out += "<li> • "+v.txt+"</li>";
            }else if(v.type == "select") {
                out += "<li> - SELECT "+v.txt+"</li>";
            }
        });
        out += "</ul>";
        return out;
    });

    Handlebars.registerHelper('list_folders', function(items) {
        var out = "<ul style='margin:10px 0px;' class='medium-block-grid-2 small-block-grid-1'>";
        var icon = "https://my.pcloud.com/img/icons/20/folder.png";
        $.each(items,function(k,v){
            out += "<li title='"+htmlentities(v.name)+"' folder_id='"+v.folderid+"'  class='fb_select' folder_id='"+v.folderid+"'>";
                out += '<div class="clearfix"> <div> <span> <input class="_selectme" onchange="return false;" name="new-fbselected"  type="radio"  /> '+htmlentities(v.name)+' </span> </div> </div>';
            out += "</li>";
        });
        out += "</ul>";
        return out;
    });

    function searchTree(element, matchingTitle){
        var result = null;
        var is_top = false;
        $.each(element,function(k,v){
            if(v.folderid == matchingTitle) { result = v.subfolders; is_top = false; }
            else if(result == null && v.subfolders != undefined) {
                result = searchTree(v.subfolders,matchingTitle);
                if(result != null) { is_top = true; }
            }
        });
        if(is_top == false && result == null) {
            result = [];
        }
        return result;
    }

    change_folder = function(folder_id) {
        if(folder_id == 0) {
            init();
        }else {

            var has_el = null;
            $.each(app.fb_breadcrumbs,function(k,v){
                if(v.folderid == folder_id) {
                    has_el = k; 
                }
            });
            if(has_el != null) {
                app.fb_breadcrumbs = app.fb_breadcrumbs.slice(0,has_el);            
            } 
            app.fb_breadcrumbs.push(search_name(folders,folder_id));
            init(searchTree(folders,folder_id),folder_id);
        }
    };
    fb = function(folders,top,selected_id){
        var t2 = Handlebars.compile($('#filebrowser').html());
        var context = {
            'folders' : folders,
            'file_path' : make_breadcrumbs(folders,top,selected_id)
        };
        return t2(context);
    }

    search_name = function(folders,id){
        var result = null;
        var previous = [];  
        var tmp;    
        $.each(folders,function(k,v){
            if(v.folderid == id) { result = v; }
            else if(result == null && v.subfolders != undefined) {
                result = search_name(v.subfolders,id);
            }
        });
        return result;
    }

    make_breadcrumbs = function(folder,top,selected_folder_id){
        var elms = [];
        var out = "";

        out += 'Select folder from your <a onclick="change_folder(\'0\');return false;" href="#">pCloud</a>';
        var broy = app.fb_breadcrumbs.length;
        $.each(app.fb_breadcrumbs,function(k,v) {
            if(k == parseInt(broy-1)) {
                out += ' / <span>'+htmlentities(v.name)+'</span>';
            }else {
                out += ' / <a onclick="change_folder('+v.folderid+');return false;" href="#">'+htmlentities(v.name)+'</a>';
            }

        });

        return out;
    }

    init = function(selected_sub,selected_folder_id) {
        var t = Handlebars.compile($('#entry-template').html());

        var context = {
            "name": application.name,
            "connect_img":"/img/oauth/connect_with.jpg",
            'pcloud_img':"/img/oauth/pcloud.jpg",
            "app_img": '//'+application.icon.hosts[0] +application.icon.path,
            "connect_txt": '<b>' + htmlentities(application.name) + "</b> app wants to have access to your pCloud account. ",
            "want_access_txt" : [],
            "publisher_app" : application.website,
            "filebrowser" : {},
            "publisher_name" : ($.trim(application.publisher) == "" ) ? application.name : application.publisher,
            "user" : user,
            "decline_url" : ( redirect_uri == false  ) ? '//pcloud.com' : redirect_uri,
            'file_browser' : false
        };

        if(user != false && user.email != undefined) {
            context['connect_txt'] += 'This app requests access for:';
        } 

        switch (application.folderaccess) {
            case 'full':
                if(application.writeaccess == true) {
                    context.want_access_txt.push({"type":"text","txt":"Full pCloud access - we get full access to all the files and folders in a user's pCloud."});
                } else {
                    context.want_access_txt.push({"type":"text","txt":"pCloud access - we get 'Read only' access to all the files and folders in a user's pCloud."});
                }
                break;
            case 'private':
                context.want_access_txt.push({"type":"text","txt":"Specific app folder - A dedicated folder named after your app is created within the Apps folder of a user's pCloud."});
                break;
            case 'pick':
                if(application.writeaccess == true) {
                    context.want_access_txt.push({"type":"text","txt":"Selected folder by user - we get full access to the selected folder."});
                }else {
                    context.want_access_txt.push({"type":"text","txt":"Selected folder by user - we get 'Read only' access to the selected folder."});
                }
            default:
        }

        if(application.folderaccess == 'pick' && folders != false) {
            if(selected_sub != undefined) {
                context.file_browser = fb(selected_sub,true,selected_folder_id);
            } else {
                app.fb_breadcrumbs = [];
                context.file_browser = fb(folders);
            }
        }

        $("#_cot").html(t(context));

        var c = $('#_cot');
        c.find('.login_form').show();
        c.find('.reg_form').hide();
        c.find('.auth_sub_head a').off().click(function(e){
            e.preventDefault();
            c.find('.auth_sub_head a').removeClass('active');
            $(this).addClass('active');

            c.find('.login_form').hide();
            c.find('.reg_form').hide();
            c.find('.'+$(this).attr('i')).show();
        });

        c.find("input").on("keyup", function(e) {
            if (e.keyCode === 13) {
                $(".bottom_icons.green").trigger("click");
            }
        });

        if(user.email != undefined ) {
            var s = $('#top_template_logged').html();
            var t = Handlebars.compile(s);

            $('#logged').html(t(user)).show();
        }else {
            $('#logged').html('').hide();
        }

        $('#file_picker .fb_select span').off().click(function(e){
            if( $(e.toElement).hasClass('_selectme') ) {
        </script></body></html>

But I see no login form elements. Seems like the "handlebars" might be the problem

I had to manually go to link and authorise then copy redirect back to http tunnel to complete auth. But pCloud component works. Don't know why it was giving that trouble.

ncw commented 6 years ago

@karneaud follow one of the procedures in the remote setup guide - you'll find that much easier!

tungquyen commented 6 years ago

Rclone connects to Pcloud very well. Perfect product. Thank you very much

mopedfahrer commented 6 years ago

@ncw Sycned a few 100 GBs and worked flawlessly so far. Thanks a lot!

crakerjac commented 6 years ago

Syncing from ACD to pClould working great! Only thing I noticed is that if I try transferring a file that will put me over my quota, the transfer just sorta goes on forever. The transfer rate goes to 0Kbps but rClone doesn't stop. Not a big deal and probably pCloud API related, but worth noting.

ncw commented 6 years ago

@crakerjac thanks for testing :-) Does pCloud give a particular error when this happens? You might be able to see with -vv - if not, I'm not sure I can do much about it with rclone.

crakerjac commented 6 years ago

@ncw -vv gives me this response, but rClone doesn't appear to abort... 2017/10/10 13:32:21 DEBUG : pacer: Rate limited, sleeping for 56.312692966s (8 consecutive low level retries) 2017/10/10 13:32:21 DEBUG : pacer: low level retry 8/10 (error HTTP code 400: "400 Bad Request": response body: "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>InvalidArgument</Code><Message>Only one auth mechanism allowed; only the X-Amz-Algorithm query parameter, Signature query string parameter or the Authorization header should be specified</Message><ArgumentName>Authorization</ArgumentName><ArgumentValue>REDACTED</ArgumentValue><RequestId>REDACTED</RequestId><HostId>REDACTED</HostId></Error>")

https://i.imgur.com/PIFkbSX.png

ncw commented 6 years ago

@crakerjac - that error has been fixed (it was a problem in acd). You'll find the fix in the latest beta.

I'm going to declare pcloud done now - please make new issues if you find problems!