当前位置: 首页>>代码示例>>PHP>>正文


PHP Plugin类代码示例

本文整理汇总了PHP中Plugin的典型用法代码示例。如果您正苦于以下问题:PHP Plugin类的具体用法?PHP Plugin怎么用?PHP Plugin使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Plugin类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: showAllItems

 static function showAllItems($myname, $value_type = 0, $value = 0, $entity_restrict = -1, $types, $locations_id = -1, $action = 'showItem')
 {
     global $DB, $CFG_GLPI;
     $rand = mt_rand();
     $plugin = new Plugin();
     echo "<table border='0'><tr><td>\n";
     if ($myname == 'type') {
         $newtypes = array_flip($types);
         unset($newtypes['Location']);
         unset($newtypes['Netpoint']);
         if ($plugin->isActivated("resources")) {
             unset($newtypes['PluginResourcesResource']);
         }
         $types = array_flip($newtypes);
     }
     $rand = Dropdown::showItemTypes($myname, $types, array('emptylabel' => Dropdown::EMPTY_VALUE, 'width' => 150));
     $params = array('type' => '__VALUE__', 'value' => $value, 'myname' => $myname, 'action' => $action, 'entity_restrict' => $entity_restrict, 'locations_id' => $locations_id);
     Ajax::updateItemOnSelectEvent("dropdown_{$myname}{$rand}", "show_{$myname}{$rand}", $CFG_GLPI["root_doc"] . "/plugins/positions/ajax/dropdownAllItems.php", $params);
     echo "</td><td>\n";
     echo "<span id='show_{$myname}{$rand}'>&nbsp;</span>\n";
     echo "</td></tr></table>\n";
     if ($value > 0) {
         echo "<script type='text/javascript' >\n";
         echo "document.getElementById('item_type{$rand}').value='" . $value_type . "';";
         echo "</script>\n";
         $params["typetable"] = $value_type;
         Ajax::updateItem("show_{$myname}{$rand}", $CFG_GLPI["root_doc"] . "/plugins/positions/ajax/dropdownAllItems.php", $params);
     }
     return $rand;
 }
开发者ID:nsautier,项目名称:positions,代码行数:30,代码来源:imageitem.class.php

示例2: testPlugin

 public function testPlugin()
 {
     $pl = new Plugin(123, 'A Plugin', true);
     $this->assertEquals(123, $pl->getID());
     $this->assertEquals('A Plugin', $pl->getName());
     $this->assertEquals(true, $pl->isActive());
 }
开发者ID:picolino0,项目名称:BreezedCMS,代码行数:7,代码来源:coreTest.php

示例3: plugin_init_uninstall

/**
 * Function Init
 */
function plugin_init_uninstall()
{
    global $PLUGIN_HOOKS, $CFG_GLPI, $UNINSTALL_TYPES, $UNINSTALL_DIRECT_CONNECTIONS_TYPE;
    $PLUGIN_HOOKS['csrf_compliant']['uninstall'] = true;
    Plugin::registerClass('PluginUninstallPreference', array('addtabon' => array('Preference')));
    Plugin::registerClass('PluginUninstallProfile', array('addtabon' => array('Profile')));
    $plugin = new Plugin();
    if ($plugin->isActivated('uninstall')) {
        $UNINSTALL_TYPES = array('Computer', 'Monitor', 'NetworkEquipment', 'Peripheral', 'Phone', 'Printer');
        $UNINSTALL_DIRECT_CONNECTIONS_TYPE = array('Monitor', 'Peripheral', 'Phone', 'Printer');
        if (Session::getLoginUserID()) {
            if (Session::haveRight(PluginUninstallProfile::$rightname, READ)) {
                $PLUGIN_HOOKS['use_massive_action']['uninstall'] = true;
                if (Session::haveRight('uninstall:profile', READ)) {
                    // Add link in GLPI plugins list :
                    $PLUGIN_HOOKS["menu_toadd"]['uninstall'] = array('admin' => 'PluginUninstallModel');
                    // add to 'Admin' menu :
                    $PLUGIN_HOOKS['config_page']['uninstall'] = "front/model.php";
                }
                //Item actions
                $PLUGIN_HOOKS['item_update']['uninstall'] = array('PluginUninstallModel' => array('PluginUninstallPreference', 'afterUpdateModel'));
                $PLUGIN_HOOKS['item_delete']['uninstall'] = array('PluginUninstallModel' => array('PluginUninstallPreference', 'beforeItemPurge'));
                $PLUGIN_HOOKS['pre_item_purge']['uninstall'] = array('User' => array('PluginUninstallPreference', 'beforeItemPurge'));
            }
        }
        $PLUGIN_HOOKS['post_init']['uninstall'] = 'plugin_uninstall_postinit';
    }
}
开发者ID:pluginsGLPI,项目名称:uninstall,代码行数:31,代码来源:setup.php

