From 2be49b22b299e1139511c893eb787e1f4b89dc9f Mon Sep 17 00:00:00 2001
From: Bob Vincent <bobvin@pillars.net>
Date: Sun, 10 Apr 2011 09:54:58 -0400
Subject: [PATCH] Issue #1095278 by pillarsdotnet: add filter support.

---
 filter_transliteration/README.html                 |    3 +
 filter_transliteration/README.markdown             |    9 +++
 filter_transliteration/README.txt                  |   13 ++++
 filter_transliteration/filter_transliteration.info |    5 ++
 .../filter_transliteration.module                  |   61 ++++++++++++++++++++
 5 files changed, 91 insertions(+), 0 deletions(-)
 create mode 100644 filter_transliteration/README.html
 create mode 100644 filter_transliteration/README.markdown
 create mode 100644 filter_transliteration/README.txt
 create mode 100644 filter_transliteration/filter_transliteration.info
 create mode 100644 filter_transliteration/filter_transliteration.module

diff --git a/filter_transliteration/README.html b/filter_transliteration/README.html
new file mode 100644
index 0000000000000000000000000000000000000000..ab23b7dfdf2f5cf7009a08d80a5bc4a552c8d6ea
--- /dev/null
+++ b/filter_transliteration/README.html
@@ -0,0 +1,3 @@
+<h1><a href="http://drupal.org/project/filter_transliteration">Filter transliteration</a></h1>
+<p>Provides a <a href="http://drupal.org/node/213156">text format input filter</a> for the <a href="http://drupal.org/project/transliteration">Transliteration module</a>.</p>
+<p>Also available as a <a href="http://drupal.org/node/1095278">patch</a>.</p>
diff --git a/filter_transliteration/README.markdown b/filter_transliteration/README.markdown
new file mode 100644
index 0000000000000000000000000000000000000000..d6c5ade00bc388e04a1b434f7452aed336d8a579
--- /dev/null
+++ b/filter_transliteration/README.markdown
@@ -0,0 +1,9 @@
+# [Filter transliteration](http://drupal.org/project/filter_transliteration)
+
+Provides a
+[text format input filter](http://drupal.org/node/213156)
+for the
+[Transliteration module](http://drupal.org/project/transliteration).
+
+Also available as a
+[patch](http://drupal.org/node/1095278).
\ No newline at end of file
diff --git a/filter_transliteration/README.txt b/filter_transliteration/README.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e99095e61427665611d5812a8f7bc0b3f75a3901
--- /dev/null
+++ b/filter_transliteration/README.txt
@@ -0,0 +1,13 @@
+                           [1]Filter transliteration
+
+   Provides a [2]text format input filter for the [3]Transliteration
+   module.
+
+   Also available as a [4]patch.
+
+References
+
+   1. http://drupal.org/project/filter_transliteration
+   2. http://drupal.org/node/213156
+   3. http://drupal.org/project/transliteration
+   4. http://drupal.org/node/1095278
diff --git a/filter_transliteration/filter_transliteration.info b/filter_transliteration/filter_transliteration.info
new file mode 100644
index 0000000000000000000000000000000000000000..8c348c7d1af506ccd05e80ed8c358118f1822bdd
--- /dev/null
+++ b/filter_transliteration/filter_transliteration.info
@@ -0,0 +1,5 @@
+name = Filter Transliteration
+description = Provides a text format filter for converting non-latin text to US-ASCII.
+package = Input filters
+core = 7.x
+dependencies[] = transliteration
diff --git a/filter_transliteration/filter_transliteration.module b/filter_transliteration/filter_transliteration.module
new file mode 100644
index 0000000000000000000000000000000000000000..0ff2373905fc26feeb1616c28976fd139acd18f3
--- /dev/null
+++ b/filter_transliteration/filter_transliteration.module
@@ -0,0 +1,61 @@
+<?php
+
+/**
+ * @file
+ * Provides a text format filter for transliteration.
+ *
+ * @see http://drupal.org/project/transliteration
+ */
+
+/**
+ * Implements hook_filter_info().
+ */
+function filter_transliteration_filter_info() {
+  return array(
+    'filter_transliteration' => array(
+      'title' => t('Transliteration'),
+      'description' => t('Convert non-latin text to US-ASCII equivalents.'),
+      'default settings' => array('unknown' => '?'),
+      'process callback' => '_filter_transliteration_process',
+      'settings callback' => '_filter_transliteration_settings',
+      'tips callback' => 'filter_transliteration_tips',
+    ),
+  );
+}
+
+/**
+ * Implements hook_filter_FILTER_process().
+ * @see filter_transliteration_filter_info()
+ */
+function _filter_transliteration_process($text, $filter, $format, $langcode, $cache, $cache_id) {
+  return transliteration_get($text, $filter->settings['unknown'], $langcode);
+}
+
+/**
+ * Implements hook_filter_FILTER_settings().
+ * @see filter_transliteration_filter_info()
+ */
+function _filter_transliteration_settings($form, &$form_state, $filter, $format, $defaults, $filters) {
+  $filter->settings += $defaults;
+  return array(
+    'unknown' => array(
+      '#type' => 'textfield',
+      '#title' => t('Unknown'),
+      '#title_display' => 'invisible',
+      '#field_prefix' => t('Replace non-ASCII characters with') . ' ',
+      '#field_suffix' => ' ' . t('if there is no suitable ASCII equivalent.'),
+      '#size' => 2,
+      '#maxlength' => 5,
+      '#attributes' => array('style' => 'width: 1em'),
+      '#default_value' => $filter->settings['unknown'],
+    )
+  );
+}
+
+/**
+ * Implements hook_filter_FILTER_tips().
+ * @see filter_transliteration_filter_info()
+ */
+function filter_transliteration_tips($filter, $format, $long) {
+  return t('Non-latin text will be converted to US-ASCII equivalents.');
+}
-- 
1.7.1

