Вход Регистрация
Файл: plugins/photo/components/edit_photo.php
Строк: 139
<?php

class PHOTO_CMP_EditPhoto extends PEEP_Component
{
    public function 
__construct$photoId )
    {
        
parent::__construct();

        if ( (
$photo PHOTO_BOL_PhotoDao::getInstance()->findById($photoId)) === NULL ||
            (
$album PHOTO_BOL_PhotoAlbumDao::getInstance()->findById($photo->albumId)) === null ||
            !(
$album->userId == PEEP::getUser()->getId() || PEEP::getUser()->isAuthorized('photo')) )
        {
            
$this->setVisible(FALSE);
            
            return;
        }
        
        
$this->addForm(new PHOTO_CLASS_EditForm($photo->id));
        
        
$cnewsAlbum PHOTO_BOL_PhotoAlbumService::getInstance()->getCnewsAlbum($album->userId);
        
$exclude = array();
        
        if ( !empty(
$cnewsAlbum) )
        {
            
$exclude[] = $cnewsAlbum->id;
        }

        
$this->addComponent('albumNameList'PEEP::getClassInstance('PHOTO_CMP_AlbumNameList'PEEP::getUser()->getId(), $exclude));
        
$language PEEP::getLanguage();
        
        
PEEP::getDocument()->addOnloadScript(
            
UTIL_JsGenerator::composeJsString(';var panel = $(document.getElementById("photo_edit_form"));
                var albumList = $(".peep_dropdown_list", panel);
                var albumInput = $("input[name='
album']", panel);
                var album = {$album};
                var hideAlbumList = function()
                {
                    albumList.hide();
                    $(".upload_photo_spinner", panel).removeClass("peep_dropdown_arrow_up").addClass("peep_dropdown_arrow_down");
                };
                var showAlbumList = function()
                {
                    albumList.show();
                    $(".upload_photo_spinner", panel).removeClass("peep_dropdown_arrow_down").addClass("peep_dropdown_arrow_up");
                };

                $(".upload_photo_spinner", panel).add(albumInput).on("click", function( event )
                {
                    if ( albumList.is(":visible") )
                    {
                        hideAlbumList();
                    }
                    else
                    {
                        showAlbumList();
                    }

                    event.stopPropagation();
                });

                albumList.find("li").on("click", function()
                {
                    hideAlbumList();
                    peepForms["photo-edit-form"].removeErrors();
                }).eq(0).on("click", function()
                {
                    albumInput.val({$create_album});
                    $(".new-album", panel).show();
                    $("input[name='
album-name']", panel).val({$album_name});
                    $("textarea", panel).val({$album_desc});
                }).end().slice(2).on("click", function()
                {
                    albumInput.val($(this).data("name"));
                    $(".new-album", panel).hide();
                    $("input[name='
album-name']", panel).val(albumInput.val());
                    $("textarea", panel).val("");
                });

                $(document).on("click", function( event )
                {
                    if ( event.target.id === "ajax-upload-album" )
                    {
                        event.stopPropagation();

                        return false;
                    }

                    hideAlbumList();
                });
                
                PEEP.bind("base.onFormReady.photo-edit-form", function()
                {
                    if ( album.name == {$cnewsAlbumName} )
                    {
                        this.getElement("album-name").validators.length = 0;
                        this.getElement("album-name").addValidator({
                            validate : function( value ){
                            if(  $.isArray(value) ){ if(value.length == 0  ) throw {$required}; return;}
                            else if( !value || $.trim(value).length == 0 ){ throw {$required}; }
                            },
                            getErrorMessage : function(){ return {$required} }
                        });
                        this.bind("submit", function()
                        {
                            
                        });
                    }
                });
                '
            
,
            array(
                
'create_album' => $language->text('photo''create_album'),
                
'album_name' => $language->text('photo''album_name'),
                
'album_desc' => $language->text('photo''album_desc'),
                
'album' => get_object_vars($album),
                
'cnewsAlbumName' => PEEP::getLanguage()->text('photo''cnews_album'),
                
'required' => PEEP::getLanguage()->text('base''form_validator_required_error_message')
            ))
        );
    }
}
Онлайн: 1
Реклама