/**
 * Returns the AddThis integration code snippet.
 *
 * See: http://www.addthis.com
 *
 * @package    Reditype
 * @subpackage helper
 * @author     Piers Warmers <*****@*****.**>
 * @param      array $options
 * @return     string
 */
function get_addthis_badge($options = null)
{
    $string = '';
    $username = sfConfig::get('app_rt_social_networking_service_username');
    $option_string = '';
    use_dynamic_javascript('http://s7.addthis.com/js/250/addthis_widget.js#username=$username');
    if (!is_null($options)) {
        $options['url'] = isset($options['url']) ? $options['url'] : '';
        $options['title'] = isset($options['title']) ? $options['title'] : '';
        $options['description'] = isset($options['description']) ? $options['description'] : '';
        $option_string = sprintf(' addthis:url="%s" addthis:title="%s" addthis:description="%s" ', $options['url'], $options['title'], $options['description']);
    }
    $string = <<<EOS
<a class="addthis_button" {$option_string} href="http://www.addthis.com/bookmark.php?v=250&amp;username={$username}">Share</a>
EOS;
    return $string;
}
 public function execute($filterChain)
 {
     $filterChain->execute();
     $action = $this->getContext()->getActionStack()->getLastEntry()->getActionInstance();
     foreach ($action->getVarHolder()->getAll() as $name => $value) {
         if ($value instanceof sfForm && (sfConfig::get('app_sf_jquery_form_validation_default') !== 'disabled' || in_array(get_class($value), sfConfig::get('app_sf_jquery_form_validation_forms')))) {
             $url_params = sfJqueryFormValidationRules::getUrlParams();
             $url_params['form'] = get_class($value);
             $embedded_forms = array();
             foreach ($value->getEmbeddedForms() as $name => $embedded_form) {
                 $url_params['embedded_form'][$name] = get_class($embedded_form);
             }
             if (sizeof($embedded_forms) > 0) {
                 $url_params['embedded_form'] = $embedded_forms;
             }
             use_dynamic_javascript(url_for($url_params));
         }
     }
 }
$t->diag('_dynamic_path()');
$t->is(_dynamic_path('module/action', 'js'), 'module/action?sf_format=js', '_dynamic_path() converts an internal URI to a URL');
$t->is(_dynamic_path('module/action?key=value', 'js'), 'module/action?key=value&sf_format=js', '_dynamic_path() converts an internal URI to a URL');
$t->is(_dynamic_path('module/action', 'js', true), '/module/action?sf_format=js', '_dynamic_path() converts an internal URI to a URL');

// dynamic_javascript_include_tag()
$t->diag('dynamic_javascript_include_tag()');
$t->is(dynamic_javascript_include_tag('module/action'), '<script type="text/javascript" src="module/action?sf_format=js"></script>'."\n", 'dynamic_javascript_include_tag() returns a tag relative to the given action');
$t->is(dynamic_javascript_include_tag('module/action', true), '<script type="text/javascript" src="/module/action?sf_format=js"></script>'."\n", 'dynamic_javascript_include_tag() takes an absolute boolean as its second argument');
$t->is(dynamic_javascript_include_tag('module/action', true, array('class' => 'foo')), '<script type="text/javascript" src="/module/action?sf_format=js" class="foo"></script>'."\n", 'dynamic_javascript_include_tag() takes an array of HTML attributes as its third argument');

$context->response = new myResponse($context->getEventDispatcher());

// use_dynamic_javascript()
$t->diag('use_dynamic_javascript()');
use_dynamic_javascript('module/action');
$t->is(get_javascripts(),
  '<script type="text/javascript" src="module/action?sf_format=js"></script>'."\n",
  'use_dynamic_javascript() register a dynamic javascript in the response'
);

// use_dynamic_stylesheet()
$t->diag('use_dynamic_stylesheet()');
use_dynamic_stylesheet('module/action');
$t->is(get_stylesheets(),
  '<link rel="stylesheet" type="text/css" media="screen" href="module/action?sf_format=css" />'."\n",
  'use_dynamic_stylesheet() register a dynamic stylesheet in the response'
);

class MyForm extends sfForm
{