Forums / Setup & design / Parent classes and child classes

Parent classes and child classes

Author Message

Andrey Astakhov

Friday 07 July 2006 10:15:10 am

I have 3 classes: Class A, Class B, Class C.
Class A is a container.
I need to setup it so that an instance of Class A could contain ONLY instances of classes B and C.
For example, <b>User groups</b> could contain only <b>Users</b>.

If is very simple, just show me please a page in the eZ documentation.

Łukasz Serwatka

Friday 07 July 2006 11:15:59 am

Hi Andre,

You did not specify if your question is related directly to permissions but, you can easily setup new police as following:

Module: content
Function: create
Limitations: Class( Class B , Class C ) , ParentClass( Class A )

Module: content
Function: edit
Limitations: Class( Class B , Class C )

This means that you can create objects as instance of classes Class B and Class C under object as instance Class A.

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Andrey Astakhov

Friday 07 July 2006 1:09:35 pm

Thank you, Lukasz!

<i>You did not specify if your question is related directly to permissions ...</i>

Yes, you are right.
I already knew this approach with permissions and limitations, but i'm not sure that it is single and best approach. It is impossible to add an instance of the class "User" to content tree, isn't it? Is it based on permissions?
I wondering is there another approach: probably object relations or something like this?

Łukasz Serwatka

Friday 07 July 2006 1:30:57 pm

By default you can't create User object as instance in the content tree. Other approach is that you can control edit form on the template level, if current node class id/identifier is "something" then show "create new object" edit form or not. I would recommend use permissions for control if user has access to create new object under specified content classes.

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Andrey Astakhov

Friday 07 July 2006 1:39:58 pm

Ok, thank you.
About permissions: my user from the user group "Editors" doesn't see content tree in the left panel. How should i change his permissions to allow him see (and navigate through) this tree?

eZ debug

Timing: Jan 31 2025 01:21:48
Script start
Timing: Jan 31 2025 01:21:48
Module start 'content'
Timing: Jan 31 2025 01:21:48
Module end 'content'
Timing: Jan 31 2025 01:21:48
Script end

Main resources:

Total runtime0.2060 sec
Peak memory usage8,192.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0065 587.9531370.2891
Module start 'content' 0.00650.0128 958.24221,005.5313
Module end 'content' 0.01930.1867 1,963.77343,893.9922
Script end 0.2059  5,857.7656 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00452.1760200.0002
Check MTime0.00130.6408200.0001
Mysql Total
Database connection0.00050.261110.0005
Mysqli_queries0.115355.97391410.0008
Looping result0.00140.69671390.0000
Template Total0.186390.410.1863
Template load0.00080.378210.0008
Template processing0.185590.052910.1855
Override
Cache load0.00060.268910.0006
Sytem overhead
Fetch class attribute can translate value0.00190.927310.0019
XML
Image XML parsing0.00030.156410.0003
General
dbfile0.00562.7224200.0003
String conversion0.00000.003030.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs