title = $this->get_config('title', $this->title);
$propbag->add('name', PLUGIN_FRAPPR_NAME);
$propbag->add('description', PLUGIN_FRAPPR_DESC);
$propbag->add('stackable', true);
$propbag->add('author', 'Jabrwock');
$propbag->add('version', '0.2');
$propbag->add('configuration', array('image', 'ad', 'alt', 'group', 'recent', 'gid', 'orientation', 'length'));
$propbag->add('groups', array('FRONTEND_EXTERNAL_SERVICES'));
$this->protected = TRUE; // only allows the owner to configure
$propbag->add('requirements', array(
'serendipity' => '0.9.1',
'php' => '4.1.0'
));
}
function introspect_config_item($name, &$propbag)
{
switch($name) {
case 'group':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_FRAPPR_GROUP);
$propbag->add('description',PLUGIN_FRAPPR_GROUP_DESC);
$propbag->add('default', '');
$propbag->add('validate', 'string');
$propbag->add('validate_error',PLUGIN_FRAPPR_GROUP_ERR);
break;
case 'image':
$select_link_type = array ('0' => 'Image', '1' => 'Link');
$propbag->add('type', 'select');
$propbag->add('select_values', $select_link_type);
$propbag->add('name', PLUGIN_FRAPPR_IMAGE);
$propbag->add('default', '0');
break;
case 'ad':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_FRAPPR_AD);
$propbag->add('description',PLUGIN_FRAPPR_AD_DESC);
$propbag->add('default', 'http://www.frappr.com/i/frapper_sticker.gif');
$propbag->add('validate', 'url');
$propbag->add('validate_error',PLUGIN_FRAPPR_AD_ERR);
break;
case 'alt':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_FRAPPR_ALT);
$propbag->add('description',PLUGIN_FRAPPR_ALT_DESC);
$propbag->add('default', 'Check out our Frappr!');
$propbag->add('validate', 'words');
$propbag->add('validate_error',PLUGIN_FRAPPR_ALT_ERR);
break;
case 'recent':
$propbag->add('type', 'boolean');
$propbag->add('name', PLUGIN_FRAPPR_RECENT);
$propbag->add('default', 'false');
break;
case 'gid':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_FRAPPR_GID);
$propbag->add('description',PLUGIN_FRAPPR_GID_DESC);
$propbag->add('default', '');
$propbag->add('validate', 'number');
$propbag->add('validate_error',PLUGIN_FRAPPR_GID_ERR);
break;
case 'orientation':
$select_orientation = array('0' => 'tall', '1' => 'wide');
$propbag->add('type', 'select');
$propbag->add('select_values', $select_orientation);
$propbag->add('name', PLUGIN_FRAPPR_ORIENTATION);
$propbag->add('description',PLUGIN_FRAPPR_ORIENTATION_DESC);
$propbag->add('default', '0');
break;
case 'length':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_FRAPPR_LENGTH);
$propbag->add('description',PLUGIN_FRAPPR_LENGTH_DESC);
$propbag->add('default', '400');
$propbag->add('validate', 'number');
$propbag->add('validate_error',PLUGIN_FRAPPR_LENGTH_ERR);
break;
default:
return false;
}
return true;
}
function generate_content(&$title)
{
global $serendipity;
$language = $serendipity['lang'];
$frappr_url = PLUGIN_FRAPPR_URL;
/* Output */
$frappr_link = '';
if ($this->get_config('image', '0') == 0) {
$frappr_link = $frappr_link . '';
}
else
{
$frappr_link = $frappr_link . $this->get_config('alt', 'Check out our Frappr!');
}
$frappr_link = $frappr_link . '
'; echo $frappr_link; /* Show recent frappr avatars if selected */ if ($this->get_config('recent', 'false') == true) { echo ' '; echo ''; } } } /* vim: set sts=4 ts=4 expandtab: */