diff --git a/link.module b/link.module index 16a5fad..09f7e09 100644 --- a/link.module +++ b/link.module @@ -69,7 +69,7 @@ function link_field_instance_settings_form($field, $instance) { $form = array( '#element_validate' => array('link_field_settings_form_validate'), ); - + $form['validate_url'] = array( '#type' => 'checkbox', '#title' => t('Validate URL'), @@ -312,7 +312,10 @@ function _link_load($field, $item, $instance) { unserialize($item['attributes']) : $instance['settings']['attributes'];*/ if (isset($item['attributes'])) { - return unserialize($item['attributes']); + if (!is_array($item['attributes'])) { + $item['attributes'] = unserialize($item['attributes']); + } + return $item['attributes']; } else if (isset($instance['settings']['attributes'])) { return $instance['settings']['attributes']; @@ -748,12 +751,12 @@ function theme_link_formatter_link_default($vars) { $link_options = $vars['element']; unset($link_options['element']['title']); unset($link_options['element']['url']); - + // Issue #1199806 by ss81: Fixes fatal error when the link URl is equal to page URL if (isset($link_options['attributes']['class'])) { $link_options['attributes']['class'] = array($link_options['attributes']['class']); } - + // Display a normal link if both title and URL are available. if (!empty($vars['element']['title']) && !empty($vars['element']['url'])) { return l($vars['element']['title'], $vars['element']['url'], $link_options); @@ -827,10 +830,10 @@ function theme_link_formatter_link_separate($vars) { unset($link_options['element']['title']); unset($link_options['element']['url']); $title = empty($vars['element']['title']) ? '' : check_plain($vars['element']['title']); - - /** + + /** * @TODO static html markup looks not very elegant to me (who takes it off?) - * needs smarter output solution and an optional title/url seperator (digidog) + * needs smarter output solution and an optional title/url seperator (digidog) */ $output = ''; $output .= '