Forums / Setup & design / Auto update users

Auto update users

Author Message

Steve P

Saturday 09 July 2005 2:31:09 am

I wonder if anyone can suggest a way for me to update my users from a script? I would like to update a field "payment_status" automatically on completion of a shop transaction ie to "paid_o5" or similar.

Best

Steve

Marco Zinn

Saturday 09 July 2005 3:28:39 am

Sounds to me as you would need some "Workflow event", which is triggered by some shop trigger.
This will involve PHP coding, AFAIK.
You will either need to changed an attribute value of some existing (user) object or create a new version of this. You cannot do this with pure template mechanims or so.
But: aren't there enough shop things available?
"Payment status" shouldn't be stored with a user, but with some order, i think. I'd expect, that this is availabe in ezPublish anyway (I never used shops myself yet).

Marco
http://www.hyperroad-design.com

Steve P

Saturday 09 July 2005 3:56:47 am

Thanks. In this case I am using the "shop" for a number of custom products including paid access to some areas of the site.

I was hoping for a short cut/example of using the store() function to update a single field in my [adapted] user group - I have not tried to use store() yet & need to get my head round the syntax.

Best wishes

Pål J Didriksen

Saturday 09 July 2005 5:26:38 am

I have used the following code to change an attribute value and store the change. Found most of the code somewhere on ez.no, so you should probaly thank someone else ;)

        // Fetch current version of the object (provided you have the objectID)
        $contentObject =& eZContentObject::fetch( $objectID );
        $contentObjectVersion =& $contentObject->version( $contentObject->attribute( 'current_version' ) );
        $contentObjectAttributes =& $contentObjectVersion->contentObjectAttributes();

        // Loop through the attributes, to find the right one (in this example, contentclassattribute_id=232)
        foreach (array_keys($contentObjectAttributes) as $key)
        {
            $contentObjectAttribute =& $contentObjectAttributes[$key];
            $contentClassAttribute =& $contentObjectAttribute->contentClassAttribute();

           if ($contentClassAttribute->attribute("id") == 232)
           {
               // Found it!
               $oldVal  = $contentObjectAttribute->attribute("data_int");
               $newVal  = $oldVal + 1;

               // Insert new value and store it
                                $contentObjectAttribute->setAttribute("data_int", $newVal);
               $contentObjectAttribute->store();
           }
        }

Steve P

Monday 11 July 2005 1:58:32 am

Great. I'll give it a try. Yhanks Pål

Steve P

Tuesday 12 July 2005 4:09:23 am

OK. Had a look at the code. I can see the logic but had hoped to use some code on a modified template [this looks like extension code?] simply to update one field without any action from the user ie when the page loads. Think i need more help :(

eZ debug

Timing: Jan 18 2025 22:37:06
Script start
Timing: Jan 18 2025 22:37:06
Module start 'content'
Timing: Jan 18 2025 22:37:06
Module end 'content'
Timing: Jan 18 2025 22:37:06
Script end

Main resources:

Total runtime0.1660 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0081 587.6094180.8438
Module start 'content' 0.00810.0050 768.453197.9609
Module end 'content' 0.01300.1530 866.4141525.8750
Script end 0.1660  1,392.2891 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00362.1855200.0002
Check MTime0.00140.8384200.0001
Mysql Total
Database connection0.00090.548610.0009
Mysqli_queries0.120772.68011410.0009
Looping result0.00181.10501390.0000
Template Total0.152792.010.1527
Template load0.00100.591310.0010
Template processing0.151791.357210.1517
Override
Cache load0.00060.384810.0006
Sytem overhead
Fetch class attribute can translate value0.00090.526210.0009
XML
Image XML parsing0.00020.129510.0002
General
dbfile0.00281.7054200.0001
String conversion0.00000.005330.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