Forums / Discussions / Store Custom Datatype attribute with CreateandpublishObject API

Store Custom Datatype attribute with CreateandpublishObject API

Author Message

Jitesh Rana

Wednesday 17 August 2011 7:19:02 am

I have a class in which custom datatype attribute. How to store data in that attribute by using createAndPublishObject API.

Following Code I have,

 <?php
$attributeList = array( 'id' => '202.1.2', //Custom DataType 
     'label' => $label);
$params = array();
$params['parent_node_id'] = $parentNodeID;
$params['creator_id'] = $creatorID;
$params['class_identifier'] = 'conditions';
$params['attributes'] = $attributeList;

$contentObject = eZContentFunctions::createAndPublishObject( $params );
?> 

Marko Žmak

Wednesday 17 August 2011 8:31:23 am

If your custom datatype supports the fromString method then the code you provided should work.

If it doesn't support fromSteing, then it depends on the custom datatype.

If this custom datatype is developed by you I suggest you implement the fromString method.

--
Nothing is impossible. Not if you can imagine it!

Hubert Farnsworth

Jitesh Rana

Wednesday 17 August 2011 10:36:52 pm

Hello Marko,

There is already fromstring method implemented in custom datatype. Is this the right implementation of fromstring method for custom datatype?

function fromString( $contentObjectAttribute, $string )    
{
        if ( $string == '' )
            return true;
        $contentObjectAttribute->setAttribute( 'data_text', $string );
        return true;    
} 

Marko Žmak

Thursday 18 August 2011 3:51:51 am

Your code seems to be fine. It should work.

Did you put the right attruibute identifier in $attributeList?

Does your other attribute (label) get stored OK?

<span style="color: #ff0000;">$attributeList</span>

--
Nothing is impossible. Not if you can imagine it!

Hubert Farnsworth

Jitesh Rana

Thursday 18 August 2011 7:24:55 am

Hi Mark,

Yes, I have put the right attribute identifier in $attributeList. Other attribute(label) stored successfully.

following methods are there in custom datatype

     function fetchObjectAttributeHTTPInput( $http, $base, $contentObjectAttribute )
    {
    if ( $http->hasPostVariable( $base . "_data_oscar_identifier_" . $contentObjectAttribute->attribute( "id" ) ) )
        {
            $data = $http->postVariable( $base . "_data_oscar_identifier_" . $contentObjectAttribute->attribute( "id" ) );
            $contentObjectAttribute->setAttribute( "data_int", $data );
            $contentClassAttribute = eZContentClassAttribute::fetch( $contentObjectAttribute->attribute( 'contentclassattribute_id' ));
            $contentObjectAttribute->setAttribute( "data_text", $contentClassAttribute->attribute('data_text1').$data );
            return true;
        }
        return false;
    }
    /*!     Store the content. Since the content has been stored in function fetchObjectAttributeHTTPInput(),
     this function is with empty code.    */ 
   function storeObjectAttribute( $contentObjectattribute )
    {
    }
 

André R.

Tuesday 23 August 2011 5:59:28 am

According to your code from fetchObjectAttributeHttpInput it uses data_int AND (for some strange reason) data_text. This does not seems to be reflected in the fromString code.

And as Marco asked about I assume 'id' is the identifier of the attribute with this datatype as setup in the Content Class(?).

eZ Online Editor 5: http://projects.ez.no/ezoe || eZJSCore (Ajax): http://projects.ez.no/ezjscore || eZ Publish EE http://ez.no/eZPublish/eZ-Publish-Enterprise-Subscription
@: http://twitter.com/andrerom

eZ debug

Timing: Jan 17 2025 21:11:41
Script start
Timing: Jan 17 2025 21:11:41
Module start 'content'
Timing: Jan 17 2025 21:11:41
Module end 'content'
Timing: Jan 17 2025 21:11:41
Script end

Main resources:

Total runtime0.7463 sec
Peak memory usage4,096.0000 KB
Database Queries205

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0051 601.3906180.8047
Module start 'content' 0.00510.6318 782.1953667.3203
Module end 'content' 0.63690.1093 1,449.5156340.7891
Script end 0.7462  1,790.3047 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00350.4755210.0002
Check MTime0.00130.1719210.0001
Mysql Total
Database connection0.00060.078310.0006
Mysqli_queries0.671689.98472050.0033
Looping result0.00180.24482030.0000
Template Total0.721796.720.3609
Template load0.00180.245920.0009
Template processing0.719996.451220.3599
Template load and register function0.00010.014310.0001
states
state_id_array0.00090.123110.0009
state_identifier_array0.00090.114320.0004
Override
Cache load0.00150.2060300.0001
Sytem overhead
Fetch class attribute can translate value0.00110.146140.0003
Fetch class attribute name0.00160.215480.0002
XML
Image XML parsing0.00160.213840.0004
class_abstraction
Instantiating content class attribute0.00000.005790.0000
General
dbfile0.00200.2740360.0001
String conversion0.00000.000630.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
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
6content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
6content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
4content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
3content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 21
 Number of unique templates used: 6

Time used to render debug report: 0.0002 secs