| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 | 
							- <?php
 
- /**
 
-  * Process Twitter-style @usernames and URLs before filtering XSS.
 
-  */
 
- class twitter_views_handler_field_xss extends views_handler_field {
 
-   function option_definition() {
 
-     $conf = TwitterConf::instance();
 
-     $options = parent::option_definition();
 
-     $options['link_urls'] = array('default' => TRUE);
 
-     $options['link_usernames'] = array('default' => TRUE);
 
-     $options['link_hashtags'] = array('default' => FALSE);
 
-     $options['hashtags_url'] = array('default' => 'http://' . $conf->get('search') . '/search?q=%23');
 
-     return $options;
 
-   }
 
-   function options_form(&$form, &$form_state) {
 
-     parent::options_form($form, $form_state);
 
-     $form['link_urls'] = array(
 
-       '#title' => t('Link urls to their destinations'),
 
-       '#type' => 'checkbox',
 
-       '#default_value' => !empty($this->options['link_urls']),
 
-     );
 
-     $form['link_usernames'] = array(
 
-       '#title' => t('Link Twitter @usernames to their Twitter.com urls'),
 
-       '#type' => 'checkbox',
 
-       '#default_value' => !empty($this->options['link_usernames']),
 
-     );
 
-     $form['link_hashtags'] = array(
 
-       '#title' => t('Link Twitter #hashtags to another url'),
 
-       '#type' => 'checkbox',
 
-       '#default_value' => !empty($this->options['link_hashtags']),
 
-     );
 
-     $form['hashtags_url'] = array(
 
-       '#type' => 'textfield',
 
-       '#default_value' => $this->options['hashtags_url'],
 
-       '#process' => array('ctools_dependent_process'),
 
-       '#dependency' => array('edit-options-link-hashtags' => array(TRUE)),
 
-     );
 
-   }
 
-   function render($values) {
 
-     $value = $values->{$this->field_alias};
 
-     if (!empty($this->options['link_urls'])) {
 
-       $filter = new stdClass;
 
-       $filter->settings = array(
 
-         'filter_url_length' => 496,
 
-       );
 
-      $value = _filter_url($value, $filter);
 
-     }
 
-     if (!empty($this->options['link_usernames'])) {
 
-       $conf = TwitterConf::instance();
 
-       $value = _twitter_filter_text($value, '@', 'http://' . $conf->get('host') . '/'); 
 
-     } if (!empty($this->options['link_hashtags']) && valid_url($this->options['hashtags_url'])) {
 
-       $value = _twitter_filter_text($value, '#', url($this->options['hashtags_url']));
 
-     }
 
-     return filter_xss($value);
 
-   }
 
- }
 
- /**
 
-  * Field handler to provide simple renderer that turns a URL into a clickable link.
 
-  */
 
- class twitter_views_handler_field_profile_image extends views_handler_field {
 
-   function render($values) {
 
-     $value = $values->{$this->field_alias};
 
-     return theme('image', array('path' => $value));
 
-   }
 
- }
 
 
  |