Apps/<your Dropbox app>/, změny v Overleafu se odesílají do Dropboxu a změny provedené v Dropboxu se vracejí do Overleafu.
Nastavení synchronizace s Dropboxem
Vytvořte aplikaci v Dropbox App Console, přihlášeni účtem Dropbox, který bude aplikaci vlastnit:- Klikněte na Create app a poté vyplňte stránku:
- 1. Choose an API: zvolte Scoped access.
- 2. Choose the type of access you need: zvolte App folder, nikoli Full Dropbox. Overleaf synchronizuje pouze uvnitř složky aplikace.
- 3. Name your app: zadejte název, např.
Overleaf. Musí být v rámci Dropboxu jedinečný. Projekty každého uživatele se objeví v jeho Dropboxu vApps/<name of your app>/a tento název je níže uvedená hodnotaDROPBOX_APP_NAME. - Klikněte na Create app. Aplikace se otevře na kartě Settings.
- Na kartě Permissions v části Files and folders zaškrtněte
files.metadata.write,files.content.writeafiles.content.read. Oprávněníaccount_info.readafiles.metadata.readse zaškrtnou spolu s nimi a nelze je odškrtnout. Žádná další oprávnění nezaškrtávejte. - Klikněte na Submit v liště v dolní části karty Permissions. Bez kliknutí na Submit se oprávnění neuloží a Dropbox odmítne synchronizovat soubory uživatelům, kteří svůj účet propojí.

Dropbox App Console: oprávnění, která je třeba zaškrtnout a uložit pomocí Submit
- Na kartě Settings v části OAuth 2 zadejte do pole Redirect URIs hodnotu
${OVERLEAF_SITE_URL}/user/dropbox/oauth/callbacka poté klikněte na Add. Pouhé napsání URI nestačí: uloží se teprve ve chvíli, kdy se zobrazí v seznamu nad polem.

