diff options
Diffstat (limited to 'views/default/object')
| -rw-r--r-- | views/default/object/admin_notice.php | 3 | ||||
| -rw-r--r-- | views/default/object/default.php | 7 | ||||
| -rw-r--r-- | views/default/object/elements/full.php | 37 | ||||
| -rw-r--r-- | views/default/object/elements/summary.php | 59 | ||||
| -rw-r--r-- | views/default/object/plugin.php | 8 | ||||
| -rw-r--r-- | views/default/object/plugin/advanced.php | 231 | ||||
| -rw-r--r-- | views/default/object/plugin/elements/dependencies.php | 12 | ||||
| -rw-r--r-- | views/default/object/plugin/full.php | 308 | ||||
| -rw-r--r-- | views/default/object/plugin/invalid.php | 14 | ||||
| -rw-r--r-- | views/default/object/plugin/simple.php | 63 | ||||
| -rw-r--r-- | views/default/object/widget.php | 3 | ||||
| -rw-r--r-- | views/default/object/widget/elements/controls.php | 44 | ||||
| -rw-r--r-- | views/default/object/widget/elements/settings.php | 14 |
13 files changed, 450 insertions, 353 deletions
diff --git a/views/default/object/admin_notice.php b/views/default/object/admin_notice.php index 086eddb1f..11524567e 100644 --- a/views/default/object/admin_notice.php +++ b/views/default/object/admin_notice.php @@ -11,7 +11,8 @@ if (isset($vars['entity']) && elgg_instanceof($vars['entity'], 'object', 'admin_ 'href' => "action/admin/delete_admin_notice?guid=$notice->guid", 'text' => '<span class="elgg-icon elgg-icon-delete"></span>', 'is_action' => true, - 'class' => 'elgg-admin-notice' + 'class' => 'elgg-admin-notice', + 'is_trusted' => true, )); echo "<p>$delete$message</p>"; diff --git a/views/default/object/default.php b/views/default/object/default.php index 2cf9805f0..70e098742 100644 --- a/views/default/object/default.php +++ b/views/default/object/default.php @@ -28,6 +28,7 @@ if ($owner) { $owner_link = elgg_view('output/url', array( 'href' => $owner->getURL(), 'text' => $owner->name, + 'is_trusted' => true, )); } @@ -40,8 +41,8 @@ $params = array( 'title' => $title, 'metadata' => $metadata, 'subtitle' => $subtitle, - 'tags' => $vars['entity']->tags, ); -$body = elgg_view('page/components/summary', $params); +$params = $params + $vars; +$body = elgg_view('object/elements/summary', $params); -echo elgg_view_image_block($icon, $body); +echo elgg_view_image_block($icon, $body, $vars); diff --git a/views/default/object/elements/full.php b/views/default/object/elements/full.php new file mode 100644 index 000000000..b4634fe7e --- /dev/null +++ b/views/default/object/elements/full.php @@ -0,0 +1,37 @@ +<?php +/** + * Object full rendering + * + * Sample output: + * <div class="elgg-content"> + * <div class="elgg-image-block"> + * </div> + * <div class="elgg-output"> + * </div> + * </div> + * + * @uses $vars['entity'] ElggEntity + * @uses $vars['icon'] HTML for the content icon + * @uses $vars['summary'] HTML for the content summary + * @uses $vars['body'] HTML for the content body + * @uses $vars['class'] Optional additional class for the content wrapper + */ + +$icon = elgg_extract('icon', $vars); +$summary = elgg_extract('summary', $vars); +$body = elgg_extract('body', $vars); +$class = elgg_extract('class', $vars); +if ($class) { + $class = "elgg-content clearfix $class"; +} else { + $class = "elgg-content clearfix"; +} + +$header = elgg_view_image_block($icon, $summary); + +echo <<<HTML +<div class="$class"> +$header +$body +</div> +HTML; diff --git a/views/default/object/elements/summary.php b/views/default/object/elements/summary.php new file mode 100644 index 000000000..63ab8f816 --- /dev/null +++ b/views/default/object/elements/summary.php @@ -0,0 +1,59 @@ +<?php +/** + * Object summary + * + * Sample output + * <ul class="elgg-menu elgg-menu-entity"><li>Public</li><li>Like this</li></ul> + * <h3><a href="">Title</a></h3> + * <p class="elgg-subtext">Posted 3 hours ago by George</p> + * <p class="elgg-tags"><a href="">one</a>, <a href="">two</a></p> + * <div class="elgg-content">Excerpt text</div> + * + * @uses $vars['entity'] ElggEntity + * @uses $vars['title'] Title link (optional) false = no title, '' = default + * @uses $vars['metadata'] HTML for entity menu and metadata (optional) + * @uses $vars['subtitle'] HTML for the subtitle (optional) + * @uses $vars['tags'] HTML for the tags (default is tags on entity, pass false for no tags) + * @uses $vars['content'] HTML for the entity content (optional) + */ + +$entity = $vars['entity']; + +$title_link = elgg_extract('title', $vars, ''); +if ($title_link === '') { + if (isset($entity->title)) { + $text = $entity->title; + } else { + $text = $entity->name; + } + $params = array( + 'text' => elgg_get_excerpt($text, 100), + 'href' => $entity->getURL(), + 'is_trusted' => true, + ); + $title_link = elgg_view('output/url', $params); +} + +$metadata = elgg_extract('metadata', $vars, ''); +$subtitle = elgg_extract('subtitle', $vars, ''); +$content = elgg_extract('content', $vars, ''); + +$tags = elgg_extract('tags', $vars, ''); +if ($tags === '') { + $tags = elgg_view('output/tags', array('tags' => $entity->tags)); +} + +if ($metadata) { + echo $metadata; +} +if ($title_link) { + echo "<h3>$title_link</h3>"; +} +echo "<div class=\"elgg-subtext\">$subtitle</div>"; +echo $tags; + +echo elgg_view('object/summary/extend', $vars); + +if ($content) { + echo "<div class=\"elgg-content\">$content</div>"; +} diff --git a/views/default/object/plugin.php b/views/default/object/plugin.php index 2facca97a..5c7138e96 100644 --- a/views/default/object/plugin.php +++ b/views/default/object/plugin.php @@ -7,12 +7,14 @@ * */ +if (!elgg_in_context('admin')) { + forward('/', 403); +} + $plugin = $vars['entity']; if (!$plugin->isValid()) { echo elgg_view('object/plugin/invalid', $vars); -} elseif ($vars['full_view']) { - echo elgg_view('object/plugin/advanced', $vars); } else { - echo elgg_view('object/plugin/simple', $vars); + echo elgg_view('object/plugin/full', $vars); } diff --git a/views/default/object/plugin/advanced.php b/views/default/object/plugin/advanced.php deleted file mode 100644 index 4b5a3ba48..000000000 --- a/views/default/object/plugin/advanced.php +++ /dev/null @@ -1,231 +0,0 @@ -<?php -/** - * Displays a plugin on the admin screen. - * - * This file renders a plugin for the admin screen, including active/deactive, - * manifest details & display plugin settings. - * - * @package Elgg.Core - * @subpackage Plugins - */ - -$plugin = $vars['entity']; -$priority = $plugin->getPriority(); -$active = $plugin->isActive(); - -$name = $plugin->manifest->getName(); -$can_activate = $plugin->canActivate(); -$max_priority = elgg_get_max_plugin_priority(); -$actions_base = '/action/admin/plugins/'; - -$ts = time(); -$token = generate_action_token($ts); -$active_class = ($active && $can_activate) ? 'elgg-state-active' : 'elgg-state-inactive'; - -// build reordering links -$links = ''; - -// top and up link only if not at top -if ($priority > 1) { - $top_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( - 'plugin_guid' => $plugin->guid, - 'priority' => 'first', - 'is_action' => true - )); - - $links .= "<li>" . elgg_view('output/url', array( - 'href' => $top_url, - 'text' => elgg_echo('top'), - 'is_action' => true - )) . "</li>"; - - $up_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( - 'plugin_guid' => $plugin->guid, - 'priority' => '-1', - 'is_action' => true - )); - - $links .= "<li>" . elgg_view('output/url', array( - 'href' => $up_url, - 'text' => elgg_echo('up'), - 'is_action' => true - )) . "</li>"; -} - -// down and bottom links only if not at bottom -if ($priority < $max_priority) { - $down_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( - 'plugin_guid' => $plugin->guid, - 'priority' => '+1', - 'is_action' => true - )); - - $links .= "<li>" . elgg_view('output/url', array( - 'href' => $down_url, - 'text' => elgg_echo('down'), - 'is_action' => true - )) . "</li>"; - - $bottom_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( - 'plugin_guid' => $plugin->guid, - 'priority' => 'last', - 'is_action' => true - )); - - $links .= "<li>" . elgg_view('output/url', array( - 'href' => $bottom_url, - 'text' => elgg_echo('bottom'), - 'is_action' => true - )) . "</li>"; -} - -// activate / deactivate links -if ($can_activate) { - if ($active) { - $action = 'deactivate'; - $class = 'elgg-button-cancel'; - } else { - $action = 'activate'; - $class = 'elgg-button-submit'; - } - - $url = elgg_http_add_url_query_elements($actions_base . $action, array( - 'plugin_guids[]' => $plugin->guid, - 'is_action' => true - )); - - $action_button = elgg_view('output/url', array( - 'href' => $url, - 'text' => elgg_echo($action), - 'is_action' => true, - 'class' => "elgg-button $class" - )); -} else { - $action_button = elgg_view('output/url', array( - 'text' => elgg_echo('admin:plugins:cannot_activate'), - 'disabled' => 'disabled', - 'class' => "elgg-button elgg-button-action elgg-state-disabled" - )); -} - -// Display categories -$categories_html = ''; -if ($categories) { - $categories_arr = array(); - $base_url = elgg_get_site_url() . "admin/plugins?category="; - - foreach ($categories as $category) { - $url = $base_url . urlencode($category); - $categories_arr[] = "<a href=\"$url\">" . htmlspecialchars($category) . '</a>'; - } - - $categories_html = implode(', ', $categories_arr); -} - -$screenshots_html = ''; -$screenshots = $plugin->manifest->getScreenshots(); -if ($screenshots) { - $base_url = elgg_get_plugins_path() . $plugin->getID() . '/'; - foreach ($screenshots as $screenshot) { - $desc = elgg_echo($screenshot['description']); - $alt = htmlentities($desc, ENT_QUOTES, 'UTF-8'); - $screenshot_full = "{$vars['url']}admin_plugin_screenshot/{$plugin->getID()}/full/{$screenshot['path']}"; - $screenshot_src = "{$vars['url']}admin_plugin_screenshot/{$plugin->getID()}/thumbnail/{$screenshot['path']}"; - - $screenshots_html .= "<li class=\"elgg-plugin-screenshot prm ptm\"><a href=\"$screenshot_full\">" - . "<img src=\"$screenshot_src\" alt=\"$alt\"></a></li>"; - } -} - -// metadata -$description = elgg_view('output/longtext', array('value' => $plugin->manifest->getDescription())); -$author = '<span>' . elgg_echo('admin:plugins:label:author') . '</span>: ' - . elgg_view('output/text', array('value' => $plugin->manifest->getAuthor())); -$version = htmlspecialchars($plugin->manifest->getVersion()); -$website = elgg_view('output/url', array( - 'href' => $plugin->manifest->getWebsite(), - 'text' => $plugin->manifest->getWebsite() -)); - -$copyright = elgg_view('output/text', array('value' => $plugin->manifest->getCopyright())); -$license = elgg_view('output/text', array('value' => $plugin->manifest->getLicense())); - -?> - -<div class="elgg-state-draggable elgg-plugin <?php echo $active_class ?>" id="elgg-plugin-<?php echo $plugin->guid; ?>"> - <div class="elgg-image-block"> - <div class="elgg-image-alt"> - <ul class="elgg-menu elgg-menu-metadata"> - <?php echo "$links"; ?> - </ul> - <div class="clearfloat right mtm"> - <?php echo $action_button; ?> - </div> - </div> - <div class="elgg-body"> -<?php -$settings_view = 'settings/' . $plugin->getID() . '/edit'; -if (elgg_view_exists($settings_view)) { - $link = elgg_get_site_url() . "admin/plugin_settings/" . $plugin->getID(); - $settings_link = "<a class='plugin_settings small link' href='$link'>[" . elgg_echo('settings') . "]</a>"; -} -?> - <div class="elgg-head"> - <h3><?php echo $plugin->manifest->getName(). " $version $settings_link"; ?></h3> - </div> - <?php - if ($plugin->manifest->getApiVersion() < 1.8) { - $reqs = $plugin->manifest->getRequires(); - if (!$reqs) { - $message = elgg_echo('admin:plugins:warning:elgg_version_unknown'); - echo "<p class=\"elgg-state-error\">$message</p>"; - } - } - - if (!$can_activate) { - $message = elgg_echo('admin:plugins:warning:unmet_dependencies'); - echo "<p class=\"elgg-state-error\">$message</p>"; - } - ?> - - <div class="plugin_description"><?php echo $description; ?></div> - <p class="plugin_author"><?php echo $author . ' - ' . $website; ?></p> - - <div class="pts"> - <?php - echo elgg_view('output/url', array( - 'href' => "#elgg-plugin-manifest-{$plugin->getID()}", - 'text' => elgg_echo("admin:plugins:label:moreinfo"), - 'class' => 'elgg-toggler', - )); - ?> - </div> - </div> - </div> - <div class="hidden manifest_file" id="elgg-plugin-manifest-<?php echo $plugin->getID(); ?>"> - - <?php - if ($screenshots_html) { - ?> - <div><ul><?php echo $screenshots_html; ?></ul></div> - <?php - } - - if ($categories_html) { - ?> - <div><?php echo elgg_echo('admin:plugins:label:categories') . ": " . $categories_html; ?></div> - <?php - } - - ?> - <div><?php echo elgg_echo('admin:plugins:label:copyright') . ": " . $copyright; ?></div> - <div><?php echo elgg_echo('admin:plugins:label:licence') . ": " . $license; ?></div> - <div><?php echo elgg_echo('admin:plugins:label:location') . ": " . htmlspecialchars($plugin->getPath()) ?></div> - - <div><?php echo elgg_echo('admin:plugins:label:dependencies'); ?>: - <?php - echo elgg_view('object/plugin/elements/dependencies', array('plugin' => $plugin)); - ?> - </div> - </div> -</div>
\ No newline at end of file diff --git a/views/default/object/plugin/elements/dependencies.php b/views/default/object/plugin/elements/dependencies.php index 11a441a4a..d8daedd33 100644 --- a/views/default/object/plugin/elements/dependencies.php +++ b/views/default/object/plugin/elements/dependencies.php @@ -9,18 +9,18 @@ */ $plugin = elgg_extract('plugin', $vars, false); -$deps = $plugin->package->checkDependencies(true); +$deps = $plugin->getPackage()->checkDependencies(true); $columns = array('type', 'name', 'expected_value', 'local_value', 'comment'); -echo '<table class="elgg-plugins-dependencies styled"><tr>'; +echo '<table class="elgg-plugin-dependencies styled"><tr>'; foreach ($columns as $column) { $column = elgg_echo("admin:plugins:dependencies:$column"); echo "<th class=\"pas\">$column</th>"; } -echo '<tr/>'; +echo '</tr>'; $row = 'odd'; foreach ($deps as $dep) { @@ -28,9 +28,11 @@ foreach ($deps as $dep) { $type = $dep['type']; if ($dep['status']) { - $class = "elgg-state-success elgg-dependency-$type"; + $class = "elgg-state-success elgg-dependency elgg-dependency-$type"; + } elseif ($dep['type'] == 'suggests') { + $class = "elgg-state-warning elgg-dependency elgg-dependency-$type"; } else { - $class = "elgg-state-error elgg-dependency-$type"; + $class = "elgg-state-error elgg-dependency elgg-dependency-$type"; } echo "<tr class=\"$row\">"; diff --git a/views/default/object/plugin/full.php b/views/default/object/plugin/full.php new file mode 100644 index 000000000..2de65b555 --- /dev/null +++ b/views/default/object/plugin/full.php @@ -0,0 +1,308 @@ +<?php +/** + * Displays a plugin on the admin screen. + * + * This file renders a plugin for the admin screen, including active/deactive, + * manifest details & display plugin settings. + * + * @uses $vars['entity'] + * @uses $vars['display_reordering'] Do we display the priority reordering links? + * + * @package Elgg.Core + * @subpackage Plugins + */ + +$plugin = $vars['entity']; +$reordering = elgg_extract('display_reordering', $vars, false); +$priority = $plugin->getPriority(); +$active = $plugin->isActive(); + +$can_activate = $plugin->canActivate(); +$max_priority = elgg_get_max_plugin_priority(); +$actions_base = '/action/admin/plugins/'; +$css_id = preg_replace('/[^a-z0-9-]/i', '-', $plugin->getID()); + +// build reordering links +$links = ''; +$classes = array('elgg-plugin'); + +if ($reordering) { + $classes[] = 'elgg-state-draggable'; + + // top and up link only if not at top + if ($priority > 1) { + $top_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( + 'plugin_guid' => $plugin->guid, + 'priority' => 'first', + 'is_action' => true + )); + + $links .= "<li>" . elgg_view('output/url', array( + 'href' => $top_url, + 'text' => elgg_echo('top'), + 'is_action' => true, + 'is_trusted' => true, + )) . "</li>"; + + $up_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( + 'plugin_guid' => $plugin->guid, + 'priority' => '-1', + 'is_action' => true + )); + + $links .= "<li>" . elgg_view('output/url', array( + 'href' => $up_url, + 'text' => elgg_echo('up'), + 'is_action' => true, + 'is_trusted' => true, + )) . "</li>"; + } + + // down and bottom links only if not at bottom + if ($priority < $max_priority) { + $down_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( + 'plugin_guid' => $plugin->guid, + 'priority' => '+1', + 'is_action' => true + )); + + $links .= "<li>" . elgg_view('output/url', array( + 'href' => $down_url, + 'text' => elgg_echo('down'), + 'is_action' => true, + 'is_trusted' => true, + )) . "</li>"; + + $bottom_url = elgg_http_add_url_query_elements($actions_base . 'set_priority', array( + 'plugin_guid' => $plugin->guid, + 'priority' => 'last', + 'is_action' => true + )); + + $links .= "<li>" . elgg_view('output/url', array( + 'href' => $bottom_url, + 'text' => elgg_echo('bottom'), + 'is_action' => true, + 'is_trusted' => true, + )) . "</li>"; + } +} else { + $classes[] = 'elgg-state-undraggable'; +} + + +// activate / deactivate links + +// always let them deactivate +$options = array( + 'is_action' => true, + 'is_trusted' => true, +); +if ($active) { + $classes[] = 'elgg-state-active'; + $action = 'deactivate'; + $options['text'] = elgg_echo('admin:plugins:deactivate'); + $options['class'] = "elgg-button elgg-button-cancel"; + + if (!$can_activate) { + $classes[] = 'elgg-state-active'; + $options['class'] = 'elgg-button elgg-state-warning'; + } +} else if ($can_activate) { + $classes[] = 'elgg-state-inactive'; + $action = 'activate'; + $options['text'] = elgg_echo('admin:plugins:activate'); + $options['class'] = "elgg-button elgg-button-submit"; +} else { + $classes[] = 'elgg-state-inactive'; + $action = ''; + $options['text'] = elgg_echo('admin:plugins:cannot_activate'); + $options['class'] = "elgg-button elgg-button-disabled"; + $options['disabled'] = 'disabled'; +} + +if ($action) { + $url = elgg_http_add_url_query_elements($actions_base . $action, array( + 'plugin_guids[]' => $plugin->guid + )); + + $options['href'] = $url; +} +$action_button = elgg_view('output/url', $options); + +// Display categories and make category classes +$categories = $plugin->getManifest()->getCategories(); +$categories_html = ''; +if ($categories) { + $base_url = elgg_get_site_url() . "admin/plugins?category="; + + foreach ($categories as $category) { + $css_class = preg_replace('/[^a-z0-9-]/i', '-', $category); + $classes[] = "elgg-plugin-category-$css_class"; + + $url = $base_url . urlencode($category); + $friendly_category = htmlspecialchars(ElggPluginManifest::getFriendlyCategory($category)); + $categories_html .= "<li class=\"elgg-plugin-category prm\"><a href=\"$url\">$friendly_category</a></li>"; + } +} + +$screenshots_html = ''; +$screenshots = $plugin->getManifest()->getScreenshots(); +if ($screenshots) { + $base_url = elgg_get_plugins_path() . $plugin->getID() . '/'; + foreach ($screenshots as $screenshot) { + $desc = elgg_echo($screenshot['description']); + $alt = htmlentities($desc, ENT_QUOTES, 'UTF-8'); + $screenshot_full = "{$vars['url']}admin_plugin_screenshot/{$plugin->getID()}/full/{$screenshot['path']}"; + $screenshot_src = "{$vars['url']}admin_plugin_screenshot/{$plugin->getID()}/thumbnail/{$screenshot['path']}"; + + $screenshots_html .= "<li class=\"elgg-plugin-screenshot prm ptm\"><a class=\"elgg-lightbox\" href=\"$screenshot_full\">" + . "<img src=\"$screenshot_src\" alt=\"$alt\"></a></li>"; + } +} + +// metadata +$description = elgg_view('output/longtext', array('value' => $plugin->getManifest()->getDescription())); +$author = '<span>' . elgg_echo('admin:plugins:label:author') . '</span>: ' + . elgg_view('output/text', array('value' => $plugin->getManifest()->getAuthor())); +$version = htmlspecialchars($plugin->getManifest()->getVersion()); +$website = elgg_view('output/url', array( + 'href' => $plugin->getManifest()->getWebsite(), + 'text' => $plugin->getManifest()->getWebsite(), + 'is_trusted' => true, +)); + +$resources = array( + 'repository' => $plugin->getManifest()->getRepositoryURL(), + 'bugtracker' => $plugin->getManifest()->getBugTrackerURL(), + 'donate' => $plugin->getManifest()->getDonationsPageURL(), +); + +$resources_html = "<ul class=\"elgg-plugin-resources\">"; +foreach ($resources as $id => $href) { + if ($href) { + $resources_html .= "<li class=\"prm\">"; + $resources_html .= elgg_view('output/url', array( + 'href' => $href, + 'text' => elgg_echo("admin:plugins:label:$id"), + 'is_trusted' => true, + )); + $resources_html .= "</li>"; + } +} +$resources_html .= "</ul>"; + +$copyright = elgg_view('output/text', array('value' => $plugin->getManifest()->getCopyright())); +$license = elgg_view('output/text', array('value' => $plugin->getManifest()->getLicense())); + +// show links to text files +$files = $plugin->getAvailableTextFiles(); + +$docs = ''; +if ($files) { + $docs = '<ul>'; + foreach ($files as $file => $path) { + $url = 'admin_plugin_text_file/' . $plugin->getID() . "/$file"; + $link = elgg_view('output/url', array( + 'text' => $file, + 'href' => $url, + 'is_trusted' => true, + )); + $docs .= "<li>$link</li>"; + + } + $docs .= '</ul>'; +} + +?> + +<div class="<?php echo implode(' ', $classes); ?>" id="<?php echo $css_id; ?>"> + <div class="elgg-image-block"> + <div class="elgg-image-alt"> + <?php if ($links) : ?> + <ul class="elgg-menu elgg-menu-metadata"> + <?php echo $links; ?> + </ul> + <?php endif; ?> + <div class="clearfloat float-alt mtm"> + <?php echo $action_button; ?> + </div> + </div> + <div class="elgg-body"> +<?php +$settings_view_old = 'settings/' . $plugin->getID() . '/edit'; +$settings_view_new = 'plugins/' . $plugin->getID() . '/settings'; +if (elgg_view_exists($settings_view_old) || elgg_view_exists($settings_view_new)) { + $link = elgg_get_site_url() . "admin/plugin_settings/" . $plugin->getID(); + $settings_link = "<a class='elgg-plugin-settings' href='$link'>[" . elgg_echo('settings') . "]</a>"; +} +?> + <div class="elgg-head"> + <h3><?php echo $plugin->getManifest()->getName() . " $version $settings_link"; ?></h3> + </div> + <?php + if ($plugin->getManifest()->getApiVersion() < 1.8) { + $reqs = $plugin->getManifest()->getRequires(); + if (!$reqs) { + $message = elgg_echo('admin:plugins:warning:elgg_version_unknown'); + echo "<p class=\"elgg-state-error\">$message</p>"; + } + } + + if (!$can_activate) { + if ($active) { + $message = elgg_echo('admin:plugins:warning:unmet_dependencies_active'); + echo "<p class=\"elgg-state-warning\">$message</p>"; + } else { + $message = elgg_echo('admin:plugins:warning:unmet_dependencies'); + echo "<p class=\"elgg-state-error\">$message</p>"; + } + } + ?> + + <div><?php echo $description; ?></div> + <p><?php echo $author . ' - ' . $website; ?></p> + + <?php + echo $resources_html; + echo $docs; + ?> + + <div class="pts"> + <?php + echo elgg_view('output/url', array( + 'href' => "#elgg-plugin-manifest-$css_id", + 'text' => elgg_echo("admin:plugins:label:moreinfo"), + 'rel' => 'toggle', + )); + ?> + </div> + </div> + </div> + <div class="elgg-plugin-more hidden" id="elgg-plugin-manifest-<?php echo $css_id; ?>"> + + <?php + if ($screenshots_html) { + ?> + <div><ul><?php echo $screenshots_html; ?></ul></div> + <?php + } + + if ($categories_html) { + ?> + <div><?php echo elgg_echo('admin:plugins:label:categories') . ": <ul class=\"elgg-plugin-categories\">$categories_html</ul>"; ?></div> + <?php + } + + ?> + <div><?php echo elgg_echo('admin:plugins:label:copyright') . ": " . $copyright; ?></div> + <div><?php echo elgg_echo('admin:plugins:label:licence') . ": " . $license; ?></div> + <div><?php echo elgg_echo('admin:plugins:label:location') . ": " . htmlspecialchars($plugin->getPath()) ?></div> + + <div><?php echo elgg_echo('admin:plugins:label:dependencies'); ?>: + <?php + echo elgg_view('object/plugin/elements/dependencies', array('plugin' => $plugin)); + ?> + </div> + </div> +</div> diff --git a/views/default/object/plugin/invalid.php b/views/default/object/plugin/invalid.php index 9e239b7ca..828bceaba 100644 --- a/views/default/object/plugin/invalid.php +++ b/views/default/object/plugin/invalid.php @@ -14,29 +14,29 @@ $plugin = $vars['entity']; $id = $plugin->getID(); $path = htmlspecialchars($plugin->getPath()); -$message = elgg_echo('admin:plugins:warning:invalid', array($id)); -$error = $plugin->getError(); +$message = elgg_echo('admin:plugins:warning:invalid', array($plugin->getError())); +$css_id = preg_replace('/[^a-z0-9-]/i', '-', $plugin->getID()); ?> <div class="elgg-state-draggable elgg-plugin elgg-state-inactive elgg-state-error" id="elgg-plugin-<?php echo $plugin->guid; ?>"> <div class="elgg-head"><h3><?php echo $id; ?></h3></div> <div class="elgg-body"> - <p><?php echo $message; ?></p> + <p class="elgg-state-error"><?php echo $message; ?></p> + <p><?php echo elgg_echo('admin:plugins:warning:invalid:check_docs'); ?></p> <div class="pts"> <?php echo elgg_view('output/url', array( - 'href' => "#elgg-plugin-manifest-{$plugin->getID()}", + 'href' => "#elgg-plugin-manifest-$css_id", 'text' => elgg_echo("admin:plugins:label:moreinfo"), - 'class' => 'elgg-toggler', + 'rel' => 'toggle', )); ?> </div> - <div class="hidden manifest_file" id="elgg-plugin-manifest-<?php echo $plugin->getID(); ?>"> + <div class="hidden elgg-plugin-more" id="elgg-plugin-manifest-<?php echo $css_id; ?>"> <p><?php echo elgg_echo('admin:plugins:label:location') . ": " . $path; ?></p> - <p><?php echo $error; ?></p> </div> </div> </div>
\ No newline at end of file diff --git a/views/default/object/plugin/simple.php b/views/default/object/plugin/simple.php deleted file mode 100644 index 0361666ff..000000000 --- a/views/default/object/plugin/simple.php +++ /dev/null @@ -1,63 +0,0 @@ -<?php -$plugin = $vars['entity']; - -$plugin_guid = $plugin->guid; -$plugin_id = $plugin->getID(); -$active = $plugin->isActive(); -$can_activate = $plugin->canActivate(); -$name = $plugin->manifest->getName(); -$author = $plugin->manifest->getAuthor(); -$version = $plugin->manifest->getVersion(); -$website = $plugin->manifest->getWebsite(); -$description = $plugin->manifest->getDescription(); - -if ($active) { - $active_class = 'elgg-state-active'; - $checked = 'checked="checked"'; -} else { - $active_class = 'elgg-state-inactive'; - $checked = ''; -} - -if ($can_activate) { - $disabled = ''; -} else { - $disabled = 'disabled="disabled"'; - $description .= '<p>' . elgg_echo('admin:plugins:simple:cannot_activate') . '</p>'; -} - -$description = elgg_view('output/longtext', array('value' => $description)); - -$plugin_footer = '<ul class="elgg-menu elgg-menu-footer">'; - -if ($author) { - $plugin_footer .= '<li>' . elgg_echo('admin:plugins:author', array($author)) . '</li>'; -} - -if ($version) { - $plugin_footer .= '<li>' . elgg_echo('admin:plugins:version', array($version)) . '</li>'; -} - -if ($website) { - $plugin_footer .= "<li><a href=\"$website\">" . elgg_echo('admin:plugins:plugin_website') . '</a></li>'; -} - -if (elgg_view_exists("settings/$plugin_id/edit")) { - $settings_href = elgg_get_site_url() . "admin/plugin_settings/$plugin_id"; - $plugin_footer .= "<li><a class='plugin_settings link' href='$settings_href'>" . elgg_echo('settings') . "</a></li>"; -} - -$plugin_footer .= "</ul>"; - -echo <<<___END - <div class="elgg-plugin $active_class elgg-grid"> - <div class="elgg-col elgg-col-1of5"> - <input type="checkbox" id="$plugin_guid" $checked $disabled name="active_plugin_guids[]" value="$plugin_guid"/> - <label for="$plugin_guid">$name</label> - </div> - <div class="elgg-col elgg-col-4of5"> - $description - $plugin_footer - </div> - </div> -___END; diff --git a/views/default/object/widget.php b/views/default/object/widget.php index f84c44e1c..0c7994f2b 100644 --- a/views/default/object/widget.php +++ b/views/default/object/widget.php @@ -55,8 +55,9 @@ if ($can_edit) { } $widget_header = <<<HEADER - <h3>$title</h3> + <div class="elgg-widget-handle clearfix"><h3>$title</h3> $controls + </div> HEADER; $widget_body = <<<BODY diff --git a/views/default/object/widget/elements/controls.php b/views/default/object/widget/elements/controls.php index 83a2f5767..57a935f62 100644 --- a/views/default/object/widget/elements/controls.php +++ b/views/default/object/widget/elements/controls.php @@ -6,41 +6,9 @@ * @uses $vars['show_edit'] Whether to show the edit button (true) */ -$widget = $vars['widget']; -$show_edit = elgg_extract('show_edit', $vars, true); - -$params = array( - 'text' => ' ', - 'href' => "#elgg-widget-content-$widget->guid", - 'class' => 'elgg-widget-collapse-button elgg-toggler', -); -$collapse_link = elgg_view('output/url', $params); - -$delete_link = $edit_link = ''; -if ($widget->canEdit()) { - $params = array( - 'text' => elgg_view_icon('delete-alt'), - 'title' => elgg_echo('widget:delete', array($widget->getTitle())), - 'href' => "action/widgets/delete?guid=$widget->guid", - 'is_action' => true, - 'class' => 'elgg-widget-delete-button', - 'id' => "elgg-widget-delete-button-$widget->guid" - ); - $delete_link = elgg_view('output/url', $params); - - if ($show_edit) { - $params = array( - 'text' => elgg_view_icon('settings-alt'), - 'title' => elgg_echo('widget:edit'), - 'href' => "#widget-edit-$widget->guid", - 'class' => "elgg-toggler elgg-widget-edit-button", - ); - $edit_link = elgg_view('output/url', $params); - } -} - -echo <<<___END - $collapse_link - $delete_link - $edit_link -___END; +echo elgg_view_menu('widget', array( + 'entity' => elgg_extract('widget', $vars), + 'show_edit' => elgg_extract('show_edit', $vars, true), + 'sort_by' => 'priority', + 'class' => 'elgg-menu-hz', +)); diff --git a/views/default/object/widget/elements/settings.php b/views/default/object/widget/elements/settings.php index 5afe56ed8..25cda58c9 100644 --- a/views/default/object/widget/elements/settings.php +++ b/views/default/object/widget/elements/settings.php @@ -6,8 +6,20 @@ */ $widget = elgg_extract('widget', $vars); + +// not using elgg_view_form() so that we can detect if the form is empty +$form_body = elgg_view('forms/widgets/save', $vars); +if (!$form_body) { + return true; +} + +$form = elgg_view('input/form', array( + 'action' => 'action/widgets/save', + 'body' => $form_body, + 'class' => 'elgg-form-widgets-save', +)); ?> <div class="elgg-widget-edit" id="widget-edit-<?php echo $widget->guid; ?>"> - <?php echo elgg_view_form('widgets/save', array(), $vars); ?> + <?php echo $form; ?> </div> |