示例4: plugin_init_customfields

/**
 * Initialize the plugin's hooks
 */
function plugin_init_customfields()
{
    global $PLUGIN_HOOKS, $DB, $ACTIVE_CUSTOMFIELDS_TYPES, $ALL_CUSTOMFIELDS_TYPES;
    $PLUGIN_HOOKS['csrf_compliant']['customfields'] = true;
    $PLUGIN_HOOKS['change_profile']['customfields'] = array('PluginCustomfieldsProfile', 'changeprofile');
    // Register classes
    Plugin::registerClass('PluginCustomfieldsDropdowns');
    Plugin::registerClass('PluginCustomfieldsFields');
    if (isset($_SESSION['glpiID'])) {
        $plugin = new Plugin();
        if ($plugin->isInstalled("customfields") && $plugin->isActivated("customfields")) {
            // enable a tab for reading / setting access rights for the plugin
            Plugin::registerClass('PluginCustomfieldsProfile', array('addtabon' => 'Profile'));
            // Display a menu entry in the main menu if the user has
            // configuration rights
            if (Session::haveRight('config', UPDATE)) {
                //             $PLUGIN_HOOKS['menu_entry']['customfields'] = true;
                $PLUGIN_HOOKS["menu_toadd"]['customfields'] = array('plugins' => 'PluginCustomfieldsConfig');
            }
            // initiate empty dropdowns
            $PLUGIN_HOOKS['item_empty']['customfields'] = array('PluginCustomfieldsDropdownsItem' => 'PluginCustomfieldsDropdownsItem::item_empty');
        }
        // Indicate where the configuration page can be found
        if (Session::haveRight('config', UPDATE)) {
            $PLUGIN_HOOKS['config_page']['customfields'] = 'front/config.form.php';
        }
        // Hook for initialization after initialization of all other plugins
        $PLUGIN_HOOKS['post_init']['customfields'] = 'plugin_customfields_postinit';
    }
}
开发者ID:blerohellec,项目名称:customfields,代码行数:33,代码来源:setup.php

示例5: plugin_fields_checkFiles

function plugin_fields_checkFiles()
{
    $plugin = new Plugin();
    if (isset($_SESSION['glpiactiveentities']) && $plugin->isInstalled('fields') && $plugin->isActivated('fields')) {
        Plugin::registerClass('PluginFieldsContainer');
        Plugin::registerClass('PluginFieldsDropdown');
        Plugin::registerClass('PluginFieldsField');
        if (TableExists("glpi_plugin_fields_containers")) {
            $container_obj = new PluginFieldsContainer();
            $containers = $container_obj->find();
            foreach ($containers as $container) {
                $classname = "PluginFields" . ucfirst($container['itemtype'] . preg_replace('/s$/', '', $container['name']));
                if (!class_exists($classname)) {
                    PluginFieldsContainer::generateTemplate($container);
                }
            }
        }
        if (TableExists("glpi_plugin_fields_fields")) {
            $fields_obj = new PluginFieldsField();
            $fields = $fields_obj->find("`type` = 'dropdown'");
            foreach ($fields as $field) {
                PluginFieldsDropdown::create($field);
            }
        }
    }
}
开发者ID:publik1974,项目名称:fields,代码行数:26,代码来源:setup.php

示例6: plugin_init_certificates

