Yii Framework Forum: [PLANNING] Yii CMS - a different approach - Yii Framework Forum

Jump to content

  • (3 Pages)
  • +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

[PLANNING] Yii CMS - a different approach Content Management System - working title Rate Topic: ***** 6 Votes

#21 User is offline   Asgaroth 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 371
  • Joined: 17-July 09
  • Location:Bogota, Colombia

Posted 03 May 2011 - 09:36 AM

This looks very promising, thanks for your contribution, im looking forward to test this and give you some feedback when i can.
- Extension: Dynamic DataProvider Behavior
- Extension: XUpload - jQuery File Upload Extension
- Extension: PhpQuickProfiler - A Web Log Router that will help you profile your application
- Extension: XDateView - A Date grouped Grid View
- Extension: Foundation - An easy to use, powerful, and flexible framework for building prototypes and production code on any kind of device.



- Wiki: How to generate Yii like Documentation
- Wiki: How to re enable logging during unit testing
0

#22 User is offline   tydeas_dr 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 158
  • Joined: 16-April 10
  • Location:Greece

Posted 14 May 2011 - 09:42 AM

Waiting some roadmap update so I could contribute. dmtrs on github
Follow me on twitter @dmtrsslvdr
Check my *new* blog @ tumblr
0

#23 User is offline   peili 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 35
  • Joined: 28-August 10
  • Location:Germany - Munich

Posted 21 May 2011 - 02:34 AM

View Postschmunk, on 22 April 2011 - 12:28 PM, said:

Yes, you're right!

While on Google you'll find a complete CMS application, the stuff on GitHub is in very early stage of development.
But git will play a key role in the development process, see here for more information.


Hey schmunk,

I just had a look at the GitHub - code. I don't really get the difference to phundament. In Phundament you also rely on modules like SBARC. I took me only a few minutes to migrate phundament cms to my existing application, because I already had user management with access control.
Of course phundament has a lot of „too much“ functionality.

So what will be the difference with this approach to your existing phudament cms functions? Reduce complex functionality ?
When I tested the github-branch I played around with the widgets. I like the drag'n'drop usability a lot. Right now there is only the widget functionality.
So are you planning to integrate cells and content features as well?

Best regards from Munich,

peili
0

#24 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 23 May 2011 - 05:36 PM

Hi peili,

View Postpeili, on 21 May 2011 - 02:34 AM, said:

Hey schmunk,

I just had a look at the GitHub - code. I don't really get the difference to phundament. In Phundament you also rely on modules like SBARC. I took me only a few minutes to migrate phundament cms to my existing application, because I already had user management with access control.
Of course phundament has a lot of „too much“ functionality.

Yes, you always need different modules. But they should be pluggable ...
If you can leave SRBAC aside and only use phundament - thats wonderful, because it proves it's 'pluggability' :)

In the current code there's a P3AdminModule for installation of other modules.
And the P3WidgetModule which can create other widgets.
Content is created by any type of widget, but there are no modules for that included at the moment.
But I think another thing should be a P3ControllerModule, which serves as a dynamic controller, like P2Page in the old version.
The thing is, that this just a controller, but if you need to have a backend, you'll usually end up in a module.

View Postpeili, on 21 May 2011 - 02:34 AM, said:

So what will be the difference with this approach to your existing phudament cms functions? Reduce complex functionality ?
When I tested the github-branch I played around with the widgets. I like the drag'n'drop usability a lot. Right now there is only the widget functionality.
So are you planning to integrate cells and content features as well?

Hmmm, P3WidgetContainer should be the cell feature?!

Other features as mentioned above.
Modules for content should also be pluggable.
But I think I'll add another module like P2Html, HTML editor plus file manager.


Best regards,
schmunk
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#25 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 23 May 2011 - 05:40 PM

Hi guys,

I've something for you.

https://github.com/s...93f8711353dd40d

In the download itself you'll find an app, based on the Yii webapp skeleton. To keep it slim, Yii itself is currently not bundled with the application.

See the INSTALL file for detailed instructions and have a look at the demo video:

You can watch this in 720p fullscreen on youtube, if you want to able to read a thing ::)


Some more words about the setup.

Even a small scaled application needs a user and a rights management. Therefore I've included the two existing module exentions 'yii-user' and 'rights', instead of writing or using my own extensions.
When using existing modules I've found it problematic that there's always of different ways of installing the modules.
You have to configure it and for these two modules you also have to setup database tables. For example one module has an installer, but for the other one you have to create the tables manually.

This led me to the idea of writing a module which performs these schema setups with database migrations, to be honest a fairly new feature, so it's clear that it is not widely used.
It's very easy to create migration classes instead of sql dumps, there's also already an extension command for that.
I added those to the modules 'rights' and 'yii-user', besides a default config file.

Another part which has been added to the release above is the P3WidgetContainer. Simply a widget which allows you to create other widgets. Check out the video for a detalied explanation.


While putting the pieces together I had to work around a few problems.
So I want to address these a bit in detail.

