示例#1
0
    public function display()
    {
        jimport('joomla.filesystem.folder');
        jimport('joomla.filesystem.file');
        // path to images directory
        $identifier = KFactory::get($this->getModel())->getIdentifier();
        $path = JPATH_ROOT . DS . 'media' . DS . $identifier->type . '_' . $identifier->package . DS . 'images' . DS . 'forums';
        $filter = '\\.png$|\\.gif$|\\.jpg$|\\.bmp$|\\.ico$';
        $files = JFolder::files($path, $filter, true, true);
        $options = array();
        $options[] = JHTML::_('select.option', null, JText::_('None'));
        $img[] = $this->mediaurl . '/napi/img/blank.gif';
        $optgroup = null;
        if (is_array($files)) {
            foreach ($files as $file) {
                $f = basename(dirname($file));
                $options[] = JHTML::_('select.option', basename($file), basename($file));
                $img[] = $this->mediaurl . '/' . $identifier->type . '_' . $identifier->package . '/images/forums/' . basename($file);
            }
        }
        $document = Kfactory::get('lib.joomla.document');
        $script = 'var ' . $identifier->name . 'Images = new Asset.images(' . json_encode((array) $img) . ', {
		    onComplete: function(){
		    	$(\'icon_preview\').empty(); ' . $identifier->name . 'Images[$(\'icon\').selectedIndex].clone().injectInside(\'icon_preview\');
		    }
		});';
        //$document->addScriptDeclaration($script);
        $this->assign('options', $options);
        $this->assign('attr', array('onchange' => '$(\'icon_preview\').empty(); ' . $identifier->name . 'Images[this.selectedIndex].clone().injectInside(\'icon_preview\')'));
        $forums = array(0 => (object) array('title' => '- No parent -', 'path' => '/'));
        $state = $this->getModel()->getState();
        $this->sort = $state->sort ? $state->sort : 'title';
        $this->direction = $state->direction;
        $list = KFactory::tmp($this->getModel()->getIdentifier())->limit(0)->sort('path_sort_ordering')->enabled('')->getList();
        $id = $this->getModel()->getItem()->id;
        foreach ($list as $forum) {
            if ($forum->id === $id && $id > 0) {
                $forum->disable = true;
            }
            $forum->path .= $forum->id . '/';
            $pos = strpos($forum->path, '/' . $id . '/');
            if ($pos !== false && $pos >= 0 && $id > 0) {
                $forum->disable = true;
            }
            $forum->title = str_repeat('    ', $forum->level) . $forum->title;
            $forums[] = $forum->getData();
        }
        $this->assign('forums', $forums);
        $filepath = dirname($this->getIdentifier()->filepath) . '/tmpl/params.xml';
        $model = KFactory::get($this->getModel());
        $forum = $model->getItem();
        $this->form = KFactory::tmp('admin::com.ninja.form.parameter', array('data' => $forum->params, 'xml' => $filepath));
        $this->assign('total', $model->getTotal());
        $permissions = array();
        foreach (KFactory::get('admin::com.ninjaboard.model.user_groups')->limit(0)->getList() as $usergroup) {
            $names = array();
            $objects = KFactory::get('admin::com.ninjaboard.permissions')->getObjects();
            foreach ($objects as $object) {
                $names[] = 'com_ninjaboard.forum.' . $forum->id . '.' . $usergroup->id . '.' . $object;
            }
            $permissions[] = array('form' => KFactory::tmp('admin::com.ninja.helper.access', array('name' => $names, 'id' => KFactory::get('admin::com.ninja.helper.default')->formid($forum->id . '-permissions-' . $usergroup->id), 'inputName' => 'permissions[' . $usergroup->id . ']', 'inputId' => 'permissions-' . $usergroup->id, 'render' => 'usergroups', 'objects' => $objects)), 'title' => $usergroup->title, 'group' => $usergroup->id, 'id' => KFactory::get('admin::com.ninja.helper.default')->formid($forum->id . '-permissions-' . $usergroup->id));
        }
        $this->assign('permissions', $permissions);
        return parent::display();
    }
示例#2
0
    public function imagesgeneric($path, $name, $attribs = null, $selected = NULL, $idtag = false, $translate = false)
    {
        $images = KFactory::get('admin::com.ninja.model.images')->folder($path);
        $options = $images->getList();
        $img = $images->getImages();
        if (!$idtag) {
            $idtag = $name;
        }
        //die('<pre>'.var_export($img, true).'</pre>');
        $document = Kfactory::get('lib.joomla.document');
        $document->addScriptDeclaration('var ' . $idtag . 'Images = new Asset.images(' . json_encode((array) $img) . ', {
    onComplete: function(){
    	$(\'rank_image_preview\').empty(); ' . $idtag . 'Images[$(\'' . $idtag . '\').selectedIndex].clone().injectInside(\'rank_image_preview\');
    }
});');
        $attr = array('onchange' => '$(\'rank_image_preview\').empty(); ' . $idtag . 'Images[this.selectedIndex].clone().injectInside(\'rank_image_preview\')', 'class' => 'value', 'style' => 'display: block;');
        $document->addStyleDeclaration('.group.images {text-align: center; padding-right: 1px !important;
		padding-bottom: 1px !important;}
		.group.images select { width:100%; min-width: 60px; margin-top: 2px!important ; }');
        ob_start();
        ?>
		<div class="group images">
			
			
			<div id="rank_image_preview"><img src="<?php 
        echo KTemplateAbstract::loadHelper('admin::com.ninja.helper.default.image', '/16/spinner.gif');
        ?>
" /></div>
			
			<?php 
        echo JHTML::_('genericlist', $options, $name, $attr, 'value', 'text', $selected);
        ?>
		</div>
		
	<?php 
        return ob_get_clean();
    }