Jump to content

Macrura

PW-Moderators
  • Posts

    2,765
  • Joined

  • Last visited

  • Days Won

    40

Everything posted by Macrura

  1. @soma - thanks for helping out.. so how would I find the album the track is on in a single selector, that could be used for returning the list of tracks for that album, that have that particular attribute (track_group=2194)
  2. For the most part i think i could get away without assigning the page-table pages (tracks) redundantly, except in this one situation: i need to populate a page select on this 'track' template, that only looks for other tracks on the same album with the field track_group=2194 (which indicates the start of a track group); return $pages->find("template=track, track_group=2194,album_select={$page->album_select}"); if i could figure out a selector to replace this one which relies on that redundant 'album_select' field, then i could drop the whole reference thing, and use the api for any other output-related stuff.. if the tracks (page-table pages) were children then i could do this: return $pages->find("template=track, track_group=2194,parent={$page->parent}"); if they were repeaters, not sure how to do that would maybe have to use getForPage() though I don't know if there is a selector for that?
  3. @adrian - thanks for commenting on this!... What about in the case where page table fields live under some other single parent, not as children of the page? I guess i still need the custom module for this... For example, now i'm doing a record label site and we have albums as pages and then each track is a page table page on the album. This lets us have a nice formatted track list (page table) in the editor, and the the track (page) itself can hold all sorts of data, like preview, full track stream, duration, track index, grouping, composers, performers etc.. but i do want to hide the tracks–i don't want to confuse the users, to see all of those tracks open up if a user clicks the album title; some of these albums have 40 tracks.. so i decided to store the tracks under a hidden tracks parent page.. So the tracks themselves need a page reference to the album they are from, and this is what the module is supposed to do.. If there were some way to set the visibility of the pagetable pages so that users would not be able to directly interact with them, but still be children of the page, that would actually be the ideal way..
  4. After upgrading a site to 2.5, i can no longer access the admin modules page, i get redirected to a 404 page. I'm not really sure how to fix this, and wondering if anyone has some tips or ideas where to start... one idea i had was to export the whole site with the site profile export and then install on a clean 2.5, hoping that would sort out whatever snafu has occurred.. Edit: was being caused by the page edit per role module...
  5. foxycart allows you to use your own cart and then use their checkout page; you do it by adding all of the products in your 'pre cart' to the foxycart cart and redirect to checkout; so this would imply that you use the shop-for-processwire and on the cart page and then modify it to be a form that submits to FC when clicking the checkout button; or you can just use the default foxycart; for prestashop, you might run your prestashop in a subdomain like shop.domain.com and then have links to the product pages from processwire; it's awkward to do it this way nowadays, but you still see it, where companies have their main site, and then a dedicated shop site. Seems like overkill though for what you're setting up.. snipcart also looks really cool and is ahead of FC with respect to responsive design
  6. since those are file fields, i would recommend to use the built in tags function of the file field, and then tag each file with the language code; then you can get the correct file with a findTag.. or getTag
  7. @dazzyweb - yes, that module would work, and then if you modify it with the code a few posts up, it should do what you want!
  8. @dazzyweb - the module i wrote for this does exactly what you are describing... do you need additional info on how to set that up?
  9. you could also make a module that would automatically add the child pages to the parent's page table if they are created from the page tree, hooking into saveReady on the child page's template... $page = $event->arguments[0]; if($page->parent->my_page_table->has($page)) return; $page->parent->setOutputFormatting(false); $page->parent->my_page_table->add($page); $page->parent->save();
  10. Hi Matthew - thanks - i do take your opinion very seriously and have followed your thread about the outage(s). So right now i'm on Servint, and the site seems to be running well; haven't had any major issues yet, and the support has been responsive. This is my first time ever using anything other than reseller shared hosting, and the performance of the server has been very good, and the scripts i need to run on there have been really running well... As it was quite a bit of work to migrate the client's cpanel account over to Servint from the previous shared host, i have my fingers crossed that I won't need to move again.. but I will post back here some further updates and ratings for this server, specifically the performance and uptime. This one is in the DC datacenter.
  11. hey peter - sure, here are the 2 sites running foxy: http://ohmspeaker.com http://www.katonahartcenter.com
  12. @joey - do you mean coupons, or what kind of discounts do you mean? I've been able to setup easily all kinds of discounts using the attributes in the add to cart code, modified either server side, or with js, depending on what dictates the discount... @jlahijani - i'm looking at snipcart now for a project... but since i'm already used to foxycart, not sure if i can get my head around a new system fast enough for this upcoming launch... One thing to also consider is that Foxycart can accept multiple items added into the cart at one time, as well as being able to redirect to the cart/checkout without using the popup. So this opens up the possibility to simply use the processwire shop, and then switch out the final checkout button to send the contents of the PW cart to the foxycart for checkout; this would be good in many ways since you would have the SSL, PCI, huge range of supported payment processors, and all the other features of FC, and be able to use all of the shop-for-processwire features as your "pre-checkout/cart"
  13. @Pwired - i think also it depends on the market sector - Prestashop has a better-than-decent system for matrix products built in (meaning generating product variations based on attributes and inventory tracking, SKUs, images, as well as swatches for color, and selects for users on the front office), as well as some other features like returns, customer account management, re-ordering with 1 click... This is the main reason we're going with PS now; also there are just enough 3rd party modules that cover some difficult needs, such as complex delivery scheduling, social logins, tell a friend, loyalty rewards program, quickbooks integration, email marketing integration etc..
  14. @jlahijani - awesome post - and that's my go-to setup (PW+FC+OD)... it's such a reliable, hassle-free, robust, simple setup - and i have 1 site that is PW+FC for over a year now and never had any issues; 2nd site with this is 8 months out, huge number of transactions per day, and whole things works flawlessly; I will look at your other suggestions, Spree and Sylius! it's all such a puzzle, this ecommerce situation...
  15. more facepalm.. my own module was naming the next page with the count of all child pages +1... just remembered this! have added unix date string to the end of the auto-naming for the child pages which should solve the unique-ness issue...
  16. we have a site with a parent page called "sessions" and child pages that hold information about class sessions for a school. there are 491 sessions there now and when a user tries to add a new session, the 492nd one is failing with the following error: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '492-1664' for key 'name_parent_id' we can delete some child pages, add some, and as long as we don't get up to the 492nd one, we're ok, but we can't get past that 492nd child page... the child pages are being managed by the new pro-fields pagetable; it has all been working fine until today; not sure if this has anything to do with pagetables; users can add pages directly, or from the page that handles the pagetable; this is accomplished with a page select on the child page and a module that adds the child page to the page table field after that page select is populated... but adding child pages either way from the parent page on the pagetable, or directly adding a page in the tree, it always is failing on the 492.. ___ OOPS... this has been solved - had to look through the database and sure enough there was a page with the name 492, and when creating a new page the system was trying to temp name the new page to 492... long story short, i need to set some required fields and add more checking and validation to the page names..
  17. @adrian - many thanks; i have the migrator installed on a localhost and that's where i generated the export; then i tried to import to a site running on a private intranet... right now my main thing is to try and first fix the users list.. i might try installing my backup and see if users works, in which case it would be likely that the cause of the current issue is something to do with the migrator... but i should have time next week to help out and do some testing... right now i'm lack of sleep and too many projects, too many deadlines!
  18. @Adrian - thanks for checking in on this! i'm sure it was my fault, doing something wrong with migrator, (and i do have a backup but haven't reverted yet)... Also, this site was upgraded a few times, probably set it up about a year ago.. But i am using the latest migrator, i just installed it a few days ago to try this migration of client pages... What happened with migrator is that the pages i was importing had a select field for users, and then I didn't know migrator would try and import those attached user pages; but the migrator put the users in funny places, like right under admin, but not in the users area under the users page; so i had to manually delete them from the DB, tried deleting those users with the api but it wouldn't let me; so ultimately i cleaned out all of the pages, fields and templates that migrator imported, and i deleted all the users from the database that migrator imported... should i PM you the full debug error? @arjen - i only have 1 user now, who is me, the superadmin... i only have the default roles and permissions at the moment; maybe i need to check over the tables for roles though...
  19. I have a processwire dev site, running 2.4.8, and I can no longer access users...When i go to access users, i get this error, and no users displayed: Unknown Selector operator: '' -- was your selector value properly escaped? with debug turned on TemplateFile: Unknown Selector operator: '' -- was your selector value properly escaped? field='roles', value='', selector: 'roles' (and another ~70 rows of errors..) Spent a few hours looking at the database and comparing it with another PW database to see if there is something amiss, but can't seem to track down this problem; the problem may have started after attempting to import some pages with page migrator- i'm thinking that something setting or part of the database got corrupted...? TIA
  20. @apeisa - great news about ecommerce...! I'm trapped now for last 3 weeks on prestashop project..no other viable choice for this, but hard not to feel frustration at every turn, changing things, adding features, when compared to PW. Main problem with turnkey ecommerce systems (have done serious in-depth testing on Shopify, Magento, Lemonstand, Volusion, Opencart) is that they tend to work for a very narrow set of ecommerce business models, and takes some serious muscle to get them under control and into something that matches the specific need of the project. (Gotta say though, Prestashop is turning out to be the best of the bunch)... Main things that would have made this one easier in PW: 1.) Associating specific images to child products (product variant matrix - color/size combos) would have been 10x easier, faster, and more efficient; could have been almost automatic; with PS it's labor intensive and clicky... 2.) Uploading, managing and resizing images - 10x easier in PW... PS has no drag and drop uploader, image resizing is somewhat arcane, system doesn't really crop to size; 3.) Serving different images based on user agent, and also serving retina images - almost impossible with PS..
  21. @Horst - a zillion thanks for this, looks awesome - i will delve in to deep study on this tonight (NY time) and respond then... gotta go and work for $ now...!
  22. Hi Horst - regarding the cron - since the cron just executes the page with this template (only way i could do it for the moment), i guess the thing would be to have some logic at the top of the template file to check is wiremail is still running? would that be possible? i definitely see your concern as far as scalability and different use cases; In my case i know for sure that i wouldn't have 2 messages scheduled 5 min apart with enough recipients to consume more that 5 min of sending time; but it is definitely something that should be accounted for... When i first started this i was initially only thinking of sending to maybe 1-5 recipients at a time; now i figure that i could possibly need to send out to as many as 150; I was sort of figuring that when/if i get to the point of needing to send to a larger # that i would use a different system; Another thing that i might play with is the Mandrill web hooks - it lets you enable posting back to a URL the json response for different events, like mail sent, mail opened, bounced etc; could be cool to have some fields in processwire to show the results of the send without having to go and look at the mandrill interface each time... I'll let you know how this goes.. should have some progress on it in a few days; the other good thing about reading back the mandrill responses is that they don't store that data for very long, so would be good to keep those records in PW...
  23. Right - and i have a cron job which runs every 5 min a 'mail_cron' template; the template runs through some $pages->find and gets the messages to be sent; I only use it to schedule emails (though if i needed to send it right away, i would set the send time for 5 min from now..) this is the simple sending code: https://gist.github.com/outflux3/797a18f5d2eaf0a87efb but i'm working on changing over to this: https://gist.github.com/outflux3/530b8adb1a6b7019d262 the only difference i added the table for sending multiple future-scheduled emails with the text placeholders; so you could use the custom text placeholder to have an amount due and then in the message say "Amount Due by {{duedate}}: {{custom}}" or you can just use the custom field to send slightly different messages for each instance..
  24. i think what was happening then with the date/time is that it is getting server time, as opposed to processwire time.. $this->emailMessage->SetHeader("Date", date("D, j M Y H:i:s \G\M\T P")); so the problem could be for someone who is using a server in a different timezone could we override this at the template/api level? Also - to elaborate more on this use case: last year i found it necessary to setup future sending emails to some clients (hosting invoices, payment plans etc..) and the only solution i could come up with was a service called LetterMeLater; but i thought while using it, that it would not be so hard to build this in processwire... so after about 2 hrs of setup i was able to replicate that and it works well, better than the original service i was using; some features I've been able to accomplish over the last few days of creating this: Select Identity to send from (and then uses that identity's signature) Select multiple recipients using a profields table, setup a schedule of sending, along with placeholder texts for each sending instance Attachments to the message (page) Attachments from a central repository of attachments Links to documents/media Render inline images in body and signatures (using string replacements for the image urls - prepending the site URL), also floating images are working List of attached documents Send offset (so you can select a due date and then offset to send the message X days early; this way you can set the dates in the table to the due dates and avoid date confusion) Boilerplate insertion (select from an array of generic pre-written 'boilerplate' texts and insert them..) this is going to really save a lot of time for me! I'm also using Mandrill to send these, so i can check to make sure they were sent, and also i can see if the recipient opened the message..
×
×
  • Create New...