function plugin_init_certificates()
{
    global $PLUGIN_HOOKS;
    $PLUGIN_HOOKS['csrf_compliant']['certificates'] = true;
    $PLUGIN_HOOKS['change_profile']['certificates'] = array('PluginCertificatesProfile', 'initProfile');
    $PLUGIN_HOOKS['assign_to_ticket']['certificates'] = true;
    if (Session::getLoginUserID()) {
        // Params : plugin name - string type - number - attributes
        Plugin::registerClass('PluginCertificatesCertificate', array('linkgroup_tech_types' => true, 'linkuser_tech_types' => true, 'document_types' => true, 'helpdesk_visible_types' => true, 'ticket_types' => true, 'contract_types' => true, 'notificationtemplates_types' => true));
        Plugin::registerClass('PluginCertificatesConfig', array('addtabon' => 'CronTask'));
        Plugin::registerClass('PluginCertificatesProfile', array('addtabon' => 'Profile'));
        if (class_exists('PluginAccountsAccount')) {
            PluginAccountsAccount::registerType('PluginCertificatesCertificate');
        }
        $plugin = new Plugin();
        if (!$plugin->isActivated('environment') && Session::haveRight("plugin_certificates", READ)) {
            $PLUGIN_HOOKS['menu_toadd']['certificates'] = array('assets' => 'PluginCertificatesMenu');
        }
        if (Session::haveRight("plugin_certificates", UPDATE)) {
            $PLUGIN_HOOKS['use_massive_action']['certificates'] = 1;
        }
        // End init, when all types are registered
        $PLUGIN_HOOKS['post_init']['certificates'] = 'plugin_certificates_postinit';
    }
}
开发者ID:paisdelconocimiento,项目名称:glpi-smartcities,代码行数:25,代码来源:setup.php

示例7: getItemtypes

 /**
  * Return all injectable types
  *
  * @param $only_primary    return only primary types (false by default)
  *
  * @return an array which contains array(itemtype => itemtype name)
  **/
 static function getItemtypes($only_primary = false)
 {
     global $INJECTABLE_TYPES;
     getTypesToInject();
     $plugin = new Plugin();
     $values = array();
     foreach ($INJECTABLE_TYPES as $type => $from) {
         $injectionclass = new $type();
         if (class_exists($type) && (!$only_primary || $only_primary && $injectionclass->isPrimaryType())) {
             $instance = new $type();
             //If user has no right to create an object of this type, do not display type in the list
             if (!$instance->canCreate()) {
                 continue;
             }
             $typename = get_parent_class($type);
             $name = '';
             if ($from != 'datainjection') {
                 $plugin->getFromDBbyDir($from);
                 $name = $plugin->getName() . ': ';
             }
             $name .= call_user_func(array($type, 'getTypeName'));
             $values[$typename] = $name;
         }
     }
     asort($values);
     return $values;
 }
开发者ID:JULIO8,项目名称:respaldo_glpi,代码行数:34,代码来源:injectiontype.class.php

示例8: showSummary

 static function showSummary()
 {
     echo "<div class='center'><table class='tab_cadre' cellpadding='5' width='50%'>";
     echo "<tr><th>" . __('Summary') . "</th></tr>";
     if (countElementsInTable('glpi_plugin_archires_views', "`entities_id`='" . $_SESSION["glpiactive_entity"] . "'") > 0) {
         echo "<tr class='tab_bg_1'><td>";
         echo "<a href='view.php'>" . PluginArchiresView::getTypeName(2) . "</a>";
         echo "</td></tr>";
         echo "<tr class='tab_bg_1'><td>";
         echo "<a href='locationquery.php'>" . sprintf(__('%1$s - %2$s'), self::getTypeName(1), PluginArchiresLocationQuery::getTypeName(1)) . "</a>";
         echo "</td></tr>";
         echo "<tr class='tab_bg_1'><td>";
         echo "<a href='networkequipmentquery.php'>" . sprintf(__('%1$s - %2$s'), self::getTypeName(1), PluginArchiresNetworkEquipmentQuery::getTypeName(1)) . "</a>";
         echo "</td></tr>";
         $plugin = new Plugin();
         if ($plugin->isActivated("appliances")) {
             echo "<tr class='tab_bg_1'><td>";
             echo "<a href='appliancequery.php'>" . sprintf(__('%1$s - %2$s'), self::getTypeName(1), PluginAppliancesAppliance::getTypeName(1)) . "</a>";
             echo "</td></tr>";
         }
     } else {
         echo "<tr class='tab_bg_1'><td>";
         echo "<a href='view.form.php?new=1'>" . __('Add view', 'archires') . "</a>";
         echo "</td></tr>";
     }
     echo "</table></div>";
 }
