diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..723ef36 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..0f85423 --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# Tumblr2Shaarli + +This project is just about saving your tumblr into a shaarli instance (new or used) + +## Why? + +Because I don't use Tumblr anymore, but used it a lot to bookmark and wanted to save it, self-hosted style. + +I don't want to be dependant of an app anymore. + +And Tumblr's API is easy to use, so, why not? + +## How? + +See the doc in [english](docs/EN.md) + +Voir la documentation en [français](docs/FR.md) + diff --git a/docs/EN.md b/docs/EN.md new file mode 100644 index 0000000..6d94d77 --- /dev/null +++ b/docs/EN.md @@ -0,0 +1,33 @@ +# Install and use this script + + 1. Copy the content of `src` into your shaarli instance (at its root with index.php) + 2. Copy `tumblr.ini.dev` to `tumblr.ini` + 3. Fill the `tumblr.ini`'s variables + +```ini +tumblr = xxx.tumblr.com # your tumblr URL (can be another domain if you paid for it) +api_key = xxx # your tumblr's API key (see below) +private = true # if links should be private or public +shaarli_dir = # leave blank if you followed this tutorial, else, the path to shaarli +``` + 4. Check if you got write right on the folder containing `import.php` + 5. Launch : via browser or via command line + +### Tumblr API key + +You need to register an app in tumblr : + + 1. Log in your tumblr account + 2. Go to https://www.tumblr.com/oauth/apps + 3. Click `Register an application` + 4. Fill all mandatory fields + `website` (even if it's not marked as mandatory, trust me, it is) + 5. You got it ! **OAuth Consumer Key** ! + 6. Tips : you can find it again in https://www.tumblr.com/settings/apps + + +### Limitations + +Tumblr's API can *only* retrieve 20 × 250 posts (I did the math, it's 5000) + +This script does not resume import, so if you got more than 5k posts, it won't work. + diff --git a/docs/FR.md b/docs/FR.md new file mode 100644 index 0000000..e06ca07 --- /dev/null +++ b/docs/FR.md @@ -0,0 +1,32 @@ +# Installer et utiliser ce script + + 1. Copier le contenu de `src` dans votre instance Shaarli (à sa racine où il y a `index.php`) + 2. Copier `tumblr.ini.dev` vers `tumblr.ini` + 3. Remplir les variables de `tumblr.ini` + +```ini +tumblr = xxx.tumblr.com # l'URL de votre tumblr (ça peut être un autre domaine si vous avez payé) +api_key = xxx # votre clef d'API tumblr (voir ci-dessous) +private = true # indique si les liens importés seront privés ou publiques +shaarli_dir = # laisser vide si vous avez suivi ce tuto, sinon, le chemin vers votre instance shaarli +``` + 4. Vérifier si vous avez les droits en écriture sur la base (datastore.php) et le dossier ou se trouve `import.php` + 5. Lancer le script via votre navigateur ou par ligne de commande + +### La clef d'API Tumblr + +Vous avez besoin d'enrigistrer une app Tumblr : + + 1. Connectez vous sur votre compte tumblr + 2. Allez sur https://www.tumblr.com/oauth/apps + 3. Cliquez sur `Enregistrer une application` + 4. Remplissez tous les champs obligatoires + `website` (même si c'est pas marqué obligatoire, ça l'est) + 5. Vous l'avez votre clef ! **Clé du client (OAuth)** ! + 6. Astuce : vous pouvez la retrouver ici : https://www.tumblr.com/settings/apps + + +### Limitations + +L'API de Tumblr ne peut récupérer *que* 20 × 250 posts (J'ai calculé, ça fait 5000) + +Ce script ne permet pas de *compléter* un import depuis un post précis, donc si vous avez plus de 5k posts, ça ne fonctionnera pas (enfin, vous n'aurez pas tout) diff --git a/composer.json b/src/composer.json similarity index 100% rename from composer.json rename to src/composer.json diff --git a/import.php b/src/import.php similarity index 100% rename from import.php rename to src/import.php diff --git a/tumblr.ini.dev b/src/tumblr.ini.dev similarity index 100% rename from tumblr.ini.dev rename to src/tumblr.ini.dev diff --git a/vendor/autoload.php b/src/vendor/autoload.php similarity index 100% rename from vendor/autoload.php rename to src/vendor/autoload.php diff --git a/src/vendor/bin/html-to-markdown b/src/vendor/bin/html-to-markdown new file mode 100644 index 0000000..6f8d9d2 --- /dev/null +++ b/src/vendor/bin/html-to-markdown @@ -0,0 +1 @@ +../league/html-to-markdown/bin/html-to-markdown \ No newline at end of file diff --git a/vendor/composer/ClassLoader.php b/src/vendor/composer/ClassLoader.php similarity index 100% rename from vendor/composer/ClassLoader.php rename to src/vendor/composer/ClassLoader.php diff --git a/vendor/composer/LICENSE b/src/vendor/composer/LICENSE similarity index 100% rename from vendor/composer/LICENSE rename to src/vendor/composer/LICENSE diff --git a/vendor/composer/autoload_classmap.php b/src/vendor/composer/autoload_classmap.php similarity index 100% rename from vendor/composer/autoload_classmap.php rename to src/vendor/composer/autoload_classmap.php diff --git a/vendor/composer/autoload_namespaces.php b/src/vendor/composer/autoload_namespaces.php similarity index 100% rename from vendor/composer/autoload_namespaces.php rename to src/vendor/composer/autoload_namespaces.php diff --git a/vendor/composer/autoload_psr4.php b/src/vendor/composer/autoload_psr4.php similarity index 100% rename from vendor/composer/autoload_psr4.php rename to src/vendor/composer/autoload_psr4.php diff --git a/vendor/composer/autoload_real.php b/src/vendor/composer/autoload_real.php similarity index 100% rename from vendor/composer/autoload_real.php rename to src/vendor/composer/autoload_real.php diff --git a/vendor/composer/installed.json b/src/vendor/composer/installed.json similarity index 100% rename from vendor/composer/installed.json rename to src/vendor/composer/installed.json diff --git a/vendor/league/html-to-markdown/CHANGELOG.md b/src/vendor/league/html-to-markdown/CHANGELOG.md similarity index 100% rename from vendor/league/html-to-markdown/CHANGELOG.md rename to src/vendor/league/html-to-markdown/CHANGELOG.md diff --git a/vendor/league/html-to-markdown/CONDUCT.md b/src/vendor/league/html-to-markdown/CONDUCT.md similarity index 100% rename from vendor/league/html-to-markdown/CONDUCT.md rename to src/vendor/league/html-to-markdown/CONDUCT.md diff --git a/vendor/league/html-to-markdown/LICENSE b/src/vendor/league/html-to-markdown/LICENSE similarity index 100% rename from vendor/league/html-to-markdown/LICENSE rename to src/vendor/league/html-to-markdown/LICENSE diff --git a/vendor/league/html-to-markdown/README.md b/src/vendor/league/html-to-markdown/README.md similarity index 100% rename from vendor/league/html-to-markdown/README.md rename to src/vendor/league/html-to-markdown/README.md diff --git a/vendor/league/html-to-markdown/bin/html-to-markdown b/src/vendor/league/html-to-markdown/bin/html-to-markdown old mode 100755 new mode 100644 similarity index 100% rename from vendor/league/html-to-markdown/bin/html-to-markdown rename to src/vendor/league/html-to-markdown/bin/html-to-markdown diff --git a/vendor/league/html-to-markdown/composer.json b/src/vendor/league/html-to-markdown/composer.json similarity index 100% rename from vendor/league/html-to-markdown/composer.json rename to src/vendor/league/html-to-markdown/composer.json diff --git a/vendor/league/html-to-markdown/src/Configuration.php b/src/vendor/league/html-to-markdown/src/Configuration.php similarity index 100% rename from vendor/league/html-to-markdown/src/Configuration.php rename to src/vendor/league/html-to-markdown/src/Configuration.php diff --git a/vendor/league/html-to-markdown/src/ConfigurationAwareInterface.php b/src/vendor/league/html-to-markdown/src/ConfigurationAwareInterface.php similarity index 100% rename from vendor/league/html-to-markdown/src/ConfigurationAwareInterface.php rename to src/vendor/league/html-to-markdown/src/ConfigurationAwareInterface.php diff --git a/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php b/src/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/CommentConverter.php b/src/vendor/league/html-to-markdown/src/Converter/CommentConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/CommentConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/CommentConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/ConverterInterface.php b/src/vendor/league/html-to-markdown/src/Converter/ConverterInterface.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/ConverterInterface.php rename to src/vendor/league/html-to-markdown/src/Converter/ConverterInterface.php diff --git a/vendor/league/html-to-markdown/src/Converter/DefaultConverter.php b/src/vendor/league/html-to-markdown/src/Converter/DefaultConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/DefaultConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/DefaultConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/DivConverter.php b/src/vendor/league/html-to-markdown/src/Converter/DivConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/DivConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/DivConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php b/src/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/HardBreakConverter.php b/src/vendor/league/html-to-markdown/src/Converter/HardBreakConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/HardBreakConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/HardBreakConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/HeaderConverter.php b/src/vendor/league/html-to-markdown/src/Converter/HeaderConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/HeaderConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/HeaderConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/HorizontalRuleConverter.php b/src/vendor/league/html-to-markdown/src/Converter/HorizontalRuleConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/HorizontalRuleConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/HorizontalRuleConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/ImageConverter.php b/src/vendor/league/html-to-markdown/src/Converter/ImageConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/ImageConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/ImageConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/LinkConverter.php b/src/vendor/league/html-to-markdown/src/Converter/LinkConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/LinkConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/LinkConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/ListBlockConverter.php b/src/vendor/league/html-to-markdown/src/Converter/ListBlockConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/ListBlockConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/ListBlockConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/ListItemConverter.php b/src/vendor/league/html-to-markdown/src/Converter/ListItemConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/ListItemConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/ListItemConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/ParagraphConverter.php b/src/vendor/league/html-to-markdown/src/Converter/ParagraphConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/ParagraphConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/ParagraphConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/PreformattedConverter.php b/src/vendor/league/html-to-markdown/src/Converter/PreformattedConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/PreformattedConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/PreformattedConverter.php diff --git a/vendor/league/html-to-markdown/src/Converter/TextConverter.php b/src/vendor/league/html-to-markdown/src/Converter/TextConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/Converter/TextConverter.php rename to src/vendor/league/html-to-markdown/src/Converter/TextConverter.php diff --git a/vendor/league/html-to-markdown/src/Element.php b/src/vendor/league/html-to-markdown/src/Element.php similarity index 100% rename from vendor/league/html-to-markdown/src/Element.php rename to src/vendor/league/html-to-markdown/src/Element.php diff --git a/vendor/league/html-to-markdown/src/ElementInterface.php b/src/vendor/league/html-to-markdown/src/ElementInterface.php similarity index 100% rename from vendor/league/html-to-markdown/src/ElementInterface.php rename to src/vendor/league/html-to-markdown/src/ElementInterface.php diff --git a/vendor/league/html-to-markdown/src/Environment.php b/src/vendor/league/html-to-markdown/src/Environment.php similarity index 100% rename from vendor/league/html-to-markdown/src/Environment.php rename to src/vendor/league/html-to-markdown/src/Environment.php diff --git a/vendor/league/html-to-markdown/src/HtmlConverter.php b/src/vendor/league/html-to-markdown/src/HtmlConverter.php similarity index 100% rename from vendor/league/html-to-markdown/src/HtmlConverter.php rename to src/vendor/league/html-to-markdown/src/HtmlConverter.php diff --git a/vendor/bin/html-to-markdown b/vendor/bin/html-to-markdown deleted file mode 120000 index 6f8d9d2..0000000 --- a/vendor/bin/html-to-markdown +++ /dev/null @@ -1 +0,0 @@ -../league/html-to-markdown/bin/html-to-markdown \ No newline at end of file