diff --git a/transform.css b/transform.css
index b276957..6ac5f7e 100644
--- a/transform.css
+++ b/transform.css
@@ -1,5 +1,3 @@
-/* $Id: transform.css,v 1.2 2011/11/06 23:13:25 dhavyd Exp $ */
-
 form.jqtransformdone .form-item input.error,
 form.jqtransformdone .form-item textarea.error {
     border: 1px solid red;
@@ -56,7 +54,7 @@ span.jqTransformRadioWrapper {
 }
 
 /* Textarea */
- 
+
 /* Fixes */
 textarea {
   resize: none;
@@ -96,10 +94,7 @@ table.jqTransformTextarea textarea {
 .jqTransformSafari .jqTransformInputInner div input {
   padding: 0;
 }
-table.jqTransformTextarea td#jqTransformTextarea-mm.jqTransformSafariTextarea textarea {  
+table.jqTransformTextarea td#jqTransformTextarea-mm.jqTransformSafariTextarea textarea {
   margin: 10px;
   padding: 0;
 }
-
-
-
diff --git a/transform.info b/transform.info
index 3175846..9279759 100644
--- a/transform.info
+++ b/transform.info
@@ -1,5 +1,5 @@
-; $Id: transform.info,v 1.0 2011/11/03 22:29:02 dhavyd Exp $
 name = Transform
-description = Transform forms.
-core = 6.x
-
+description = Transform forms
+core = 7.x
+dependencies[] = libraries
+configure = admin/config/user-interface/transform
diff --git a/transform.js b/transform.js
index 4d42e9c..9e94e24 100644
--- a/transform.js
+++ b/transform.js
@@ -1,84 +1,100 @@
-(function($) {
-  Drupal.behaviors.transform = function (context) {
-    // Apply transformation if "Enable tranformation" is set
-    if (Drupal.settings.transform.enabled) {
-      class_id = Drupal.settings.transform.class_id;
-      form_list = Drupal.settings.transform.form_list;
-      exclude_class_id = Drupal.settings.transform.exclude_class_id;
-      exclude_form_list = Drupal.settings.transform.exclude_form_list;
-      select_width = parseInt(Drupal.settings.transform.select_width);
-      textfield_width = parseInt(Drupal.settings.transform.textfield_width);
-      
-      // Prefix (class or ID) for form that will get transformed
-      if (class_id == 0) {
-        prefix = '.';
-      }
-      else if (class_id == 1) {
-        prefix = '#';
-      }
-      // Prefix (class or ID) for form that won't get transformed
-      if (exclude_class_id == 0) {
-        prefix_exclude = '.';
-      }
-      else if (exclude_class_id == 1) {
-        prefix_exclude = '#';
-      }
+(function ($) {
 
-      // Generate an array with all forms to transform
-      form_list = $.trim(form_list);
-      if (exclude_form_list.length > 0) {
-        forms = form_list.split('\r\n');
-      }
-      else {
-        forms = false;
-      }
-      // Generate an array with all forms to exclude from  being transformed
-      exclude_form_list = $.trim(exclude_form_list);
-      if (exclude_form_list.length > 0) {
-        forms_exclude = exclude_form_list.split('\r\n');
-      }
-      else {
-        forms_exclude = false;  
-      }
+// Store our function as a property of Drupal.behaviors.
+Drupal.behaviors.transform = {
+  attach: function (context, settings) {
+    // Apply transformation if 'Enable tranformation' is set.
+    if (!settings.transform.enabled) {
+      return;
+    }
+    var transform = settings.transform;
+
+    var prefix, prefix_exclude, forms, forms_exclude;
+    var class_id = transform.class_id;
+    var form_list = transform.form_list;
+    var exclude_class_id = transform.exclude_class_id;
+    var exclude_form_list = transform.exclude_form_list;
+    var select_width = parseInt(transform.select_width);
+    var textfield_width = parseInt(transform.textfield_width);
 
-      // Exclude forms
-      if (forms_exclude) {
-        $.each(forms_exclude, function(index, value){
-          form = "form" + prefix_exclude + value;
-          $(form).addClass("jqtransformdone");
-        });
-      }
-      // Transform forms
-      if (forms) {
-        $.each(forms, function(index, value){
-          form = "form" + prefix + value;
-          // Transform the form, if it is not excluded
-          $(form).jqTransform();
-          // Set a min-width for the selectboxes
-          if (select_width) {
-            $(form + " .jqTransformSelectWrapper").css('min-width', select_width);
-            $(form + " .jqTransformSelectWrapper span").css('min-width', (select_width - 31));
-            $(form + " .jqTransformSelectWrapper ul").css('min-width', (select_width - 2));
-          }
-          // Set a min-width for the textfields
-          if (textfield_width) {
-            $(form + " .jqTransformInputWrapper").css('width', textfield_width);
-            $(form + " .jqTransformInputWrapper input").css('width', (textfield_width - 10));
-          }
-          
-          // Prevents gripper from be applied to the textarea
-          $(form + " textarea").addClass('textarea-processed');
-        });
-        
-      }
-      else {
-        // Transform all forms, but not those that is excluded
-        $("form").jqTransform();
-      }
+    // Prefix (class or ID) for form that will get transformed
+    if (class_id == 0) {
+      prefix = '.';
+    }
+    else if (class_id == 1) {
+      prefix = '#';
+    }
+    // Prefix (class or ID) for form that won't get transformed
+    if (exclude_class_id == 0) {
+      prefix_exclude = '.';
+    }
+    else if (exclude_class_id == 1) {
+      prefix_exclude = '#';
     }
-  }
-})(jQuery);
 
+    // Generate an array with all forms to transform
+    var form_list = $.trim(form_list);
+    if (exclude_form_list.length > 0) {
+      forms = form_list.split('\r\n');
+    }
+    else {
+      forms = false;
+    }
+    // Generate an array with all forms to exclude from  being transformed
+    var exclude_form_list = $.trim(exclude_form_list);
+    if (exclude_form_list.length > 0) {
+      forms_exclude = exclude_form_list.split('\r\n');
+    }
+    else {
+      forms_exclude = false;
+    }
+
+    // Exclude forms.
+    if (forms_exclude) {
+      $.each(forms_exclude, function (index, value){
+        $('form' + prefix_exclude + value).addClass('jqtransformdone');
+      });
+    }
+    // Transform forms.
+    if (forms) {
+      $.each(forms, function (index, value){
+        var $form = $('form' + prefix + value);
+        // Transform the form, if it is not excluded.
+        $form.jqTransform();
+        // Set a min-width for the selectboxes.
+        if (select_width) {
+          $form
+            .find('.jqTransformSelectWrapper')
+              .css('min-width', select_width)
+              .find('span')
+                .css('min-width', (select_width - 31))
+              .end()
+              .find('ul')
+                .css('min-width', (select_width - 2))
+              .end()
+            .end();
+        }
+        // Set a min-width for the textfields
+        if (textfield_width) {
+          $form
+            .find('.jqTransformInputWrapper')
+              .css('width', textfield_width)
+              .find('input')
+                .css('width', (textfield_width - 10))
+              .end()
+            .end();
+        }
 
+        // Prevents gripper from be applied to the textarea.
+        $form.find('textarea').addClass('textarea-processed');
+      });
 
+    }
+    else {
+      // Transform all forms, but not those that is excluded.
+      $('form').jqTransform();
+    }
+  }
+};
 
+}(jQuery));
diff --git a/transform.module b/transform.module
index a1d33ca..a60591b 100644
--- a/transform.module
+++ b/transform.module
@@ -1,17 +1,22 @@
 <?php
-// $Id: transform.module,v 1.0 2011/11/03 22:32:10 dhavyd Exp $
 
 /**
  * @file
- * Implementation of module hooks.
+ * @todo.
  */
 
+/**
+ * Implements hook_preprocess_HOOK() for page.tpl.php.
+ */
+function transform_preprocess_page(&$vars) {
+  drupal_add_js('var $ = jQuery;', 'inline');
+}
 
 /**
- * Implementation of hook_init().
+ * Implements hook_init().
  */
 function transform_init() {
-  // Get JavaScript file  
+  // Get JavaScript file
   $plugin_js = transform_get_plugin('jquery.jqtransform.js');
   if ($plugin_js) {
     drupal_add_js($plugin_js);
@@ -37,19 +42,17 @@ function transform_init() {
      'select_width' => variable_get('transform_select_width', 0),
      'textfield_width' => variable_get('transform_textfield_width', 0),
     ),
-  ), 'setting');
+  ), array('type' => 'setting', 'scope' => JS_DEFAULT));
   drupal_add_js(drupal_get_path('module', 'transform') . '/transform.js');
   drupal_add_css(drupal_get_path('module', 'transform') . '/transform.css');
 }
 
