diff --git beautytips.admin.inc beautytips.admin.inc
index 2881c59..a8992d6 100644
--- beautytips.admin.inc
+++ beautytips.admin.inc
@@ -78,6 +78,7 @@
     '#prefix' => '<div id="beautytips-site-wide-popup"><div id="beauty-text"><p>Hover here to see the current site-wide beautytips</p></div></div>',
   );
   $custom_style = variable_get('beautytips_custom_style', NULL);
+
   foreach ($style_options as $option => $description) {
     $form['beautytips_default_styles']['custom_styles']['bt-options-box-' . $option] = array(
       '#title' => $option,
diff --git beautytips.module beautytips.module
index 8bfa2e6..bbfcaf1 100644
--- beautytips.module
+++ beautytips.module
@@ -41,6 +41,33 @@
 }
 
 /**
+ * Implements hook_library
+ */
+function beautytips_library() {
+  $path = drupal_get_path('module', 'beautytips');
+
+  $javascript =  array(
+    $path . '/js/jquery.bt.min.js' => array(),
+    $path . '/js/beautytips.js' => array(),
+  );
+
+  //for IE add this
+  $expath = $path . '/other_libs/excanvas_r3';
+  if (count(file_scan_directory($expath, '/excanvas.compiled.js/', $options = array('recurse' => FALSE)))) {
+    $jsPath =  array($expath . '/excanvas.compiled.js' => array());
+    array_merge($javascript, $jsPath);
+  }
+
+  $libraries['beautytips'] = array(
+    'title' => 'BeautyTips',
+    'website' => 'http://plugins.jquery.com/project/bt',
+    'version' => '0.9',
+    'js' => $javascript,
+  );
+  return $libraries;
+}
+
+/**
  * This is the API.  Call this function to add beautytips.
  *
  * @param array $options - See README.txt for details
@@ -83,16 +110,7 @@
   
   // Add beautytips jQuery plugin
   if (!$added) {
-    $path = drupal_get_path('module', 'beautytips');
-    
-    //for IE add this
-    $expath = $path . '/other_libs/excanvas_r3';
-    if (count(file_scan_directory($expath, '/excanvas.compiled.js/', $options = array('recurse' => FALSE)))) {
-      drupal_add_js($expath . '/excanvas.compiled.js');
-    }
-    drupal_add_js($path . '/js/jquery.bt.min.js');
-    drupal_add_js($path . '/js/beautytips.js');
-
+    drupal_add_library('beautytips', 'beautytips');
     drupal_add_js($settings, 'setting');
     $added = TRUE;
   }
@@ -216,4 +234,3 @@
   );
   return $styles;
 }
-
diff --git beautytips_manager.info beautytips_manager.info
index 46eda04..1519e7d 100755
--- beautytips_manager.info
+++ beautytips_manager.info
@@ -3,4 +3,4 @@
 description = Adds graphical manager for creating custom beautytips.
 package = User interface
 dependencies[] = beautytips
-core = 6.x
+core = 7.x
diff --git beautytips_manager.install beautytips_manager.install
index 873f856..d556e48 100755
--- beautytips_manager.install
+++ beautytips_manager.install
@@ -7,20 +7,6 @@
  */
 
 /**
- * Implementation of hook_install().
- */
-function beautytips_manager_install() {
-  drupal_install_schema('beautytips_manager');
-}
-
-/**
- * Implementation of hook_uninstall().
- */
-function beautytips_manager_uninstall() {
-  drupal_uninstall_schema('beautytips_manager');
-}
-
-/**
  * Implementation of hook_schema().
  */
 function beautytips_manager_schema() {
@@ -45,7 +31,6 @@
       ),
       'content' => array(
         'type' => 'text',
-        'default' => '',
         'description' => t('The content that will be displayed. Depends on content type.'),
       ),
       'trigger_on' => array(
@@ -96,7 +81,6 @@
       'pages' => array(
         'type' => 'text',
         'not null' => TRUE,
-        'default' => '',
         'description' => t('Contains a list of paths on which to include/exclude the beautytip, depending on "visibility" setting.'),
       ),
     ),
diff --git beautytips_manager.module beautytips_manager.module
index 6ad7c2e..b76d180 100755
--- beautytips_manager.module
+++ beautytips_manager.module
@@ -9,59 +9,59 @@
  * Implementation of hook_menu().
  */
 function beautytips_manager_menu() {
-  $items['admin/settings/beautytips/custom-tips'] = array(
+  $items['admin/config/user-interface/beautytips/custom-tips'] = array(
     'title' => 'BeautyTips Custom-Tips',
     'page callback' => 'beautytips_manager_tips_manager_page',
     'access arguments' => array('administer site configuration'),
     'type' => MENU_LOCAL_TASK,
   );
-  $items['admin/settings/beautytips/custom-tips/%/edit'] = array(
+  $items['admin/config/user-interface/beautytips/custom-tips/%/edit'] = array(
     'title' => 'BeautyTips Custom-Tip Edit',
     'page callback' => 'drupal_get_form',
-    'page arguments' => array('beautytips_manager_admin', 4),
+    'page arguments' => array('beautytips_manager_admin', 5),
     'access arguments' => array('administer site configuration'),
-    'type' => MENU_LOCAL_TASK,
+    'type' => MENU_VISIBLE_IN_BREADCRUMB,
   );
-  $items['admin/settings/beautytips/custom-tips/%/delete'] = array(
+  $items['admin/config/user-interface/beautytips/custom-tips/%/delete'] = array(
     'title' => 'BeautyTips Custom-Tip Delete',
     'page callback' => 'drupal_get_form',
-    'page arguments' => array('beautytips_manager_delete_confirm_form', 4),
+    'page arguments' => array('beautytips_manager_delete_confirm_form', 5),
     'access arguments' => array('administer site configuration'),
-    'type' => MENU_LOCAL_TASK,
+    'type' => MENU_VISIBLE_IN_BREADCRUMB,
   );
-  $items['admin/settings/beautytips/custom-tips/add'] = array(
+  $items['admin/config/user-interface/beautytips/custom-tips/add'] = array(
     'title' => 'BeautyTips Custom-Tip Add',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('beautytips_manager_admin'),
     'access arguments' => array('administer site configuration'),
-    'type' => MENU_LOCAL_TASK,
+    'type' => MENU_LOCAL_ACTION,
   );
-  $items['admin/settings/beautytips/custom-styles'] = array(
+  $items['admin/config/user-interface/beautytips/custom-styles'] = array(
     'title' => 'BeautyTips Custom Styles',
     'page callback' => 'beautytips_manager_styles_manager_page',
     'access arguments' => array('administer site configuration'),
     'type' => MENU_LOCAL_TASK,
   );
-  $items['admin/settings/beautytips/custom-styles/%/edit'] = array(
+  $items['admin/config/user-interface/beautytips/custom-styles/%/edit'] = array(
     'title' => 'BeautyTips Custom Style Edit',
     'page callback' => 'drupal_get_form',
-    'page arguments' => array('beautytips_manager_custom_styles_form', 4),
+    'page arguments' => array('beautytips_manager_custom_styles_form', 5),
     'access arguments' => array('administer site configuration'),
-    'type' => MENU_LOCAL_TASK,
+    'type' => MENU_VISIBLE_IN_BREADCRUMB,
   );
-  $items['admin/settings/beautytips/custom-styles/%/delete'] = array(
+  $items['admin/config/user-interface/beautytips/custom-styles/%/delete'] = array(
     'title' => 'BeautyTips Manager Delete',
     'page callback' => 'drupal_get_form',
-    'page arguments' => array('beautytips_manager_delete_confirm_form', 4),
+    'page arguments' => array('beautytips_manager_delete_confirm_form', 5),
     'access arguments' => array('administer site configuration'),
-    'type' => MENU_LOCAL_TASK,
+    'type' => MENU_VISIBLE_IN_BREADCRUMB,
   );
-  $items['admin/settings/beautytips/custom-styles/add'] = array(
+  $items['admin/config/user-interface/beautytips/custom-styles/add'] = array(
     'title' => 'BeautyTips Custom Style Add',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('beautytips_manager_custom_styles_form'),
     'access arguments' => array('administer site configuration'),
-    'type' => MENU_LOCAL_TASK,
+    'type' => MENU_LOCAL_ACTION,
   );
   return $items;
 }
@@ -118,7 +118,6 @@
   $empty = '';
   $header = array(t('Element'), t('Style'), t('Visibility'), t('Pages'), t('operations'));
   $tips = beautytips_manager_get_custom_tips();
-  $link = l(t('Add New Custom Beautytip'), 'admin/settings/beautytips/custom-tips/add');
   if (count($tips)) {
     $visibility = array(t('Show on every page except the listed pages.'), t('Show on only the listed pages.'));
     foreach ($tips as $tip) {
@@ -128,14 +127,14 @@
       $rows[$tip->id]['style'] = $tip->style;
       $rows[$tip->id]['visibility'] = $visibility[$tip->visibility];
       $rows[$tip->id]['pages'] = $pages;
-      $rows[$tip->id]['edit'] = l(t('edit'), "admin/settings/beautytips/custom-tips/$tip->id/edit");
-      $rows[$tip->id]['delete'] = l(t('delete'), "admin/settings/beautytips/custom-tips/$tip->id/delete");
+      $rows[$tip->id]['edit'] = l(t('edit'), "admin/config/user-interface/beautytips/custom-tips/$tip->id/edit");
+      $rows[$tip->id]['delete'] = l(t('delete'), "admin/config/user-interface/beautytips/custom-tips/$tip->id/delete");
     }
   }
   else {
     $empty = t('There are no custom beautytips yet.');
   }
-  return $link . theme('table', $header, $rows) . $empty;
+  return theme('table', $header, $rows) . $empty;
 }
 
 /**
@@ -146,7 +145,6 @@
   $empty = '';
   $header = array(t('Name'), t('Example'), t('operations'));
   $styles = beautytips_manager_get_custom_styles();
-  $link = l(t('Add New Custom Beautytip Style'), 'admin/settings/beautytips/custom-styles/add');
   if (count($styles)) {
     $visibility = array(t('Show on every page except the listed pages.'), t('Show on only the listed pages.'));
     foreach ($styles as $style) {
@@ -154,8 +152,8 @@
       unset($style->name);
       $rows[$style->id]['name'] = $name;
       $rows[$style->id]['testing'] = '<span class="bt-style-' . $name . '">' . t('Test Me!') . '</span>';
-      $rows[$style->id]['edit'] = l(t('edit'), "admin/settings/beautytips/custom-styles/$style->id/edit");
-      $rows[$style->id]['delete'] = l(t('delete'), "admin/settings/beautytips/custom-styles/$style->id/delete");
+      $rows[$style->id]['edit'] = l(t('edit'), "admin/config/user-interface/beautytips/custom-styles/$style->id/edit");
+      $rows[$style->id]['delete'] = l(t('delete'), "admin/config/user-interface/beautytips/custom-styles/$style->id/delete");
 
       $options = array(
         'cssSelect' => 'td .bt-style-' . $name,
@@ -170,17 +168,16 @@
   else {
     $empty = t('There are no custom beautytip styles yet.');
   }
-  return $link . theme('table', $header, $rows) . $empty;
+  return theme('table', $header, $rows) . $empty;
 }
 
 /**
  * Form for configuring custom beautytips.
  */
-function beautytips_manager_admin(&$form_state, $id = NULL) {
+function beautytips_manager_admin($form, &$form_state, $id = NULL) {
   drupal_add_css(drupal_get_path('module', 'beautytips') . '/css/beautytips.css');
   $tip = beautytips_manager_get_custom_tip($id);
   $form = array();
-    
   $form['tip'] = array(
     '#type' => 'markup',
     '#value' => '',
@@ -354,7 +351,7 @@
   
   beautytips_manager_save_custom_tip($tip);
   cache_clear_all('beautytips:beautytips-ui-custom-tips', 'cache');
-  $form_state['redirect'] = 'admin/settings/beautytips/manager';
+  $form_state['redirect'] = 'admin/config/user-interface/beautytips/manager';
 }
 
 /**
@@ -367,7 +364,7 @@
     '#value' => $id,
   );
   $question = t('Are you sure you want to the beautytip applied to element %element?', array('%element' => $tip->element));
-  return confirm_form($form, $question, 'admin/settings/beautytips/manager');
+  return confirm_form($form, $question, 'admin/config/user-interface/beautytips/manager');
 }
 
 /**
@@ -376,7 +373,7 @@
 function beautytips_manager_delete_confirm_form_submit($form, &$form_state) {
   beautytips_manager_delete_custom_tip($form_state['values']['id']);
   cache_clear_all('beautytips:beautytips-ui-custom-tips', 'cache');
-  $form_state['redirect'] = 'admin/settings/beautytips/manager';
+  $form_state['redirect'] = 'admin/config/user-interface/beautytips/manager';
 }
 
 
@@ -437,29 +434,27 @@
  * Retrieve all custom beautytips.
  */
 function beautytips_manager_get_custom_tips() {
+  /**
   $cache = cache_get('beautytips:beautytips-ui-custom-tips');
   if (!$cache) {
-    $tips = array();
-    $results = db_query("SELECT * FROM {beautytips_custom_tips}");
-    while ($tip = db_fetch_object($results)) {
-      $tips[] = $tip;
-    }
+    $tips = ");
     cache_set('beautytips:beautytips-ui-custom-tips', $tips);
   }
   else {
     $tips = $cache->data;
   }
-  return $tips;
+  */
+  return db_query("SELECT * FROM {beautytips_custom_tips}");
 }
 
 /**
  * Retrieves a single custom beautytip.
  */
 function beautytips_manager_get_custom_tip($id) {
-  $sql = "SELECT *
-          FROM {beautytips_custom_tips}
-          WHERE id = %d"; 
-  return db_fetch_object(db_query($sql, $id));
+  return db_query('SELECT * FROM {beautytips_custom_tips} WHERE id = :id',
+          array(
+            ':id' => $id,
+          ));
 }
 
 /**
@@ -506,7 +501,10 @@
 /**
  * Form for editing a custom beautytip style.
  */
-function beautytips_manager_custom_styles_form(&$form_state, $id = NULL) {
+function beautytips_manager_custom_styles_form($form, &$form_state, $id = NULL) {
   if (!is_null($id)) {
     $style = beautytips_manager_get_custom_style($id);
     $style_map = beautytips_manager_style_mapping();
@@ -550,7 +548,7 @@
       '#title' => $option,
       '#description' => $description,
       '#type' => 'textfield',
-      '#default_value' => (isset($style->{$style_options[$option]}) && !is_null($style->{$style_options[$option]})) ? $style->{$style_options[$option]} : '',
+      '#default_value' => (isset($style_options) && isset($style->{$style_options[$option]}) && !is_null($style->{$style_options[$option]})) ? $style->{$style_options[$option]} : '',
     );
   }
   $form['custom_styles']['shadow'] = array(
@@ -579,7 +577,7 @@
     $form['custom_styles']['css-styles'][$option] = array(
       '#title' => $option,
       '#type' => 'textfield',
-      '#default_value' => (isset($style->{$css_style_options[$option]}) && !is_null($style->{$css_style_options[$option]})) ? $style->{$css_style_options[$option]} : '',
+      '#default_value' => (isset($css_style_options) && isset($style->{$css_style_options[$option]}) && !is_null($style->{$css_style_options[$option]})) ? $style->{$css_style_options[$option]} : '',
     );
   }
 
@@ -637,7 +635,7 @@
   }
   beautytips_manager_save_custom_style($style);
   cache_clear_all('beautytips:beautytips-styles', 'cache');
-  $form_state['redirect'] = 'admin/settings/beautytips/custom-styles';
+  $form_state['redirect'] = 'admin/config/user-interface/beautytips/custom-styles';
 } 
 
 /**
@@ -694,22 +692,15 @@
  * Get all defined custom styles.
  */
 function beautytips_manager_get_custom_styles() {
-  $styles = array();
-  $results = db_query("SELECT * FROM {beautytips_custom_styles}");
-  while ($style = db_fetch_object($results)) {
-    $styles[] = $style;
-  }
-  return $styles;
+  return db_query('SELECT * FROM {beautytips_custom_styles}');
 }
 
 /**
  * Grab a custom style from the database.
  */
 function beautytips_manager_get_custom_style($id) {
-  $sql = "SELECT *
-          FROM {beautytips_custom_styles}
-          WHERE id = %d"; 
-  return db_fetch_object(db_query($sql, $id));
+  $result = db_query("SELECT * FROM {beautytips_custom_styles} WHERE id = :id", array(':id' => $id));
+  return $result;
 }
 
 /**
@@ -746,4 +737,3 @@
   }
   return $styles;
 }
-
