addBehavior('adminPostFormItems', ['attachmentAdmin', 'adminPostFormItems']); $core->addBehavior('adminPostAfterForm', ['attachmentAdmin', 'adminPostAfterForm']); $core->addBehavior('adminPostHeaders', ['attachmentAdmin', 'postHeaders']); $core->addBehavior('adminPageFormItems', ['attachmentAdmin', 'adminPostFormItems']); $core->addBehavior('adminPageAfterForm', ['attachmentAdmin', 'adminPostAfterForm']); $core->addBehavior('adminPageHeaders', ['attachmentAdmin', 'postHeaders']); $core->addBehavior('adminPageHelpBlock', ['attachmentAdmin', 'adminPageHelpBlock']); class attachmentAdmin { public static function adminPageHelpBlock($blocks) { $found = false; foreach ($blocks as $block) { if ($block == 'core_post') { $found = true; break; } } if (!$found) { return; } $blocks[] = 'attachments'; } public static function postHeaders() { $core = &$GLOBALS['core']; return dcPage::jsLoad(dcPage::getPF('attachments/js/post.js')); } public static function adminPostFormItems($main, $sidebar, $post) { if ($post !== null) { $core = &$GLOBALS['core']; $post_media = $core->media->getPostMedia($post->post_id, null, 'attachment'); $nb_media = count($post_media); $title = !$nb_media ? __('Attachments') : sprintf(__('Attachments (%d)'), $nb_media); $item = '
' . $title . '
'; foreach ($post_media as $f) { $ftitle = $f->media_title; if (strlen($ftitle) > 18) { $ftitle = substr($ftitle, 0, 16) . '...'; } $item .= '
' . '' . '' . '' . '
'; } unset($f); if (empty($post_media)) { $item .= '

' . __('No attachment.') . '

'; } $item .= '

' . __('Add files to this entry') . '

'; $sidebar['metas-box']['items']['attachments'] = $item; } } public static function adminPostAfterForm($post) { if ($post !== null) { $core = &$GLOBALS['core']; echo '
' . '
' . form::hidden(['post_id'], $post->post_id) . form::hidden(['media_id'], '') . form::hidden(['link_type'], 'attachment') . form::hidden(['remove'], 1) . $core->formNonce() . '
'; } } }