From 82a7052cab2042d19d2ac461ee714de75b7120ba Mon Sep 17 00:00:00 2001
From: Dave Hall <dave.hall@skwashd.com>
Date: Tue, 18 Aug 2015 00:59:18 +1000
Subject: [PATCH] Switch to composer for dependency management

---
 README.md         |  5 +++--
 composer.json     | 15 +++++++++++++++
 parsedown.info    |  2 +-
 parsedown.install | 21 ---------------------
 parsedown.module  | 42 ++----------------------------------------
 5 files changed, 21 insertions(+), 64 deletions(-)
 create mode 100644 composer.json

diff --git a/README.md b/README.md
index 200aad4..3ab7188 100644
--- a/README.md
+++ b/README.md
@@ -5,5 +5,6 @@ This module uses Parsedown.php to make pretty HTML out of your Markdown code.
 
 ### Installation
 
-Please download [Parsedown.php](https://github.com/erusev/parsedown) and place
-it into this ```./parsedown/Parsedown.php```
+* Install [composer_manager module](https://drupal.org/project/composer_manager)
+* Enable the parsedown module
+* [Update dependencies with composer_manager](https://www.drupal.org/node/2405805) (if required)
diff --git a/composer.json b/composer.json
new file mode 100644
index 0000000..2d30537
--- /dev/null
+++ b/composer.json
@@ -0,0 +1,15 @@
+{
+    "name": "drupal/parsedown",
+    "description": "Parsedown module for Drupal",
+    "type": "drupal-module",
+    "require": {
+        "erusev/parsedown": "^1.5"
+    },
+    "license": "gplv2",
+    "authors": [
+        {
+            "name": "Michael Scharl",
+            "email": "michael.scharl@me.com"
+        }
+    ]
+}
diff --git a/parsedown.info b/parsedown.info
index a5ab75b..ffded8d 100644
--- a/parsedown.info
+++ b/parsedown.info
@@ -3,4 +3,4 @@ description = Use Parsedown to create your HTML Markup
 
 core = 7.x
 
-dependencies[] = libraries
+dependencies[] = composer_manager
diff --git a/parsedown.install b/parsedown.install
index 0924a1e..78e81d0 100644
--- a/parsedown.install
+++ b/parsedown.install
@@ -27,24 +27,3 @@ function parsedown_install() {
 
   filter_format_save($format);
 }
-
-
-/**
- * Implements hook_requirements().
- */
-function parsedown_requirements($phase) {
-  $parsedown_library = libraries_detect('parsedown');
-  $t = get_t();
-
-  switch ($phase) {
-    case 'runtime':
-      return array(
-        'parsedown' => array(
-          'title' => 'Parsedown',
-          'value' => $parsedown_library['installed'] ? $t('Installed') : $t('Not found'),
-          'description' => $parsedown_library['installed'] ? NULL : $t('Parsedown library should be placed in <em>sites/all/libraries/parsedown/Parsedown.php</em>'),
-          'severity' => $parsedown_library['installed'] ? REQUIREMENT_OK : REQUIREMENT_WARNING,
-        ),
-      );
-  }
-}
diff --git a/parsedown.module b/parsedown.module
index e534d22..1276157 100644
--- a/parsedown.module
+++ b/parsedown.module
@@ -71,44 +71,6 @@ function parsedown_filter_tips($filter, $format, $long) {
  *   The filtered text.
  */
 function parsedown_filter_process($text, $filter, $format, $langcode, $cache, $cache_id) {
-  if (_parsedown_class_exists()) {
-    $parsedown = new Parsedown();
-    return $parsedown->text($text);
-  }
-  else {
-    return $text;
-  }
-}
-
-/**
- * Check if the class file exists.
- *
- * @return bool
- *   TRUE if the file exists.
- */
-function _parsedown_class_exists() {
-  $parsedown_library = libraries_load('parsedown');
-
-  return $parsedown_library['loaded'];
-}
-
-/**
- * Implements hook_libraries_info().
- */
-function parsedown_libraries_info() {
-  return array(
-    'parsedown' => array(
-      'name' => 'Parsedown',
-      'vendor url' => 'http://parsedown.org/',
-      'download url' => 'https://github.com/erusev/parsedown/archive/master.zip',
-      'files' => array(
-        'php' => array('Parsedown.php'),
-      ),
-      'version arguments' => array(
-        'file' => 'Parsedown.php',
-        'pattern' => '@\# (Parsedown)@',
-        'lines' => 6,
-      ),
-    ),
-  );
+  $parsedown = new Parsedown();
+  return $parsedown->text($text);
 }
-- 
2.5.0