-
 /**
- * Implementation of hook_menu().
+ * Implements hook_menu().
  */
 function transform_menu() {
   $items = array();
-  // Admin  
-  $items['admin/settings/transform'] = array(
+  $items['admin/config/user-interface/transform'] = array(
     'title' => 'Transform',
     'description' => 'Configure Transform settings.',
     'page callback' => 'drupal_get_form',
@@ -57,7 +60,7 @@ function transform_menu() {
     'access arguments' => array('administer site settings'),
     'type' => MENU_NORMAL_ITEM,
   );
-  
+
   return $items;
 }
 
@@ -80,7 +83,7 @@ function transform_get_plugin($file) {
 /**
  * Menu callback with the administration form.
  */
-function transform_admin_general_form() {
+function transform_admin_general_form($form, &$form_state) {
   $form = array();
   $path = drupal_get_path('module', 'transform');
   $form['transform_enabled'] = array(
@@ -104,7 +107,7 @@ function transform_admin_general_form() {
     '#options' => array(
       t('By form class'),
       t('By form id'),
-      ),
+    ),
   );
   $form['transform_form']['transform_form_list'] = array(
     '#type' => 'textarea',
@@ -112,7 +115,7 @@ function transform_admin_general_form() {
     '#default_value' => variable_get('transform_form_list', ''),
     '#disabled' => FALSE,
     '#description' => t('Forms to apply jqTransform to. Ex: <code>myform</code>. One class or id per row. Leave it empty to apply to all forms.'),
-    '#attributes' => array('class' => 'transform-form-class-list'),
+    '#attributes' => array('class' => array('transform-form-class-list')),
     '#size' => 20,
   );
   $form['transform_form_exclude'] = array(
@@ -129,7 +132,7 @@ function transform_admin_general_form() {
     '#options' => array(
       t('By form class'),
       t('By form id'),
-      ),
+    ),
   );
   $form['transform_form_exclude']['transform_exclude_form_list'] = array(
     '#type' => 'textarea',
@@ -137,10 +140,10 @@ function transform_admin_general_form() {
     '#default_value' => variable_get('transform_exclude_form_list', ''),
     '#disabled' => FALSE,
     '#description' => t('Forms that should NOT be transformed. Input classes or ids.'),
-    '#attributes' => array('class' => 'transform-form-exclude-class-list'),
+    '#attributes' => array('class' => array('transform-form-exclude-class-list')),
     '#size' => 20,
   );
-  
+
   $form['transform_min_width'] = array(
     '#type' => 'fieldset',
     '#title' => t('Form element settings'),
@@ -164,13 +167,6 @@ function transform_admin_general_form() {
     '#maxlength' => 5,
     '#size' => 6,
   );
-  
+
   return system_settings_form($form);
 }
-
-
-
-
-
-
-