开发者ID:geldarr,项目名称:hack-space,代码行数:27,代码来源:archires.class.php

示例9: override_templates

 /**
  * Decide which template file to load
  */
 public function override_templates()
 {
     $this->queried_object = get_queried_object();
     if (is_post_type_archive(Plugin::POST_TYPE_NAME)) {
         // load template for a single page
         $custom_archive_page_id = $this->wpkb->get_option('custom_archive_page_id');
         if ($custom_archive_page_id > 0) {
             // if we're using a custom archive page, that one should be used
             $archive_link = get_permalink($custom_archive_page_id);
             if ($archive_link !== get_post_type_archive_link(Plugin::POST_TYPE_NAME)) {
                 wp_redirect($archive_link);
                 exit;
             }
         } else {
             add_filter('archive_template', array($this, 'set_archive_template'));
         }
     } elseif (is_tax(Plugin::TAXONOMY_CATEGORY_NAME)) {
         // choose "category" archive template to load
         add_filter('taxonomy_template', array($this, 'set_taxonomy_category_template'));
     } elseif (is_tax(Plugin::TAXONOMY_KEYWORD_NAME)) {
         // choose "keyword" archive template to load
         add_filter('taxonomy_template', array($this, 'set_taxonomy_keyword_template'));
     } elseif (is_singular(Plugin::POST_TYPE_NAME)) {
         // choose template to load for singular docs
         add_filter('single_template', array($this, 'set_single_template'));
         add_filter('wp_footer', array($this, 'print_js_helpers'));
         add_filter('wp_head', array($this, 'print_css_helpers'));
     }
 }
开发者ID:barrykooij,项目名称:wp-knowledge-base,代码行数:32,代码来源:TemplateManager.php

示例10: flush_rewrites

/**
 * Plugin activation callback function.
 *
 * On plugin registration check is Woocommerce is active ( If not disable shop by look plugin because its Woocommerce dependent ).
 * Instantiate Plugin class to boot all base plugin hooks, also do flush of rewrite rules in order to have proper url rewrite for custom post type.
 *
 * @return void
 */
function flush_rewrites()
{
    check_is_woocommerce_is_active();
    $plugin = new Plugin();
    $plugin->register_post_type();
    flush_rewrite_rules();
}
开发者ID:s7web,项目名称:shopByLook,代码行数:15,代码来源:shop-by-look.php

示例11: get_plugin

/**
 * Returns the main plugin container or a specific property within
 *
 * @param string $plugin_part the part of the plugin to return
 *
 * @throws \Exception when the requested property cannot be found
 *
 * @return mixed Returns the requested property, or the main plugin if nothing more specific requested
 */
function get_plugin($plugin_part = null)
{
    static $plugin;
    if (empty($plugin)) {
        $plugin = new Plugin();
        $plugin->setup(__FILE__);
    }
    if (!is_null($plugin_part)) {
        $current_class = $plugin;
        $classes = explode('.', $plugin_part);
        $property = array_pop($classes);
        // Find the innermost class
        if (!empty($classes)) {
            foreach ($classes as $class) {
                if (property_exists($current_class, $class)) {
                    if (!is_object($current_class->{$class})) {
                        $current_class_name = get_class($current_class);
                        throw new \Exception("{$class} is not an object within {$current_class_name}");
                    }
                    $current_class = $current_class->{$class};
                }
            }
        }
        // Get the property, now that we have the innermost class
        if (!property_exists($current_class, $property)) {
            $current_class_name = get_class($current_class);
            throw new \Exception("{$property} is not a part of {$current_class_name}");
        }
        return $current_class->{$property};
    }
    return $plugin;
}
开发者ID:cmmarslender,项目名称:shortcode-cleaner,代码行数:41,代码来源:shortcode-cleaner.php