Dropbox App Console: zadejte redirect URI a poté klikněte na Add
- Na kartě Settings v části Webhooks zadejte do pole Webhook URIs hodnotu
${OVERLEAF_SITE_URL}/dropbox/webhooka poté rovněž klikněte na Add. Dropbox ji okamžitě zavolá, aby ji ověřil, takže Overleaf už musí běžet s níže uvedeným nastavením a musí být dostupný z internetu (viz Webhook). Po úspěšném ověření se zobrazí stav Enabled.
DROPBOX_SYNC_PROXY_URL=http://10.0.0.1:10808. Musí jít o standardní dopřednou HTTP/HTTPS proxy a nesmí používat 127.0.0.1.
Vytvoření databázových indexů
Spusťte to jednou, ještě než uživatelé propojí své účty Dropbox. Indexy, které synchronizace s Dropboxem používá, se nevytvářejí automaticky, takže bez nich každé vyhledávání při synchronizaci prochází celou kolekci. Uživatelé Toolkitu: spusťtebin/mongo. Uživatelé Docker Compose: spusťte docker compose exec mongo mongosh sharelatex. Poté vložte:
dropboxEntities z tools/migrations: 20220825160708_recreate_dropboxEntities kolekci zahodí, čímž smaže stav synchronizace všech uživatelů.Webhook
Dropbox informuje Overleaf o změnách v Dropboxu pomocí webhooku, takže se v Overleafu projeví během několika sekund. Webhook směřuje na adresu vašeho webu,${OVERLEAF_SITE_URL}/dropbox/webhook, a není potřeba žádný další port, ale Dropbox se k němu musí dostat z internetu. Když jej přidáte v App Console, Dropbox jej okamžitě ověří.
Bez webhooku, například na serveru, ke kterému se Dropbox nedostane, se změny v Overleafu do Dropboxu stále odesílají, ale změny v Dropboxu se vrátí pouze tehdy, když uživatel klikne na sync this project now v dialogu Dropboxu v editoru.
Jak synchronizace funguje
- Propojení: když uživatel propojí svůj účet Dropbox, projekty, které vlastní, se odešlou do Dropboxu. Projekty s ním sdílené se v Dropboxu objeví při své další změně.
- Z Overleafu do Dropboxu: nové soubory, přejmenování, přesuny, smazání a přejmenování projektů se odesílají okamžitě. Úpravy v editoru se odešlou, jakmile je Overleaf uloží do svého úložiště, tedy několik minut poté, co všichni projekt opustí. Chcete-li je odeslat dříve, klikněte na sync this project now v dialogu Dropboxu v editoru (jednou za minutu).
- Z Dropboxu do Overleafu: nové a změněné soubory, nové složky a smazání ve složce projektu se v projektu použijí. Nová složka v nejvyšší úrovni složky aplikace se stane novým projektem. Smazání složky projektu v Dropboxu označí projekt v Overleafu jako smazaný.
- Konflikty: když se soubor změní na obou místech současně, platí poslední změna. Dropbox může druhou verzi ponechat jako conflicted copy.
- Spolupracovníci: spolupracovníci, kteří propojí svůj Dropbox, získají projekty, které s nimi byly sdíleny. Čtenáři s oprávněním pouze ke čtení a recenzenti projekt získají, ale jejich změny v Dropboxu se do Overleafu nesynchronizují.
- Ignorované soubory: soubory, které Overleaf nesynchronizuje, jako výstupy sestavení (
.aux,.log, …),.DS_Storenebo virtuální prostředí Pythonu, zůstávají pouze v Dropboxu.
Q&A
Proč uživatel nemůže propojit svůj účet Dropbox?
Proč uživatel nemůže propojit svůj účet Dropbox?
- Složka v Dropboxu, kterou Overleaf ještě nezná, se s projektem páruje podle názvu, takže uživatel, jehož projekty mají stejný název, je vyzván, aby je nejprve přejmenoval. Názvy se porovnávají bez ohledu na velikost písmen a započítávají se i archivované projekty a projekty v koši.
- Účet Dropbox lze propojit pouze s jedním účtem Overleaf.
Proč bylo propojení účtu Dropbox zrušeno?
Proč bylo propojení účtu Dropbox zrušeno?
Mohu v Dropboxu přejmenovat složku projektu?
Mohu v Dropboxu přejmenovat složku projektu?
Proč jsou některé složky projektů očíslované, například „Thesis (1)“?
Proč jsou některé složky projektů očíslované, například „Thesis (1)“?
Co se stane, když v Dropboxu smažu složku projektu?
Co se stane, když v Dropboxu smažu složku projektu?
- Pokud žádný jiný projekt nemá název této složky, projekt se v Overleafu označí jako smazaný. Jeho soubory a historie zůstanou zachovány.
- Pokud má tento název více projektů, Overleaf nedokáže určit, ke kterému z nich složka patřila. Zruší propojení účtu Dropbox a zobrazí oznámení s výzvou k přejmenování projektů. Než budete mazat jejich složky v Dropboxu, dejte projektům odlišné názvy.
- Očíslovaná složka, například „Thesis (1)“, neodpovídá názvu žádného projektu, takže její smazání projekt v Overleafu nezmění. Chcete-li projekt znovu odeslat do Dropboxu, klikněte na sync this project now v dialogu Dropboxu v editoru.
Co se stane v Dropboxu, když smažu projekt v Overleafu?
Co se stane v Dropboxu, když smažu projekt v Overleafu?
Co se stane se změnami v Dropboxu, když je projekt archivovaný nebo v koši?
Co se stane se změnami v Dropboxu, když je projekt archivovaný nebo v koši?
Proč odkaz na Dropbox v editoru otevírá domovskou stránku Dropboxu?
Proč odkaz na Dropbox v editoru otevírá domovskou stránku Dropboxu?
Apps/<app folder>/<project> na dropbox.com, stejně jako v Overleaf Cloud. Když Dropbox zobrazuje svou složku Apps pod přeloženým názvem, například 应用 v čínštině, odkaz složku nenajde a Dropbox místo toho otevře svou domovskou stránku. Otevřete složku projektu z přeložené složky Apps v Dropboxu.Proč v Dropboxu chybí některé soubory projektu?
Proč v Dropboxu chybí některé soubory projektu?

