post_date);
$size = $meta['width'] . ' x ' . $meta['height'] . 'px';
return include(WPV_ADMIN_HELPERS . 'gallery-item.php');
endif;
return false;
}
/*
* media upload
*/
function media_get_image_action_callback() {
$image = & get_post($_POST['id']);
if($image)
echo $image->guid;
else
echo '0';
exit;
}
add_action('wp_ajax_wpv-media-get-image', 'media_get_image_action_callback');
/// handles ajax request when saving a theme's options
function save_theme_config_callback() {
foreach($_POST['config'] as &$opt) {
$opt = stripslashes($opt);
}
unset($opt);
$output = json_encode($_POST['config']);
$_POST['file'] = trim($_POST['file']);
if(file_put_contents(WPV_SAVED_OPTIONS.$_POST['file'], $output)) {
echo ''. __('Success.', 'wpv') . '';
} else {
echo ''. __('Cannot save file.', 'wpv') . '';
}
exit;
}
add_action('wp_ajax_save_theme_config', 'save_theme_config_callback');
// deletes a skin
function delete_theme_config_callback() {
$_POST['file'] = trim($_POST['file']);
if(@unlink(WPV_SAVED_OPTIONS.$_POST['file'])) {
echo ''. __('Success.', 'wpv') . '';
} else {
echo ''. __('Cannot delete file.', 'wpv') . '';
}
exit;
}
add_action('wp_ajax_delete_theme_config', 'delete_theme_config_callback');
// lists available theme configs
function wpv_available_configs_callback() {
$skins_dir = opendir(WPV_SAVED_OPTIONS);
if(isset($_POST['prefix'])) {
$prefix = $_POST['prefix'].'_';
echo '';
while($file = readdir($skins_dir)):
if($file != "." && $file != ".." && strpos($file, $prefix) == 0):
?>
The changes are temporary, you have to click "Save options".';
exit;
}
add_action('wp_ajax_save_last_theme_config', 'save_theme_last_config_callback');
// gets the stylesheet for the font preview
function wpv_font_preview_callback() {
global $available_fonts;
$url = wpv_get_font_url($_POST['face']);
if(!empty($url)) {
echo $url;
}
exit;
}
add_action('wp_ajax_wpv-font-preview', 'wpv_font_preview_callback');
// lists available templates
function wpv_available_templates_callback() {
$templates_dir = opendir(WPV_TEMPLATES_DIR);
echo '';
while($file = readdir($templates_dir)):
if($file != "." && $file != ".." && strpos($file, THEME_SLUG) == 0):
?>
'. __('Success.', 'wpv') . '';
} else {
echo ''. __('Cannot save file.', 'wpv') . '';
}
exit;
}
add_action('wp_ajax_wpv-save-template', 'wpv_save_template_callback');
// deletes a template
function wpv_delete_template_callback() {
$file = WPV_TEMPLATES_DIR.THEME_SLUG.$_POST['file'];
if(@unlink($file)) {
echo ''. __('Deleted.', 'wpv') . '';
} else {
echo ''. __('Cannot delete file.', 'wpv') . '';
}
exit;
}
add_action('wp_ajax_wpv-delete-template', 'wpv_delete_template_callback');
// saves the theme/framework options
function wpv_save_options_callback() {
$page = include WPV_ADMIN_OPTIONS . str_replace('wpv_', '', $_POST['page']) . '.php';
wpv_save_config($page['config']);
_e('Saved', 'wpv');
exit;
}
add_action('wp_ajax_wpv-save-options', 'wpv_save_options_callback');