示例12: plugin_init_pdf

function plugin_init_pdf()
{
    global $PLUGIN_HOOKS;
    $PLUGIN_HOOKS['csrf_compliant']['pdf'] = true;
    Plugin::registerClass('PluginPdfProfile', array('addtabon' => 'Profile'));
    Plugin::registerClass('PluginPdfPreference', array('addtabon' => 'Preference'));
    $PLUGIN_HOOKS['change_profile']['pdf'] = array('PluginPdfProfile', 'changeprofile');
    $PLUGIN_HOOKS['pre_item_purge']['pdf'] = array('Profile' => array('PluginPdfProfile', 'cleanProfile'));
    $PLUGIN_HOOKS['item_clone']['pdf'] = array('Profile' => array('PluginPdfProfile', 'cloneProfile'));
    $plugin = new Plugin();
    if ($plugin->isActivated("datainjection")) {
        $PLUGIN_HOOKS['menu_entry']['pdf'] = 'front/preference.form.php';
    }
    if (isset($_SESSION["glpi_plugin_pdf_profile"]) && $_SESSION["glpi_plugin_pdf_profile"]["use"]) {
        $PLUGIN_HOOKS['use_massive_action']['pdf'] = 1;
        // Define the type for which we know how to generate PDF :
        $PLUGIN_HOOKS['plugin_pdf']['Computer'] = 'PluginPdfComputer';
        $PLUGIN_HOOKS['plugin_pdf']['Group'] = 'PluginPdfGroup';
        $PLUGIN_HOOKS['plugin_pdf']['KnowbaseItem'] = 'PluginPdfKnowbaseItem';
        $PLUGIN_HOOKS['plugin_pdf']['Monitor'] = 'PluginPdfMonitor';
        $PLUGIN_HOOKS['plugin_pdf']['NetworkEquipment'] = 'PluginPdfNetworkEquipment';
        $PLUGIN_HOOKS['plugin_pdf']['Peripheral'] = 'PluginPdfPeripheral';
        $PLUGIN_HOOKS['plugin_pdf']['Phone'] = 'PluginPdfPhone';
        $PLUGIN_HOOKS['plugin_pdf']['Printer'] = 'PluginPdfPrinter';
        $PLUGIN_HOOKS['plugin_pdf']['Software'] = 'PluginPdfSoftware';
        $PLUGIN_HOOKS['plugin_pdf']['SoftwareLicense'] = 'PluginPdfSoftwareLicense';
        $PLUGIN_HOOKS['plugin_pdf']['SoftwareVersion'] = 'PluginPdfSoftwareVersion';
        $PLUGIN_HOOKS['plugin_pdf']['Ticket'] = 'PluginPdfTicket';
        // End init, when all types are registered by all plugins
        $PLUGIN_HOOKS['post_init']['pdf'] = 'plugin_pdf_postinit';
    }
}
开发者ID:geldarr,项目名称:hack-space,代码行数:32,代码来源:setup.php

示例13: plugin_init_surveyticket

