Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 04/30/2015 in all areas

  1. Hi I've been working on a site that needed a calendar. Specifically it needed a calendar with support for some rather iffy recurrence patterns. This is all still pretty rough but I have written two modules. Calendar : Implementes basic event recurrence expansion using four fields: calendar_start calendar_end calendar_rrule calendar_exdate these fields are created on install (but not removed!) and are added to the template: calendar-event which is created on install (but again not removed on uninstall!). the calendar-event template is intended to be expanded to represent the needed calendar event structure. The ProcessCalendarAdmin provides a calendar admin gui. the modules and a slightly more detailed readme can be found on github https://github.com/lindquist/processwire-calendar I'm not sure how much more time I can/will spend on this, so here it is in case anyone finds it useful
    14 points
  2. I do like the Google Trends graphs, but be careful because if you put any of the "big 3" on the same chart with ProcessWire then PW doesn't even get above the bottom line. This is useful in highlighting a decline in two of the largest, and you can see that their share isn't necessarily translating into gains for Wordpress either. And though ProcessWire is a low line on this one compared to the others, there's a decline on the other three on this graph. I think these two graphs help highlight a change is already taking place and Wordpress seems to be staying steady(ish), but be aware that if they were all on the same graph then the lines on the second one wouldpretty mjuch flatline against those on the first one. I also looked around a few other sites that claim to be able to show usage stats for CMS' and they seem incapable of detecting ProcessWire (one site said there were only 17 detected installations last year or something like that - pretty sure there are more than that in the showcase ). I guess what I'm saying is that any figures should be taken with a pinch of salt, but the ones above do look pretty. If it helps anyone with this sort of argument, the ProcessWire site and forums attract on average over 2,200 users per day on weekdays according to Google Analytics. That's not to be confused with sessions, which is more like 3,200 per day. The Google Analytics graph for the last 4 years shows a healthy boost year on year.
    6 points
  3. My agency neuwaerts moved to a new location in january. The location, an old transformer station from the local electricity provider, is not only our workingplace but also a place at which events, meetups, talks and workshop are held. As often as possible we invite heads that inspire us and others to "transform" our thinking. Furthermore some rooms of the building are available for rent (i.e. for customers or other people that are interested in holding a workshop or just getting out of their every day office hell). To promote the location we've done some branding and gave it it's own website (built in 2 days, thanks to processwire)!: http://transformationswerk.de/ Plugins used: FieldtypeCroppableImage Social Share Buttons Database Backups Upgrades Template Data Providers Template Twig Replace SEO
    6 points
  4. there are always countless arguments for/against any product. i often hear from clients: "one says this, the other one says that" then i show them what google says and they get big eyes: I've also a setup of a simple former joomla site converted to PW and show them the difference in direct comparison. that's the arguments they will understand - at least in my experience. most of them don't understand what we are talking about when we go in detail, so the trust a name they know, because they are afraid of making a mistake. that's psychology use this thinking for your (and PW's) benefit! make them aware that they can make a mistake by backing the wrong horse: good luck! PS: also make them aware that they don't only have to trust the product but also YOU as a developer/agency! the product is only one part - the other part is your work and what you make of it.
    6 points
  5. Hey, I finally finished the website of the agency I worked for. The agency is Berlin based and called "DOJO" (because it's founded by Dominic and Joachim). It looks like this: Here is a link: http://dojofuckingyeah.de It was a lot of work and I still have to do some bugfixes. But anyway it's online at least If you have questions, comments or found a bug: just let me know
    4 points
  6. Pete, you are right. That's why I'm using the PW trend only as a very first WOW catcher. of course i'm honest to my clients and show them the comparison to wordpress. and i explain them why wordpress is so famous and why i trust in processwire for this special project. this does not mean that tv is far better then smartphones maybe this comparison does not match 100% to pw<->wp, but at least i experienced that the WOW-chart made my clients feel more confident to "try" something new and made them hear my explanations with other ears then before. and at least it may kick out 50% of his competitors that are offering them a drupal-based solution
    4 points
  7. Nice one! That makes three of us at least working on calendar modules ...I have been working on one myself but it is not yet ready for public consumption...
    2 points
  8. Hello, thanks for response, i actually solve my problem by using Wire Mail SMTP Module. http://modules.processwire.com/modules/wire-mail-smtp/ its same like wireMail() and also have attachment option too, vary easy to use. Thanks
    2 points
  9. Because I myself hate topics that end up in nothing, I will show here, how I built my gallery. This template file works for me: <?php include('./_head.php'); // include header markup ?> <div id='index'> <?php // output 'headline' if available, otherwise 'title' echo '<h1>' . $page->get('headline|title') . '</h1>'; // galerie.php template file // overview - and single image view //get all segments and clean segments! $seg1 = $sanitizer->pageName($input->urlSegment1); $seg2 = $sanitizer->pageName($input->urlSegment2); $seg3 = $sanitizer->pageName($input->urlSegment3); $images = $page->images; //normal content without first url segment! if (!$seg1) { // output bodycopy echo $page->body; // output images foreach($images as &$image) { $thumbnail = $image->height(100); echo '<div class="rahmen"><a href="'.$page->url . $image.'"><img class="thumb" src="'.$thumbnail->url.'" alt="'.$thumbnail->caption.'" title="'.$image->caption.'"></a></div>'; } } //check for the second urlsegment not needed if ($seg2) { // unknown URL segment, send a 404 throw new Wire404Exception(); } //check for the third urlsegment not needed if ($seg3) { // unknown URL segment, send a 404 throw new Wire404Exception(); } //special view output with an url segment... if ($seg1) { // get the image in the correspondent position: $index = $input->$seg1; $image = $page->images->index($index); // Link zum vorigen Bild: echo '<a href="'.$images->getPrev($images->$seg1).'"><img src="'.$config->urls->site.'templates/styles/links.gif" title="voriges Bild"></a> '; // Link zur Thumbnail-Seite: echo '<a href="'.$page->url.'"><img src="'.$config->urls->site.'templates/styles/index.gif" title="zurück zur Übersicht"></a> '; // Link zum nächsten Bild: echo '<a href="'.$images->getNext($images->$seg1).'"><img src="'.$config->urls->site.'templates/styles/rechts.gif" title="nächstes Bild"></a><br />'; // Bild zeigen: echo '<img src="'.$image->url . $seg1.'" alt="'.$images->$seg1->description.'" title="'.$images->$seg1->description.'">'; // Textfelder zu den Bildern anzeigen: echo '<h3>'.$images->$seg1->caption.'</h3>'; echo '<p>'. $images->$seg1->description. '<br />' .$images->$seg1->name_1.'<br />' .$images->$seg1->name_2.'</p>'; } ?> </div><!-- end content --> <?php include('./_foot.php'); // include footer markup ?> With many thanks to mr-fan, who very patiently introduced me to the basics of ProcessWire and PHP. Günter
    2 points
  10. Yay! Great job Nico. For all those who don't know DOJO: It's (imo) one of Germanys best and most creative Ad-Agencies. They're doing REALLY awesome and funny stuff. Nice to see them (or you) choosing the right system (and guy) to work with.
    2 points
  11. Today we've relaunched the website of one of the most beautiful castles in Germany: "Castle Marienburg". The Castle was built as a birthday present of King George V of Hanover (1819-1878) to his wife Queen Marie (1818-1907). Located right next to neuwaerts hometown Hanover and being one of the greatest Tourist attractions in our region it was a real pleasure to be allowed to bring the feeling of this venerable building to the digital age. // Some parts of the website are not yet translated. We know about this I'll add some details and technical notes next week (if anyone is interested).
    2 points
  12. I downloaded and installed the module yesterday so it should be up to date. But I did not notice that you be able to choose the twig version in module settings. Default is set to 1.15.0. I changed the version to 1.18.0 but I still get the same error message. Maybe it depends on the ProcessWire version!!, I use 2.5.3 in this project. Error: Exception: An exception has been thrown during the rendering of a template ("Method Page::template does not exist or is not callable in this context") in "partials/html-end.twig" at line 25. (in /../public/site/modules/TemplateTwigReplace/Twig-1.18.0/Twig/Template.php line 304) Edit: It works on the dev branch using twig 1.18.0 Thanks for your feedback
    2 points
  13. Thanks, Horst! I've created my forum account last year. The reason: FormBuilder, ProFields, ProCache So I also think there are many... many (!) other out there
    2 points
  14. OK, I'm finally going to be breathing some life into this project. I got the title sequence done (well a near final draft) along with intro music (bought the track music from audiojungle). Here's a little teaser: http://jonathanlahijani.com/wirecasts-teaser.mp4 The title sequence is a little choppy. Need to fix that. It's actually just a screen capture of an animation I made using plain old html/css with animate.css. I have about 15 videos done so far, but another 18 to go. This WordPress vs. ProcessWire series will cover many different features and quickly compare the two systems. It will not be biased and will compare the best of WordPress to the best of ProcessWire.
    2 points
  15. Kongondo, I'm still holding out hope to see your calendar module released. lindquist, looks very nice. I'll take a look later today — thanks for sharing.
    1 point
  16. Hello, from the day i am using PW every day i am loving it more and more, its really great. i am trying to create a page for website where people can apply for job and send CV as attachment too. i was searching forums from last few days and create one page with combinations of many posts in form, my code is bellow. <style> #email2 { display:none; } #message-error { color:#F00;} #message-success { color:#09F;} </style> <?php // check if the form was submitted $spam_check=trim($input->post->email2); if($input->post->submit && $spam_check == '') { $sent = false; $error = ""; $emailTo = $page->email; // sanitize form values or create empty $form = array( 'fullname' => $sanitizer->text($input->post->fullname), 'job_title' => $sanitizer->text($input->post->job_title), 'job_id' => $sanitizer->text($input->post->job_id), 'contact' => $sanitizer->text($input->post->contact), 'email' => $sanitizer->email($input->post->email), 'comments' => $sanitizer->textarea($input->post->comments), ); $msg = "Full Name: $form[fullname]\n" . "Contact number: $form[contact]\n" . "Job Title: $form[job_title]\n" . "Job Id: $form[job_id]\n" . "Email: $form[email]\n" . "Comments: $form[comments]"; // attachment if(isset($_POST['submit']) && !empty($_FILES['file']['size'])) { $filename = $_FILES["file"]["name"]; $filetype = $_FILES["file"]["type"]; $filesize = $_FILES["file"]["size"]; $filetemp = $_FILES["file"]["tmp_name"]; if($filesize < 10) throw new Exception("File too small"); if($filesize > 1000000) throw new Exception("File too big"); $ext = strtolower(pathinfo($filename, PATHINFO_EXTENSION)); if(!in_array($ext, array('doc', 'pdf', 'docx'))) throw new Exception("Invalid file type"); $destination = $config->paths->cache . $user->name . '.' . $ext; if(!move_uploaded_file($filetemp, $destination)) throw new Exception("Unable to move uploaded file"); $fp = fopen($destination, "rb"); $file = fread($fp, $filesize); $file = chunk_split(base64_encode($file)); unlink($destination); } // This two steps to help avoid spam $headers .= "Message-ID: <".gettimeofday()." TheSystem@".$_SERVER['SERVER_NAME'].">\r\n"; $headers .= "X-Mailer: PHP v".phpversion()."\r\n"; // With message $headers .= "Content-Type: text/html; charset=utf-8\r\n"; $headers .= "Content-Transfer-Encoding: 8bit\r\n"; $headers .= "".$message."\n"; $headers .= "--".$num."\n"; // Attachment headers $headers .= "Content-Type:".$filetype." "; $headers .= "name=\"".$filename."\"r\n"; $headers .= "Content-Transfer-Encoding: base64\r\n"; $headers .= "Content-Disposition: attachment; "; $headers .= "filename=\"".$filename."\"\r\n\n"; $headers .= "".$file."\r\n"; $headers .= "--".$num."--"; if(mail($emailTo, "Job Application", $msg, "From: $form[email]",$headers)) { // populate body with success message, or pull it from another PW field $messageok = "<div id='message-success'><p>Thanks, your message has been sent.<b>We will Contact you back</p> </div>"; $sent = true; }else{ $error= "<div id='message-error'><p>Error! Mail Not Sent.</p></div>"; $sent = false; } } include("./head.inc"); ?> here is my form code Please enter your contact details below.<br /><br /> <?php if(strlen($error)>1) { echo $error; } // to get JOB title and id $job=$pages->get($input->urlSegment1); if(!$sent) { ?> <form action="./" method="post" class="contact-form" id="contactform"> <input id="job_title" name="job_title" type="hidden" value="<?php echo $job->title;?>" /> <input id="job_id" name="job_id" type="hidden" value="<?php echo $job->job_id;?>" /> <input Placeholder="Please Enter Your Name" name="fullname" id="fullname" value="<?php echo $form[fullname];?>" /> <input type="text" Placeholder="Please Enter Your Contact Number" name="contact" id="contact" value="<?php echo $form[contact];?>" /> <input type="text" name="email" id="email" Placeholder="Please Enter Your Email" /> <input type="file" name="file" id="file" value="Uplode Cv" /> <textarea id="comments" name="comments" cols="60" rows="3" Placeholder="Please Enter Your Message"><?php echo $form[comments];?> <input type="text" name="email2" id="email2"> <input name="submit" id="submit" type="submit" value="Send" /> </form> <?php }else{ echo $messageok; } include("./foot.inc"); ?> form is displaying properly but emails are not going and i am getting error "Error! Mail Not Sent." what i want to do is send email with attachment and then delete uploaded file from server and of course secure. really appreciate your update. Thanks
    1 point
  17. yeah, ran into this issue recently and was banging my head against a wall until i realized my items needed a template, because the rss feed needs a link for the items; in my case, the template for the RSS item does a simple redirect to it's parent page with a hash to the id of the item (it is an event listing). if you don't have a template for the RSS item, how would people click on the link to your item?
    1 point
  18. Thanks for playing with google trends on this subject....just checked my former CMS and community and it seem that i've had luckily the right decision in 2014.....and basicly the luck to find this alternative.... http://www.google.de/trends/explore#q=WebsiteBaker%2C%20ProcessWire&cmpt=q&tz= sorry for offtopic heldercervantes just a note on the comparison topic in this threat...on the defending side i've the luck to work only for non techi/smaller clients - my problems is usually that i've build a relative professional website and they ignore the promotion and informal potential of a good website....they just wanna have one. The only real thing that i know from other parts of my life and other communities, is that a trough positive, wise work from even positive and wise people always and always will outlive everything else. And especially on webdevelopment a new thing isn't always a bad thing if objective reasons on the desk! For sure the newest trend isn't always the way to go and sometimes it could be expensive to switch or change systems......but THAT would be the best argument at all that even if you build a site with PW and lets say in 4 years there is nothing - how much effort would it really be to switch?? - data could be easy used/migrated - on the frontend part there is nothing that comes from the PW Core - so absolute no problems on this side so may you write a comparison of exact this subject (the fear or killer case in their argumentation) with Wordpress, Drupal and so on. What would be the effort to switch in worst case.....i think we all know how such a sheet would look a like... best regards mr-fan
    1 point
  19. Yes, it's for the admin. This might become a summer project
    1 point
  20. Nice! I wish I had modern projects like this. The only thing that bothers me is the big black frame, makes me feel "locked". But may it's just me.
    1 point
  21. Hi there, I am trying to use an options field in a repeater to offer the possibility to choose the kind of input which will be shown in that element: If one choose "Text", just the textarea will be shown, if one choose "Foto", just an image can be added. This works fine so far, but if I add content to the textarea or choose an image and save the page, those contents are not saved. Any idea if I just make something wrong or will that just not work in that way? Cheers, Christian
    1 point
  22. mail() is a native PHP function. So if it is not working take a look at your server configuration. wireMail() is the ProcessWire implementation of this function. Try to use this instead as it offers some more features: https://processwire.com/talk/topic/5693-new-module-type-wiremail/ Anyway I would suggest you to take a look on FormBuilder as it is made exactly for your use case https://processwire.com/talk/store/product/2-form-builder-single/
    1 point
  23. Had the same problem before... Everybody told be to use "pagetableextended" instead. Here's my original post/wish: https://processwire.com/talk/topic/9170-view-dependency-support-in-repeater-or-pagetableinline/ (you could add a post at the bottom of my post to support this wish )
    1 point
  24. Usually I add the following lines in my htaccess files. Would be nice to have this or something similar in the core packages. Maybe somebody find this useful. # ----------------------------------------------------------------------------------------------- # OPTIONAL: Redirect users to the non 'www.' version of the site # For example: http://www.processwire.com/ would be redirected to https://processwire.com/ # ----------------------------------------------------------------------------------------------- RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [L,R=301] # ----------------------------------------------------------------------------------------------- # OPTIONAL: Force a redirect to SSL # For example: http://processwire.com/ would be redirected to https://processwire.com/ # ----------------------------------------------------------------------------------------------- # RewriteCond %{SERVER_PORT} !^443$ # RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
    1 point
  25. First of all, the screenshot is showing CKEditor and not TinyMCE. You can set custom options for it in the field's settings. Here you'll find how the options look like: http://stackoverflow.com/questions/12464395/how-do-i-programatically-set-default-table-properties-for-ckeditor
    1 point
  26. While Praegnanz do use ProcessWire in some of their projects, I doubt Computerbase.de is among them. Here is a German blog post about the project, where they say they were only responsible for the frontend design: http://praegnanz.de/weblog/computerbase-workflow Gerrit van Aaken of Pragenanz is one of the best-known German web developers and he occasionally posts here in the PW forums.
    1 point
  27. I know, this topic is not up to date, but I got the same problem and here is my solution: {{page.get('template').get('name')}}
    1 point
  28. Had a lot of fun on the site, great job! You could optimize here and there (move JS to bottom blabla..) but nevertheless a great site. Bug found: I'm on a low-res laptop atm (1366x768). Texts on the cases detail pages are cut and I can't scroll down to read the rest. Not much though, I miss 2-3 lines of text.
    1 point
  29. The fact that I got all this input overnight is in itself a good argument. I intentionally omitted what I already did in the meeting to defend PW, and it's nice to see other people mentioning the same things: Told my personal experience, not being a backend coder, I have built my personal site completely from scratch and didn't get stuck even once; After my experience, brought PW to my engineering department, asked them to build one of our client's site with PW and got such good input that it's now our dev platform for small to medium projects (cases such as Volvo's CRM we use our own platform); Showed him hands on how easy it is to make changes to my own website, added a field to my portfolio section, customized it and had it output on the frontend (under 5mins); Demonstrated that PW doesn't make any assumptions whatsoever as to what you're going to build, being a blog, products catalogue, news magazine, etc; Mentioned that it's been around for 7 years (is it?) with regular updates and we have a new major update coming this week; Explained the learning curve: any programmer that picks up PW will be building a website the next day. Still, great extra arguments here. I owe you guys a beer!
    1 point
  30. lol the video cracked me up, I love companies like this, used to work in one in mauritius during break time, we'd be gaming PS3 and stuff. but my current job in Nigeria is so formal that i can't even take off my tie.
    1 point
  31. Great site Nico! Feels ok to me. And I think this is css animations on hover, there's no Nico can do to change it without switching to js. There's this problem though Maybe it would be worth to use js to reduce the size of the font on large words. If you Germans wouldntwritelikethis this wouldn't be such a problem
    1 point
  32. Looks like quite a few people have been looking and coming to similar conclusions! Few of my random thoughts- Vanilla probably should be favourite but I just can't get on with their website mixing links to the open & commercial versions - you just don't know which version you are reading about. Discourse is lead by Jeff Atwood (stackoverflow etc) and it shows. Now that's not necessarily a bad thing, but it is maybe a bit too radical a departure. And a complete resource hog with an unhelpfully non-php backend. There are responsive (or very nearly responsive) skins/templates for quite a few forums (SMF & phpBB for example), although there are still hundreds of table based ones. There is a distinct lack of integration tools available out of the box for the vast majority of forums.
    1 point
  33. No german forum here - but all en native speakers are very friendly.....at last to me until now while i'm violate grammer every now and then....
    1 point
  34. A jquery countdown lib is used. Add a date field of your desired template which want to display a countdown widget. I added following code on a event template <?php // convert a php unix timestamp to a javascript datetime format $js_datetime = $page->end_date * 1000; $today = date("U"); $end_date = date('d M Y', $page->end_date); $out = ''; $out = "{$page->body}<br/>"; $out .= "Event ending date: {$end_date}<br/>"; if ($today > $page->end_date) $out .= "<h3>Event is ended.</h3>"; else { $js = ''; $js .= "<script src='{$config->urls->templates}assets/js/jquery.plugin.js'></script>\r\n"; $js .= "<script src='{$config->urls->templates}assets/js/jquery.countdown.js'></script>\r\n"; $js .= "<script>$(function(){endDay = new Date({$js_datetime});$('#Countdown-widget').countdown({until: endDay});});</script>"; $out .= "<div id='Countdown-widget' class='clearfix'></div>"; } $page->body = $out; include('./main.php'); In the main.php output file, echo the $js variable, something like <?php if ($js) echo $js; ?> Some screenshots Usage: With this minimal bare bone code, you could extend and add your functionality. For example, build a groupon like time limited group order page, an online event registration form
    1 point
  35. @berechar, Not possible out of the box, you need to build a module for that. The good thing is I have a gist that does bidirectional save / remove for 2 pagefields and 2 templates. You have to change the hard coded values in that gist or B) write a proper configurable module for that. (Code a module for this? someone? me not having much time, sorry )
    1 point
  36. If {team->body} has hanna code formatter enabled, then it will not work as Hanna Code 1.9 does not support recursive Hanna code processing. Refer to my earlier post. Remove the {$team->body} statement from your code snippet and check the result whether it then outputs all 9 members. Once you see that working, try using the patched version of Hanna Code I submitted on Github.
    1 point
  37. Take out the "Inputfield" part, and it describes what the field is. For instance "Form" is a <form> and "Text" is an <input type="text"> You want to use the InputfieldSelect included with ProcessWire: $select = $modules->get('InputfieldSelect'); $select->name = 'my-select-field'; $select->addOption('A', 'Option A'); $select->addOption('B', 'Option B'); $select->addOption('C', 'Option C'); $select->value = 'B'; // if you want to set a predefined value $form->add($select);
    1 point
×
×
  • Create New...