Jump to content

Noel Boss

Members
  • Posts

    170
  • Joined

  • Last visited

  • Days Won

    6

Everything posted by Noel Boss

  1. As far as I can tell, translation for paywhirl is very limited (to one language) – a dealbreaker for us…
  2. Interested as well… what other options did you check out? This looks nice as well! https://snipcart.com/
  3. Yes, we should get more organized somehow. I agree with the above comments. As a fairly new member of the community I get the impression, that the projects grows more rapidly that the current structures can handle. @ryan - I love the work you (and some in the community) have done so far! I would love to see PW succeed in becoming even easier to use, more feature rich and still beeing stable. I belief with the continued success of the project, more involvement of the community is needed – and therefore an increased focus on coordination from someone (does not have to be you if it's not what you like to do.). One example where I think the current setup hinders this are the separate GIT repositories for issues, code and feature request. I don't know the reasons for this, there might be some good ones I don't know of yet. But from a community standpoint, it makes things complicated and opaque. A central GIT repository would allow the community to participate much better by providing code to PW in the correct context, without much effort using pull requests. Advantages of one central repository would by: Exposure: More bugs get reported because its easier Bugs have better visibility, increasing the reach of developers who can potentially fix it Engagement: Issues can be discussed side by side, draft solutions can be pushed Using pull-requests the community can contribute bugfixes and features in a known way Using milestones, the community can help implement roadmap features Clarity & Code Quality: Bugs, discussions and fixed code live side by side, making things easier to understand Code review make code more stable Marketing: Because there will be more activity on one repository, the project looks more healthy and active for someone judging PW based on this criteria (I myself check issues and activity on open source projects beforehand – if I find no reported bugs and fixes this is a big warning sign) This is just one thing, there are probably other areas where we as a community could support the development of PW better. Im thinking roadmap with milestones etc, semantic versioning, etc. But I suggest to change evrything at once, rome wasn't built in a day Or as our pastor said, same same but a little bit better… Most important, it would be great to have an ongoing discussion about this. I'm in as well As one of only two 80% developers for a church with 60+ locations, I know the need of creating a flourishing community of volunteers firsthand. To take an example: If I can increase my productivity by 20% my project can grow faster by 20%. But if I invest time to onboard 2 others to help me do my work – the project can grow at 200%! I call for many Ryans We need more of the good people on this earth! But for a community to be able to get involved, there needs to be a some (hard) groundwork like simple tools, easy access, clear contribution guidelines, clear roadmaps... A healthy community needs a sense of ownership and unity there needs to be fun etc… I belief that the whole PW universe is amazing, its a great project, @ryan is a great leader, many members are very skilled, polite and very loyal. If we can get more of us to help, the whole ecosystem would greatly flourish – there is tremendous potential in unleashing the full power of the community by letting it get involved easier.
  4. Would be great if the plugin could handle links without surrounding a-tag. I have a link-field for urls and i have to first convert it into a tag before converting it to the oembed code: $modules->get('TextformatterMakeLinks')->format($page->linkfield); $modules->get('TextformatterOEmbed')->format($page->linkfield); Also an option to only get the src would be great (for usage in lighboxes for example). Right now I need to extract it again: $xpath = new \DOMXPath(@\DOMDocument::loadHTML($page->linkfield)); $src = $xpath->evaluate('string(//iframe/@src)');
  5. Ah true, forgot to mention it, this was also one of the only things I identified as a drawback while working on my first PW project. While not perfect, there is a solution for WP that could help as an inspiration: https://deliciousbrains.com/wp-migrate-db-pro/ We are using Gitlab with Hooks to automatically deploy files to the staging and live systems on the corresponding branches and wp-migrate-db-pro for DB syncs as well as the .htaccess method to reference files not found on staging and development environments. If it would work reliably, this module could be an easy solution to migrate templates:
  6. Wooohaaa, caught me! Used this on an wp installation previously but the technique should work on PW as well… You should be happy that I moved on from wp – and even more happy that I learned ONE thing I can use for PW Not looking back to wp a single second.
  7. Not really an option because I'm leaving the context of the page. I don't want to link the file directly for several reasons… If I specify a variation, I should also get the variation imho, because I can always get the original easily using these methods: // or https://processwire.com/api/ref/pageimage/ $image->original; // or $image->getOriginla(); But it's kind of a hack to extract the crop from the file-name and get the variation instead.
  8. I've found a way to retrieve the file, but it's not straight forward imho: $variation = $file->getVariations()->get($input->get->filename('f')); if ($variation->basename) { $file = $variation; }
  9. I'm using mod_rewrite to link to files on the live system if they are not found on the development systems: # file: .htaccess <IfModule mod_rewrite.c> RewriteEngine On # Get all asset files from remote if localy not available RewriteCond %{REQUEST_FILENAME} !-f [NC] RewriteCond %{REQUEST_URI} ^/www/site/assets/files/ RewriteRule ^(.*)$ https://www.live.com/$1 [L] </IfModule>
  10. Short description of the issue Since PW 3.0.88: When I try to retrive a croped file using the api filesManager() and it's basename, I get the original version instead of the croped variation. Expected behaviour Looking up a variation using the path and filesManager should return the variation file. $page->filesManager->getFile("/path/to/filebasename.400x400.jpg"); // $file->basename > filebasename.400x400.jpg Actual behavior The variation is returned. $page->filesManager->getFile("/path/to/filebasename.400x400.jpg"); // $file->basename > filebasename.jpg » Is this a bug or do I miss something here? Code: dump($page->filesManager->path.$input->get->filename('f')); $file = $page->filesManager->getFile($page->filesManager->path.$input->get->filename('f')); dump($file); dump($page->filesManager->path.$file->basename); Output: "/home/ubuntu/workspace/www/site/assets/files/-1579/colin-rex-434063.400x400.jpg" (79) ProcessWire\Pageimage #796f pageimages protected => ProcessWire\Pageimages #d195 original protected => ProcessWire\Pageimage #796f { RECURSION } variations private => null imageInfo private => array (2) width => 0 height => 0 error protected => "" pagefiles protected => ProcessWire\Pageimages #d195 data protected => array (6) basename => "colin-rex-434063.jpg" (20) description => "" tags => "" formatted => true modified => 1516025386 created => 1516025386 useFuel protected => true _instanceNum private => 870 localHooks protected => array () trackChanges private => 2 changes private => array (1) formatted => array (1) 0 => null _notices protected => array (3) errors => null warnings => null messages => null _wire protected => ProcessWire\ProcessWire #28d0 in .../www/site/templates/app/utils/download.php:29 "/home/ubuntu/workspace/www/site/assets/files/-1579/colin-rex-434063.jpg" (71)
  11. Would be amazing and one of the only missing parts from my point of view.
  12. Thanks at @adrian – I've also found TextformatterTagParser which also meets my needs…
  13. Hi @Craig A Rodway Thank you for this magnificent module! Using it on a c9.io developer instance where I can not send mails directly and it works like a charm! One problem I've found tough – not sure if it's your module, how php inheritance works (not so much a php-guru myself) or the way pw handles hooks or just me being stupid; If $mail->send(); gets called inside module-code (like Ryans LoginRegister.module) the mails get sent trough your modiles ___send() method. When I call $mail->send inside a template file, it does not call your function but instead (i think) the standard wireMail->send method. I need to call $mail->___send() from the template. Then it works. My setup: # Template.php simplified: function invite() { // … // same result with wireMail(); $mail = wire('modules')->get('WireMailMandrill'); $mail->to($input->whitelist('email'), $invite->firstname.' '.$invite->lastname); $emailFrom = wire('config')->adminEmail; $mail->from($emailFrom, 'ICF Equip'); $mail->subject($subject); $mail->bodyHTML($message); // $mail->send(); does not call your method but instead wireMail->send // this works: $count = $mail->___send(); if ($count){ // … } } invite(); Any ideas why this might happen?
  14. Thank you ukyo I've tried your module and it works like a charm out of the box with my setup. Installation via Module Directory and Class Name failed tough: @adrian I use this module to pare content of field in a Mail.php template that I use to send mails - I want the editor to be able to translate and edit the contents of this mail – how would you suggest doing it? I'm sending mails using custom code trough Mandrill and pulling it's content from a field like so: You are invited by {user:fullname} to join {tem}! <a href='{invite:httpUrl}'>Click here to accept the invitation!</a> $template = $pages->get('/mails/invite/'); $subject = processString($template->header); $message = processString($template->render()); $mail = wire('modules')->get('WireMailMandrill'); $mail->to($input->whitelist('email'), $invite->firstname.' '.$invite->lastname); $emailFrom = wire('config')->adminEmail; $mail->from($emailFrom, 'Sender'); $mail->subject($subject); $mail->bodyHTML($message); $count = $mail->___send();
  15. Hi @jaro Thanks for the update. Would it be possible to still have a partial export (after checking a confirmation or using module settings)? I have removed the links
  16. Hi Jaro, sorry for the long delay. Now, nuked is probably a strong word, sorry if that offended you, that was not my intention and I can change that. Now to as what happened: I stored some Configuration (like meta-data, logo, global site info etc) of my site in a Repeater Matrix structure (would rather user functional fields but they don't support all kinds of fields like images etc.) – and I also used several other repeaters on my site. Now whenever I made changes to any of them, the other Repeaters where changed as well, deleting my work I put into creating them and also the data that each of the already existing repeaters held. Thus breaking my site in some cases (where it dependet on configurations beeing present) and losing work, data stored as well as work I put into structuring things. For example: I created a repeater for Social Media Links and started filling these in. After that I would create another Repeater for Multiple Information Junks. – Now my Configuration Repeater would lose its data, its setup and the same happened with the Social Media Links repeater. I would lose its data plus its setup. I had to recreate the Configuration Repeater and the Social Media Repeater and input the data again. Until i found the culprit, I lost quite some hours of development work. And it was not obvious from where the problem stemed. At first I thought Repeater was broken, or my setup was wrong (I'm fairly new to PW). In my humble opinion, dataloss is probably the worst that could happen to a system. A PHP Error, no Problem, remove the module, fix the code. Loss of files – they are under GIT, some work might be lost but not much. But data loss, even more important if it's structural – thats really bad. Things get worse if it's not obvious what causes this data to disappear. I think, all of this is the case here. Hope this explains it a bit better. If I can be of any help in solving this issue, let me know. BTW, you said with this issue, this is not the case anyway because the module can not handle the repeaters correctly and thus also not export its config corretly, thus the output is not a complete snapshot in the first place
  17. I think a partial export is still better then breaking an entire system So even if it does not do anything, it's still better to if-repeater-return than to do harm imho. You could still log a warning that there have been unsupported fields that need manual exporting so the user knows what fields need to be exported… Now, as for me, i just had to manually copy a field (not repeater) that I otherwise could have just exported - imported… (which I now did via the db directly)… Also, shouldn't it be possible to narrow down the problem even further now that we know what causes the problem? What happens if you use "getTableData()" directly?
  18. Thanks for looking into it @jaro! Is there no possibility to check weather a field is / is used inside, a repeater and then treat it differently (or omitting it)? Since this solves a rather critical weakness of Processwire (imho), maybe @ryan can help out with this?
  19. There is a simpler solution: $this->backendUrl = urls()->httpAdmin;
  20. You might still share some of your learnings, even if you can't disclose the customer? Thanks for the Claps on Medium.
  21. Hi. Looks nice! Would love to experiment with it but it themes to log me out after a short while…
  22. Tankä, as we say in Zurich Frontend editing comes bundeled with the Processwire core! In addition we use Front-End Edit Lightbox (FEEL) like this; echo $page->feel( [ 'text' => $page->template->get('label|name').' '.ukIcon('pencil'), 'class' => 'uk-button uk-button-small uk-button-default cp-editpage', 'fields' => null, ]);
×
×
  • Create New...