function plugin_init_surveyticket()
{
    global $PLUGIN_HOOKS;
    $PLUGIN_HOOKS['csrf_compliant']['surveyticket'] = true;
    if (isset($_SESSION["glpiID"])) {
        $plugin = new Plugin();
        if ($plugin->isActivated('surveyticket')) {
            Plugin::registerClass('PluginSurveyticketProfile', array('addtabon' => array('Profile')));
            $PLUGIN_HOOKS['change_profile']['surveyticket'] = array('PluginSurveyticketProfile', 'changeprofile');
            PluginSurveyticketProfile::changeprofile();
            if (PluginSurveyticketProfile::haveRight("config", 'r')) {
                $PLUGIN_HOOKS['menu_entry']['surveyticket'] = true;
                $PLUGIN_HOOKS['config_page']['surveyticket'] = 'front/menu.php';
            }
            $PLUGIN_HOOKS['post_init']['surveyticket'] = 'plugin_surveyticket_post_init';
        }
        // Icons add, search...
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['add']['questions'] = 'front/question.form.php?add=1';
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['search']['questions'] = 'front/question.php';
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['add']['survey'] = 'front/survey.form.php?add=1';
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['search']['survey'] = 'front/survey.php';
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['add']['answers'] = 'front/answer.form.php?add=1';
        // Fil ariane
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['options']['questions']['title'] = "Questions";
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['options']['questions']['page'] = '/plugins/surveyticket/front/question.php';
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['options']['answers']['title'] = "Answers";
        //         $PLUGIN_HOOKS['submenu_entry']['surveyticket']['options']['answers']['page']  = '/plugins/surveyticket/front/answer.php';
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['options']['survey']['title'] = "Surveys";
        $PLUGIN_HOOKS['submenu_entry']['surveyticket']['options']['survey']['page'] = '/plugins/surveyticket/front/survey.php';
    }
}
开发者ID:geldarr,项目名称:hack-space,代码行数:31,代码来源:setup.php

示例14: plugin_init_formcreator

/**
 * Initialize all classes and generic variables of the plugin
 */
function plugin_init_formcreator()
{
    global $PLUGIN_HOOKS;
    // Add specific CSS
    $PLUGIN_HOOKS['add_css']['formcreator'][] = "css/styles.css";
    if (strpos($_SERVER['REQUEST_URI'], "front/helpdesk.public.php") !== false) {
        $PLUGIN_HOOKS['add_javascript']['formcreator'][] = 'scripts/helpdesk.js';
    } elseif (strpos($_SERVER['REQUEST_URI'], "front/central.php") !== false) {
        $PLUGIN_HOOKS['add_javascript']['formcreator'][] = 'scripts/homepage.js';
    }
    if (isset($_SESSION['glpiactiveprofile'])) {
        if ($_SESSION['glpiactiveprofile']['interface'] == 'helpdesk') {
            $PLUGIN_HOOKS['add_javascript']['formcreator'][] = 'scripts/helpdesk-menu.js';
        }
    }
    $PLUGIN_HOOKS['add_javascript']['formcreator'][] = 'scripts/forms-validation.js.php';
    // Set the plugin CSRF compliance (required in GLPI 0.84)
    $PLUGIN_HOOKS['csrf_compliant']['formcreator'] = true;
    // Add a link in the main menu plugins for technician and admin panel
    $PLUGIN_HOOKS['menu_entry']['formcreator'] = 'front/formlist.php';
    // Config page
    $plugin = new Plugin();
    $links = array();
    if (Session::haveRight('config', 'w') && $plugin->isActivated("formcreator")) {
        $PLUGIN_HOOKS['config_page']['formcreator'] = 'front/form.php';
        $links['config'] = '/plugins/formcreator/front/form.php';
        $links['add'] = '/plugins/formcreator/front/form.form.php';
    }
    // Set options for pages (title, links, buttons...)
    $links['search'] = '/plugins/formcreator/front/formlist.php';
    $PLUGIN_HOOKS['submenu_entry']['formcreator']['options'] = array('config' => array('title' => __('Setup'), 'page' => '/plugins/formcreator/front/form.php', 'links' => $links), 'options' => array('title' => _n('Form', 'Forms', 2, 'formcreator'), 'links' => $links));
    // Load field class and all its method to manage fields
    Plugin::registerClass('PluginFormcreatorFields');
}
开发者ID:nicholaseduardo,项目名称:formcreator,代码行数:37,代码来源:setup.php

示例15: enablePluginBasedService

 public function enablePluginBasedService(Plugin $plugin)
 {
     $plugin_based_service = $plugin->getServiceShortname();
     if ($plugin_based_service) {
         $this->list_of_plugin_based_services[] = $plugin_based_service;
     }
 }
开发者ID:uniteddiversity,项目名称:tuleap,代码行数:7,代码来源:ServiceManager.class.php


注:本文中的Plugin类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。