/**
 * Inserts the submitted properties of uploaded media items
 *
 * @return array    array('image_id') holding the last created thumbnail for immediate processing
 *
 */
function serendipity_parsePropertyForm()
{
    global $serendipity;
    if (!is_array($serendipity['POST']['mediaProperties'])) {
        return false;
    }
    serendipity_checkPropertyAccess($serendipity['POST']['mediaProperties'], $serendipity['POST']['mediaKeywords'], 'write');
    foreach ($serendipity['POST']['mediaProperties'] as $id => $media) {
        serendipity_insertMediaProperty('base_property', '', $media['image_id'], $media);
        $s9y_img = $media['internal'];
        $s9y_img['image_id'] = $media['image_id'];
        serendipity_prepareMedia($s9y_img);
        $s9y_img['metadata'] =& serendipity_getMetaData($s9y_img['realfile'], $s9y_img['header']);
        serendipity_insertMediaProperty('base_metadata', 'ALL', $media['image_id'], $s9y_img['metadata']);
        $s9y_img['hidden'] = array('author' => $serendipity['serendipityUser'], 'authorid' => $serendipity['authorid']);
        serendipity_insertMediaProperty('base_hidden', '', $media['image_id'], $s9y_img['hidden']);
        if ($serendipity['POST']['oldDir'][$id] != $serendipity['POST']['newDir'][$id]) {
            serendipity_moveMediaDirectory(serendipity_uploadSecure($serendipity['POST']['oldDir'][$id]), serendipity_uploadSecure($serendipity['POST']['newDir'][$id]), 'filedir', $media['image_id']);
        }
    }
    if (is_array($serendipity['POST']['mediaKeywords'])) {
        foreach ($serendipity['POST']['mediaKeywords'] as $id => $keywords) {
            serendipity_insertMediaProperty('base_keyword', '', $serendipity['POST']['mediaProperties'][$id]['image_id'], $keywords);
        }
    }
    $array = array('image_id' => $serendipity['POST']['mediaProperties'][0]['image_id']);
    return $array;
}
Exemplo n.º 2
0
     $s = getimagesize($serendipity['serendipityPath'] . $serendipity['uploadPath'] . $file['path'] . $file['name'] . ($file['extension'] ? '.' . $file['extension'] : ""));
     $data['img_width'] = $s[0];
     $data['img_height'] = $s[1];
     $data['print_RESIZE_BLAHBLAH'] = sprintf(RESIZE_BLAHBLAH, serendipity_specialchars($serendipity['GET']['fname']));
     $data['print_ORIGINAL_SIZE'] = sprintf(ORIGINAL_SIZE, $s[0], $s[1]);
     $data['formtoken'] = serendipity_setFormToken();
     $data['file'] = $serendipity['uploadHTTPPath'] . $file['path'] . $file['name'] . ($file['extension'] ? '.' . $file['extension'] : "");
     break;
 case 'choose':
     $file = serendipity_fetchImageFromDatabase($serendipity['GET']['fid']);
     $media['file'] =& $file;
     if (!is_array($file)) {
         $media['perm_denied'] = true;
         break;
     }
     serendipity_prepareMedia($file);
     $media['file']['props'] =& serendipity_fetchMediaProperties((int) $serendipity['GET']['fid']);
     serendipity_plugin_api::hook_event('media_getproperties_cached', $media['file']['props']['base_metadata'], $media['file']['realfile']);
     if ($file['is_image']) {
         $file['finishJSFunction'] = $file['origfinishJSFunction'] = 'serendipity.serendipity_imageSelector_done(\'' . serendipity_specialchars($serendipity['GET']['textarea']) . '\')';
         if (!empty($serendipity['GET']['filename_only']) && $serendipity['GET']['filename_only'] !== 'true') {
             $file['fast_select'] = true;
         }
     }
     $media = array_merge($serendipity['GET'], $media);
     $serendipity['smarty']->assignByRef('media', $media);
     echo serendipity_smarty_show('admin/media_choose.tpl', $data);
     break;
 default:
     serendipity_restoreVar($serendipity['COOKIE']['serendipity_only_path'], $serendipity['GET']['only_path']);
     $data['case_default'] = true;