/**
 * 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;
}
예제 #2
0
 if (!serendipity_checkPermission('adminImagesDirectories')) {
     return;
 }
 $data['case_directoryEdit'] = true;
 $use_dir = serendipity_uploadSecure($serendipity['GET']['dir']);
 $checkpath = array(array('relpath' => $use_dir));
 if (!serendipity_directoryACL($checkpath, 'write')) {
     return;
 }
 if (!empty($serendipity['POST']['save'])) {
     $newDir = serendipity_uploadSecure(serendipity_makeFilename($serendipity['POST']['newDir']));
     $oldDir = serendipity_uploadSecure($serendipity['POST']['oldDir']);
     if ($oldDir != $newDir) {
         //is this possible?
         ob_start();
         serendipity_moveMediaDirectory($oldDir, $newDir);
         $data['ob_serendipity_moveMediaDirectory'] = ob_get_contents();
         ob_end_clean();
         $use_dir = $newDir;
     }
     serendipity_ACLGrant(0, 'directory', 'read', $serendipity['POST']['read_authors'], $use_dir);
     serendipity_ACLGrant(0, 'directory', 'write', $serendipity['POST']['write_authors'], $use_dir);
     $data['print_SETTINGS_SAVED_AT'] = sprintf(SETTINGS_SAVED_AT, serendipity_strftime('%H:%M:%S'));
 }
 $groups = serendipity_getAllGroups();
 $read_groups = serendipity_ACLGet(0, 'directory', 'read', $use_dir);
 $write_groups = serendipity_ACLGet(0, 'directory', 'write', $use_dir);
 if (!empty($serendipity['POST']['update_children'])) {
     $dir_list = serendipity_traversePath($serendipity['serendipityPath'] . $serendipity['uploadPath'], $use_dir, true, NULL, 1, NULL, 'write', NULL);
     foreach ($dir_list as $f => $dir) {
         // Apply parent ACL to children.