Layout / CSS
Problem:
Modules layouts are inconsistent
Solution:
- conventions about CSS classes
- a module should provide a <div class="modulemenu"><?php $this->widget('CMenu', ...)?></div> for its internal navigation.
- a module should have a link to it's index page in the breadcrumbs
- make use of the same layouts as yii application skeleton (column1 and column2)

Admin Role / User
Problem:
Modules use different defaults for administration credentials, user name, role, id, operations and tasks.
Solution:
- Conventions :) user: 'admin', role: 'Admin', id: 1 (default superuser)

Installation / Configuration / Migrations (database schema)
Problem:
Same as above, they're simply different.
Soluton:
- provide default configs in the module, in /config. 'main.php' or 'module.php' depending on their array structure.
- provide migration classes


Known Bugs / Limitations
- widget ordering
- request parameter handling not implemented

- one-step only migration
- yiic via exec()


For sure there will be more updates on this topic, but depening on my spare time for this project.

As mentioned in the postings above this first main goal is to create conventions for a let's call it: 'Yii Standard Application', while the download provided above is only a setup of this app, called 'phundament'.


Best regards,
schmunk
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#26 User is offline   peili 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 35
  • Joined: 28-August 10
  • Location:Germany - Munich

Posted 24 May 2011 - 05:33 AM

Hey there,

what about a Javascript HTML WYSIWYG editor integration for widgets.
It's not really comfortable to create HTML - Code in a JSON String?


Best regards,

peili
0

#27 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 24 May 2011 - 05:52 AM

Hi peili,

Quote

what about a Javascript HTML WYSIWYG editor integration for widgets.
It's not really comfortable to create HTML - Code in a JSON String?

for sure that's a planned feature.

I would also create a default JSON string from a reflection of the class properties entered under 'alias'.

But creating HTML content should be done in a separate widget.


Best regards,
schmunk
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#28 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 24 May 2011 - 10:45 AM

To note one more thing about the JSON editor.

In phundament 2, widgets can provide a custom form for creating and/or selecting content, if they implement the ICellManager interface. I would add something similar into phundament 3.

Any thoughts about this?

Just because, if the HTML editor would be bundled with the current P3CellManager you should also include a filemanager for the editor, which tends to end up in bloated stuff.
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#29 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 26 May 2011 - 05:54 PM

Online Demo: http://demo.phundament.com/3.0-dev/

You can login with
admin / admin

May get broke :o
At this early development stage :)

I will check it from time to time or send me a message.
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#30 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 31 May 2011 - 06:42 PM

I've just released the P3WidgetModule in a stand-alone version here:
http://www.yiiframew...sion/p3widgets/
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
1

#31 User is offline   jacmoe 

  • Elite Member
  • Yii
  • Group: Moderators
  • Posts: 2,601
  • Joined: 10-October 10
  • Location:Denmark

Posted 31 May 2011 - 07:51 PM

Sorry about the non-commenting, but I really like what you're doing here. :)
I don't mind if you keep it up. :lol:
I briefly checked it out, and it looks like a neat overall solution to managing an array of various modules/extensions.
"Less noise - more signal"
0

#32 User is offline   peili 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 35
  • Joined: 28-August 10
  • Location:Germany - Munich

Posted 02 June 2011 - 05:08 AM

View Postjacmoe, on 31 May 2011 - 07:51 PM, said:

Sorry about the non-commenting, but I really like what you're doing here. :)
I don't mind if you keep it up. :lol:
I briefly checked it out, and it looks like a neat overall solution to managing an array of various modules/extensions.


Excellent with the content editor.


I'am using cmssitestructuremodule and I am having problems to include your widgets in the views.
First of all, inside a widget view "$this->widget" ist not working.
But also your p3widgets require a unique path for controller, which i cannot provide with cmssitestructuremodule.
Do you understand what i mean? Any ideas?


Another feature would be nice, to add existing widgets to view.

Best regards,

peili
0

#33 User is offline   cpucpu 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 32
  • Joined: 29-December 10

Posted 02 June 2011 - 11:22 AM

CMS demo ain't working, could you update it please.
Besides download app is broken, there are missing files and configurations, like "The table "p3_widget" for active record class "Widget" cannot be found in the database."

p.s. where is p3widgets db schema?

No offense but this seems more like a personal app than a developer targeted cms.
Though don't really get what phundament targets to, or what phundament actually is.

If you let me tell you some thoughts, this is what a serious CMS should have at its core:
-coding guidelines
-pages module
-users module
-basic configuration
-defined module/plug-in architecture for extending it
-backend for managing default modules (pages, users, etc.), developer modules, and the basic configurations.
-no frontend, and this is important, as developer will code this as views (perhaps providing a default theme), and with this i'm suggeting forgetting p3widgets for a moment at least, while other things get solved first.

The backend should be independent from frontend, each one having their own default themes.

I can help you with themming, but you **have**(if you want to of course) to work on those things.
0

#34 User is offline   peili 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 35
  • Joined: 28-August 10
  • Location:Germany - Munich

Posted 02 June 2011 - 06:44 PM

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

