• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Zend Lab
 

Zend Lab

on

  • 541 views

Zend Lab

Zend Lab
http://leonguyen.com

Statistics

Views

Total Views
541
Views on SlideShare
508
Embed Views
33

Actions

Likes
2
Downloads
5
Comments
0

1 Embed 33

http://codeigniter.leonguyen.com 33

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Zend Lab Zend Lab Presentation Transcript

    • Zend Lableonguyen.com
    • Features- Purpose: An open source Zend CMS- GUI: Bootstrap + jQuery + Dojo- Technology: Zend 2 + Node.js + NoSQL
    • Modules- Content:+ News, Media (Photo-Video|Infographic-Mindmap), Slide+ Products-Cart, Vote-Survey-Chat, Form+App- Channel:+ Web, Tablet, Mobile, Email, SMS, Print
    • Design- Logo & Icon- Color scheme & Pattern- Typography- Elements
    • Layout - Responsive
    • Layout - Metro
    • Zend Core
    • Installation- Download Zend Server Community Edition (include ZendFramework 2.0) (http://framework.zend.com/downloads/latest)
    • Start Zend Server- Go to http://localhost:10081/ZendServer
    • Generate a Trial License for Zend Server- Go to http://www.zend.com/en/products/server/license
    • Config Zend Application- Download Zend Skeleton Application (https://github.com/zendframework/ZendSkeletonApplication)
    • New Environtment Variables
    • Config Windows Host- Go to: C:WindowsSystem32driversetchosts
    • Config Zend Server Host- Go to: C:Program FilesZendZendServeretcsites.d- Make host file: vhost_zendcms.com.conf- Restart Zend Server
    • Start ZF2 Skeleton Application- Go to: http://zendcms.com
    • Config Zend Module- Download Zend Skeleton Module (https://github.com/zendframework/ZendSkeletonModule)
    • Add Skeleton Module- Go to: <Source Path>zendcmsmodule- Extract to: ZendSkeletonModule
    • Config application.config- Go to: <Source Path>zendcmsconfig- Edit file: application.config.php
    • Config module.config- Go to: <Source Path>zendcmsmoduleZendSkeletonModuleconfig- Edit file: module.config.php
    • Start Skeleton Module- Go to: http://zendcms.com/skeleton
    • Zend MVC- Programmer’s Reference Guide of Zend Framework 2: http://framework.zend.com/manual/2.0/en/index.html#zendframeworkreference
    • MVC Diagram
    • DAO Design Pattern
    • Describe Album Module- The application that we are going to build is a simple inventory systemto display which albums we own. The main page will list our collectionand allow us to add, edit and delete CDs.Page DescriptionList of albumsThis will display the list of albums and provide links to edit and delete them.Also, a link to enable adding new albums will be provided.Add new album This page will provide a form for adding a new album.Edit album This page will provide a form for editing an album.Delete album This page will confirm that we want to delete an album and then delete it.
    • Create directories- Creating following directories.
    • Create Module.php- Create Module.php in the Album module.
    • Configuration- Create a file module.config.php under <SourcePath>zendcmsmoduleAlbumconfig
    • Config application.config- Go to: <Source Path>zendcmsconfig- Edit file: application.config.php
    • Routing and controllers- As we have four pages that all apply to albums, we will group them ina single controller AlbumController within our Album module as fouractionsPage Controller ActionHome AlbumController indexAdd new album AlbumController addEdit album AlbumController editDelete album AlbumController delete
    • Add Router- Modify module.config.php under<SourcePath>zendcmsmoduleAlbumconfig
    • Create the Controller- Create controller class AlbumController.php under <SourcePath>moduleAlbumsrcAlbumController
    • DB Schema- Create SQL statements to create the album table.
    • Create the Model- Create model class Album.php under <SourcePath>moduleAlbumsrcAlbumModel
    • Create the Model Table- Create model classAlbumTable.php under<SourcePath>moduleAlbumsrcAlbumModel
    • Using ServiceManager to configure thetable gateway and inject into theAlbumTable- Create Module.phpin the Album module.
    • Config DB Driver- Modify global.php under <Source Path>configautoload
    • Config DB Credentials- Modify local.php under <Source Path>configautoload
    • Create the View- Create view index.phtml under <SourcePath>moduleAlbumviewalbumalbum
    • Open Album- Go to: http://zendcms.com/album
    • Forms and Actions - Add album - Form- Create view AlbumForm.php under<SourcePath>moduleAlbumsrcAlbumForm
    • Forms and Actions - Add album - Model- Modify model class Album.phpunder <SourcePath>moduleAlbumsrcAlbumModel
    • Forms and Actions - Add album - Controller- Modify controller class AlbumController.php under <SourcePath>moduleAlbumsrcAlbumController
    • Forms and Actions - Add album - View- Create view add.phtml under <SourcePath>moduleAlbumviewalbumalbum
    • Forms and Actions - Add album - Open- Go to: http://zendcms.com/album/add
    • Forms and Actions - Edit album - Controller- Modify controller classAlbumController.php under<SourcePath>moduleAlbumsrcAlbumController
    • Forms and Actions - Edit album - Model- Modify model class Album.php under <SourcePath>moduleAlbumsrcAlbumModel
    • Forms and Actions - Edit album - View- Create view edit.phtml under <SourcePath>moduleAlbumviewalbumalbum
    • Forms and Actions - Delete album - Controller- Modify controller classAlbumController.php under<SourcePath>moduleAlbumsrcAlbumController
    • Forms and Actions - Edit album - View- Create view delete.phtml under <SourcePath>moduleAlbumviewalbumalbum
    • Zend Authentication
    • Zfc [Base.User.Acl]- Download (https://github.com/ZF-Commons/ZfcUser)(https://github.com/ZF-Commons/ZfcBase)(https://github.com/bjyoungblood/BjyAuthorize)
    • Add ZfcBase, ZfcUser, BjyAuthorize- Go to: <Source Path>zendcmsvendor- Extract to: ZfcUser, ZfcBase, BjyAuthorize
    • Config application.config- Go to: <Source Path>zendcmsconfig- Edit file: application.config.php
    • Make database.local- Go to: <Source Path>zendcmsconfigautoload- Create file: database.local.php
    • Start url User- Go to: http://zendcms.com/user/login
    • DB ListStar:1) User (u)2) Tag (t): Page, Menu, Category3) Post (p): Article, Products, Banner4) Meta (m): Media5) Option (o): Configuration
    • Table List1) u: uId, uName, uPass, uEmail, uDesc2) t: tId, tName, tDesc3) p: pId, uId, pTitle, pContent4) m: mId, pId, mKey, mValue5) o: oId, oKey, oValue
    • 1) User (u)CREATE TABLE `user` (`uId` INT NOT NULL AUTO_INCREMENT ,`uName` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOTNULL ,`uPass` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,`uEmail` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,`uDesc` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY ( `uId` )) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci
    • 2) Tag (t)CREATE TABLE `tag` (`tId` INT NOT NULL AUTO_INCREMENT ,`tName` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,`tDesc` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,PRIMARY KEY ( `tId` )) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci
    • 3) Post (p)CREATE TABLE `post` (`pId` INT NOT NULL AUTO_INCREMENT ,`uId` INT NOT NULL ,`pTitle` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,`pContent` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,PRIMARY KEY ( `pId` )) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci
    • 4) Meta (m)CREATE TABLE `meta` (`mId` INT NOT NULL AUTO_INCREMENT ,`pId` INT NOT NULL ,`mKey` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,`mValue` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,PRIMARY KEY ( `mId` )) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci
    • 5) Option (o)CREATE TABLE `option` (`oId` INT NOT NULL AUTO_INCREMENT ,`oKey` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,`oValue` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,PRIMARY KEY ( `oId` )) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci
    • Login
    • Back-endI) User Manager (Permission)II) Tag Manager (Grid hierachy)III) Layout Manager (Row added elements)Star: 1) Header, 2) Content, 3) Footer, 4) Top, 5) BottomIV) Media ManagerV) Option ManagerPyramid: Navigation (Circle -> Menu) -> Datatable (Search-Filter,Action,Grid-Edit) -> Form (Main Input,Desc Grid) + Custom
    • Github- Go to: https://github.com/leonguyen/zendcms