Location: PHPKode > scripts > Cisco IP Phone Framework > CiscoIPPhone/XMLServices/CiscoIPPhoneGraphicFileMenu.php
<?php
/*
 * This software is freely available and distributed under the Mozilla Public
 * License agreement (MPL).   A copy of the MPL may obtain at
 * http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
 * the specific language governing rights and limitations under the License.
 *
 * Original code by Minded Software Solutions (http://minded.ca/)
 * Initial Developer - Tyler Winfield
 * Copyright (C) Minded Software Solutions.  All Rights Reserved.
 */

/**
 * CiscoIPPhoneGraphicFileMenu
 *   service class for building graphic file menu objects
 *
 * @author twinfield
 */
require_once('CiscoIPPhone/XMLServices/CiscoIPPhoneMenu.php');

class CiscoIPPhoneGraphicFileMenu extends CiscoIPPhoneMenu
{
    public function __construct()
    {
        parent::__construct();
        $this->service = new DOMDocument('1.0', 'utf-8');
        $this->service->appendChild($this->service->createElement('CiscoIPPhoneGraphicFileMenu'));
    }

    public function addItem($name, $url, $area)
    {
        $menuItem = new CiscoXMLMenuItem();
        $menuItem->setName($name);
        $menuItem->setURL($url);
        if(is_array($area) && count($area) == 4)
            $menuItem->setTouchArea($area[0], $area[1], $area[2], $area[3]);

        if(!$this->hasItem($menuItem))
            $this->insertItem($menuItem);
    }

    public function setImageURL($url)
    {
        if($this->service->getElementsByTagName('URL')->length > 0) {
            $this->service->getElementsByTagName('URL')->item(0)->nodeValue = htmlspecialchars($url);
        } else {
            $this->service->documentElement->appendChild($this->service->createElement('URL', htmlspecialchars($url)));
        }
    }

    public function setPosition($x, $y)
    {
        if($this->service->getElementsByTagName('LocationX')->length > 0) {
            $this->service->getElementsByTagName('LocationX')->item(0)->nodeValue = (string)$x;
        } else {
            $this->service->documentElement->appendChild($this->service->createElement('LocationX', (string)$x));
        }

        if($this->service->getElementsByTagName('LocationY')->length > 0) {
            $this->service->getElementsByTagName('LocationY')->item(0)->nodeValue = (string)$y;
        } else {
            $this->service->documentElement->appendChild($this->service->createElement('LocationY', (string)$y));
        }
    }
}
?>
Return current item: Cisco IP Phone Framework