CMS demo ain't working, could you update it please.
Besides download app is broken, there are missing files and configurations, like "The table "p3_widget" for active record class "Widget" cannot be found in the database."

p.s. where is p3widgets db schema?

No offense but this seems more like a personal app than a developer targeted cms.
Though don't really get what phundament targets to, or what phundament actually is.

If you let me tell you some thoughts, this is what a serious CMS should have at its core:
-coding guidelines
-pages module
-users module
-basic configuration
-defined module/plug-in architecture for extending it
-backend for managing default modules (pages, users, etc.), developer modules, and the basic configurations.
-no frontend, and this is important, as developer will code this as views (perhaps providing a default theme), and with this i'm suggeting forgetting p3widgets for a moment at least, while other things get solved first.

The backend should be independent from frontend, each one having their own default themes.

I can help you with themming, but you **have**(if you want to of course) to work on those things.


I would suggest you read the beginning of this thread. I don't think the author schmunk want's to build an entire CMS application. More an approach to fill the gap for modules to build your own cms.

Best regards,

peili
0

#35 User is offline   cpucpu 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 32
  • Joined: 29-December 10

Posted 02 June 2011 - 09:08 PM

(Prone to erros) I think he's trying to fill the gap of "everythime we need to start a web project and have to write from the very begin the very same widespread features cms's contain".
0

#36 User is offline   intel352 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 196
  • Joined: 05-February 10
  • Location:Southport, NC

Posted 03 June 2011 - 06:50 AM

Just a note, when developing using DVCS such as git or mercurial, it's typically simpler to create forks than branches.
Also, if you want people to be able to use new extensions or modules separately, I've found that creating a repository for each, and then including as a sub-repo in my main project has worked very well.

Just a couple of suggestions. Cheers
Need live Yii support? - Join the #yii IRC channel on Freenode!
0

#37 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 06 June 2011 - 03:15 PM

View Postpeili, on 02 June 2011 - 05:08 AM, said:

Excellent with the content editor.

Thanks :)

View Postpeili, on 02 June 2011 - 05:08 AM, said:

I'am using cmssitestructuremodule and I am having problems to include your widgets in the views.
First of all, inside a widget view "$this->widget" ist not working.
But also your p3widgets require a unique path for controller, which i cannot provide with cmssitestructuremodule.
Do you understand what i mean? Any ideas?

I will check that.

View Postpeili, on 02 June 2011 - 05:08 AM, said:

Another feature would be nice, to add existing widgets to view.

I thought p3widgets would exactly do that?! :mellow:
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#38 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 06 June 2011 - 03:23 PM

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

CMS demo ain't working, could you update it please.

As soon as possible.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

Besides download app is broken, there are missing files and configurations, like "The table "p3_widget" for active record class "Widget" cannot be found in the database."

Take a look at the README file or here: http://www.yiiframew.../p3widgets/#hh3

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

p.s. where is p3widgets db schema?

It's in the migration class. So it's db independent.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

No offense but this seems more like a personal app than a developer targeted cms.
Though don't really get what phundament targets to, or what phundament actually is.

Phundament 2 was a complete app, phundament 3 will consist of seperate modules.
Please don't mix up the complete GitHub Repo with the module available for download.
The application setup is described at the beginning of this thread.


... had to split because of quoting :( ...
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#39 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 06 June 2011 - 03:24 PM

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

If you let me tell you some thoughts, this is what a serious CMS should have at its core:
-coding guidelines

Proposals in this thread.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

-pages module

Yes.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

-users module

Yes, plenty very good ones available.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

-basic configuration
-defined module/plug-in architecture for extending it

see this thread.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

-backend for managing default modules (pages, users, etc.), developer modules, and the basic configurations.

Very basic implementation in p3admin (GitHub Repo)

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

-no frontend, and this is important, as developer will code this as views (perhaps providing a default theme), and with this i'm suggeting forgetting p3widgets for a moment at least, while other things get solved first.

You can customize a module with Yii's built-in themeing.

View Postcpucpu, on 02 June 2011 - 11:22 AM, said:

The backend should be independent from frontend, each one having their own default themes.
I can help you with themming, but you **have**(if you want to of course) to work on those things.

Cool. There are many parts which need work, also writing guidelines. You're welcome to join, do you have GitHub Repo?
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

#40 User is offline   schmunk 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 569
  • Joined: 02-November 08
  • Location:Stuttgart, Germany

Posted 06 June 2011 - 03:25 PM

View Postcpucpu, on 02 June 2011 - 09:08 PM, said:

(Prone to erros) I think he's trying to fill the gap of "everythime we need to start a web project and have to write from the very begin the very same widespread features cms's contain".

I want to get the most out of the existing Yii extensions, while keeping maximum flexibility for my own stuff.
But conventions are very important for modules to play together.
Phundament - Yii Application Boilerplate with composer support
Fork on github

Follow phundament on Twitter

DevSystem: Mac OS X 10.7 - PHP 5.3 - Apache2 - Yii 1.1 / trunk - Firefox or Safari
0

Share this topic:


  • (3 Pages)
  • +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users