示例#1
0
/**
 * Delete market post and pictures
 *
 * @param Market $post
 * @return array
 */
function market_delete_image($post = NULL, $imagenum)
{
    if (!$post || !$imagenum) {
        return false;
    }
    $filenum = $imagenum;
    if ($imagenum == 1) {
        $filenum = '';
    }
    $owner = get_entity($post->getOwner());
    $owner_guid = $owner->guid;
    $prefix = "market/{$post->guid}";
    $names = array("{$prefix}small{$filenum}.jpg", "{$prefix}medium{$filenum}.jpg", "{$prefix}large{$filenum}.jpg", "{$prefix}master{$filenum}.jpg");
    foreach ($names as $name) {
        $delfile = new ElggFile();
        $delfile->owner_guid = $owner_guid;
        $delfile->setFilename($name);
        $delfile->delete();
    }
    $images = unserialize($post->images);
    $new_array = array();
    foreach ($images as $key => $value) {
        if ($key == $imagenum) {
            $value = 0;
        }
        $new_array[$key] = $value;
    }
    $post->images = serialize($new_array);
    $post->save();
    return true;
}