/** * Return a formatted list of links associated with $addon * @return string */ static function GetAddonSubLinks($addon = false) { global $config; $special_links = admin_tools::GetAddonTitles($addon); $admin_links = admin_tools::GetAddonComponents($config['admin_links'], $addon); $result = ''; foreach ($special_links as $linkName => $linkInfo) { $result .= '<li>'; $result .= common::Link($linkName, $linkInfo['label']); $result .= '</li>'; } foreach ($admin_links as $linkName => $linkInfo) { if (admin_tools::HasPermission($linkName)) { $result .= '<li>'; $result .= common::Link($linkName, $linkInfo['label']); $result .= '</li>'; } } return $result; }
function AddonPanel_Gadget($addon_key, $format) { global $langmessage, $config; $gadgets = admin_tools::GetAddonComponents($config['gadgets'], $addon_key); $links = array(); foreach ($gadgets as $name => $value) { $links[] = $this->GadgetLink($name); } $this->FormatList($links, $langmessage['gadgets'], $format); }
function ShowAddon($addon = false) { global $config, $langmessage; if ($addon === false) { $addon =& $_REQUEST['addon']; } if (!isset($config['addons'][$addon])) { message($langmessage['OOPS'] . '(s1)'); $this->Select(); return; } $cmd = common::GetCommand(); switch ($cmd) { case 'enable': case 'disable': $this->GadgetVisibility($addon, $cmd); break; /* case 'changeinstall': $this->ChangeInstallType($addon); break; case 'changeinstall_confirmed': $this->ChangeInstallConfirmed($addon); break; */ } $this->FindForm(); echo '<h2 class="hmargin">'; echo common::Link('Admin_Addons', $langmessage['Manage Plugins']); echo ' » '; echo $config['addons'][$addon]['name']; echo '</h2>'; echo '<table class="bordered" style="width:90%">'; //show Special Links $sublinks = admin_tools::GetAddonTitles($addon); if (!empty($sublinks)) { echo '<tr><th>'; echo 'Special Links'; echo '</th>'; echo '<th>'; echo $langmessage['options']; echo '</th></tr>'; foreach ($sublinks as $linkName => $linkInfo) { echo '<tr><td>'; echo common::Link($linkName, $linkInfo['label']); echo '</td>'; echo '<td>'; echo '-'; echo '</td></tr>'; } } //show Admin Links $sublinks = admin_tools::GetAddonComponents($config['admin_links'], $addon); if (!empty($sublinks)) { echo '<tr><th>'; echo 'Admin Links'; echo '</th>'; echo '<th>'; echo $langmessage['options']; echo '</th></tr>'; foreach ($sublinks as $linkName => $linkInfo) { echo '<tr><td>'; echo common::Link($linkName, $linkInfo['label']); echo '</td>'; echo '<td>'; echo '-'; echo '</td></tr>'; } } //show Gadgets $gadgets = admin_tools::GetAddonComponents($config['gadgets'], $addon); if (is_array($gadgets) && count($gadgets) > 0) { echo '<tr><th>'; echo $langmessage['gadgets']; echo '</th>'; echo '<th>'; echo $langmessage['options']; echo '</th></tr>'; foreach ($gadgets as $name => $value) { echo '<tr><td>'; echo str_replace('_', ' ', $name); echo '</td><td>'; if (isset($value['disabled'])) { echo common::Link('Admin_Addons', $langmessage['enable'], 'cmd=enable&addon=' . $addon . '&gadget=' . rawurlencode($name), ' name="creq" '); echo ' - '; echo '<b>' . $langmessage['disabled'] . '</b>'; } else { echo ' <b>' . $langmessage['enabled'] . '</b>'; echo ' - '; echo common::Link('Admin_Addons', $langmessage['disable'], 'cmd=disable&addon=' . $addon . '&gadget=' . rawurlencode($name), ' name="creq" '); } echo '</td></tr>'; } } //editable text if (isset($config['addons'][$addon]['editable_text']) && admin_tools::HasPermission('Admin_Theme_Content')) { echo '<tr><th>'; echo $langmessage['editable_text']; echo '</th>'; echo '<th>'; echo $langmessage['options']; echo '</th></tr>'; echo '<tr><td>'; echo $config['addons'][$addon]['editable_text']; echo '</td>'; echo '<td>'; echo common::Link('Admin_Theme_Content', $langmessage['edit'], 'cmd=addontext&addon=' . urlencode($addon), ' title="' . urlencode($langmessage['editable_text']) . '" name="gpabox" '); echo '</td></tr>'; } //hooks $hooks = admin_addons::AddonHooks($addon); if (count($hooks) > 0) { echo '<tr><th>'; echo 'Hooks'; echo '</th>'; echo '<th>'; echo $langmessage['options']; echo '</th></tr>'; foreach ($hooks as $name => $info) { echo '<tr><td>'; echo str_replace('_', ' ', $name); echo '</td><td>'; echo ' '; echo '</td></tr>'; } } echo '</table>'; if (!isset($config['addons'][$addon]['id'])) { return; } echo '<h3>' . $langmessage['rate_this_addon'] . '</h3>'; $id = $config['addons'][$addon]['id']; if (isset($this->addonReviews[$id])) { $review =& $this->addonReviews[$id]; $review += array('time' => time()); echo 'You posted the following review on ' . date('M j, Y', $review['time']); echo '<table cellpadding="7">'; echo '<tr>'; echo '<td>'; echo 'Rating'; echo '</td>'; echo '<td>'; $this->ShowRating($id, $review['rating']); echo '</td>'; echo '</tr>'; echo '<tr>'; echo '<td>'; echo 'Review'; echo '</td>'; echo '<td>'; echo nl2br(htmlspecialchars($review['review'])); echo '</td>'; echo '</tr>'; echo '<tr>'; echo '<td>'; echo '</td>'; echo '<td>'; echo common::Link('Admin_Addons', 'Edit Review', 'cmd=rate&arg=' . $id); echo '</td>'; echo '</tr>'; echo '</table>'; } else { echo '<table cellpadding="7">'; echo '<tr>'; echo '<td>'; echo 'Rating'; echo '</td>'; echo '<td>'; $this->ShowRating($id, 5); echo '</td>'; echo '</tr>'; echo '</table>'; } }
function AddonPanel_Gadget($addon_key) { global $langmessage, $config; //show Gadgets $gadgets = admin_tools::GetAddonComponents($config['gadgets'], $addon_key); if (is_array($gadgets) && count($gadgets) > 0) { echo '<li class="expand_child_click">'; echo '<a>' . $langmessage['gadgets'] . ' (' . count($gadgets) . ')</a>'; echo '<ul>'; foreach ($gadgets as $name => $value) { echo '<li>'; echo $this->GadgetLink($name); echo '</li>'; } echo '</ul></li>'; } }