Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/21/2015 in all areas

  1. Hey Guys, just wanted to wish happy holidays to all of you from Erika and me! ...and also share a small animation we did to celebrate the occasion: http://ed-works.com/christmas2015/ (this is pure CSS, there's no JS involved)
    14 points
  2. Right in time for Christmas for my client, a brand new Processwire website : Vip Air Limousine. Nothing too fancy in this one pager except it's always a pleasure to work with our CMS of choice !
    5 points
  3. ImageMarker beta 1 is out (well, sort of) Largely based on @ryan FieldtypeEvents + @kongondo MenuBuilder Up on GitHub later (if I get the chance before x-mas ) + Move to own module support forum API // assuming an ImageMarker field called 'marker' $page->marker->info;// ID of the info page (i.e the page represented by the 'dot'/'bubble' $page->marker->x;// x coordinate in px $page->marker->y;// y coordinate in px $page->marker->infoLabel;// title of the info page @todo/@brainstorm Default/New X/Y coordinates are 0,0. Is this OK? Configurable unique colour for each bubble? Would need to use colour picker + save value to db. Edit. No need actually. See post #34 below; now numbering each marker. Rename dot to bubble? Edit. Renamed to 'marker' Configurable dot/bubble sizes? Default colours? Slider/up-down arrows thing for manual edit of px inputs? Probably not; it is faster to type Reno Theme issue; since using img width 100% height auto in CSS, and since x/y saved as px, dots are off in reno theme. Using percentages should sort this out but do we want to do that or force user to upload image of max width w and max height h?. Edit. See post #34. Using percentages. Rename 'info' property to something else? Make tooltip more specific to IM dots only + unobtrusive Currently loading only info page ID in Field rather than the whole page object. User to grab pages within template file instead. Reasoning is potential performance issues if there's lots of bubbles? GitHub repo Own module support forum (assuming this goes forward ) Note Requires user to set up a file field + upload a base image to that field Currently, I really don't have time to work on this. Managed to do this in between stuff, when I got tired/bored of coding that other stuff Demo
    5 points
  4. apeisa since.u not like other avoter.i make for u i makes. unew one
    4 points
  5. Nice work Diogo! True story, I actually had a dream last night that I went into a big fancy department store to do Christmas shopping and there was a metal plaque on the door that said "Design by Ed". When I went in, everything was super minimal and modern like an Apple store, but much more so. It was like all the products for sale, and all the customers, were treated with the highest amount of respect by the designer. But here's the kicker, it was snowing in the store! (this was last night, well before you posted this) No snow for us here either. Our Christmas day forecast is rainy and 75 degrees (24c). That's too hot to even use the fireplace. Bummer.
    4 points
  6. Thanks Willy! I really like it.
    3 points
  7. I'm not sure what exactly you mean by frontend developers, but everyone, that does have access to your php files, does essentially have full superuser access over the whole application. E.g. everyone of those can just append ", include=all" to any selector and call it a day. For anyone else it's not about how secure pw's api is, but how much access you as a developer are providing the potential user via your own interfaces, may that be an api or a website or whatever.
    3 points
  8. @Wanze The thing we're currently missing a bit here in central europe: snow. Nice animation diogo. The snow stacking on the logo is a lovely and unexpected feature Merry Christmas and nice holidays to you guys as well.
    3 points
  9. When using PW's API, you should always consider your code to be operating as a kind of superuser, just like in PHP. In find() operations where you are retrieving multiple pages that you don't know exactly what they will all be, it's a sensible default to exclude "hidden", "unpublished" and no access pages, unless you request otherwise. This is there as a matter of convenience and pagination, not security. Of course you can override that (when you want to) with the "include=hidden" or "include=unpublished" or "include=all" options. Whereas with get() you are being very specific about what you want–a single specific page. Otherwise why would you get() it? Neither find() or get() are intended as a primary means of access control–we have other methods for that (see below). They are methods setup to operate in the most common use cases and keep your API calls as short and simple as possible. Just because find() filters out hidden, unpublished and no-access pages by default does not mean you should count on it for access control. That's because the pages excluded from a find() don't include runtime access control, just that which is stored in the DB. Further, the behavior of whether or not a no-access page shows up in a find() result (that isn't overridden with an include= directive) is configurable with template access settings. Granted, in most cases find()'s defaults are giving you exactly what you want in terms of excluding pages the user can't view (for your convenience), but that's not the entirely of PW's access control, which supports runtime hooks. PW's job is to provide access control for the request, but not for your own code, that's the developers job. PW intends to give you, the developer, access to everything (like you would with jQuery and the DOM), and you decide whether or not it should be available for output. PW provides you with some handy access control methods to help with this: $page->viewable(); // is the page viewable? true or false $page->viewable('field_name'); // is the field on page viewable? true or false $page->editable(); // is the page editable? true or false $page->editable('field_name'); // is the field on page editable? true or false If you want to have you own get() and find() that operate under different defaults, this is easy to do with hooks in your /site/ready.php file. For instance, this would add a $pages->one("selector"); method that automatically does a viewable() check for you and returns a NullPage() if the page is not viewable: $pages->addHook('one', function($event) { $page = $event->object->get($event->arguments(0)); if($page->id && !$page->viewable()) $page = new NullPage(); $event->return = $page; }); Would there be value in adding a method like the above to our $pages API by default? Maybe. It wouldn't benefit my own API use, because the only time I use $pages->get() is because I want to get something without conditions. But if it would be super handy for others I'm happy to add it. Here's another example, lets say you want a method in $pages, like $pages->all("selector"); that always returns all pages with "include=all" implied: $pages->addHook('all', function($event) { $event->return = $event->object->find($event->arguments[0], array('include' => 'all')); });
    3 points
  10. Makes sense to me, I'll move that <?php endif; ?> down one line, so that the name/version only appears when logged in.
    3 points
  11. I am little afraid of all the hidden meanings of that avatar... no.hidden meangins i speaks.yur name and.my mom say APE PIZZA ? i says no.u gross .mom say APE PISA ? i says.ok mom say STILL WANTS PIZZA i says ok.i put in pizzas mom says I DONUT WANT TO SEE BALLS ON MYS PIZZA i says ok i cover.balls w pizza mom say I WANT SUM grASS W THA PIZZA i says ok.and put sum grass at avoter buttock mom says OK.i says ok
    2 points
  12. What is front-end and what is back-end? That term is just for our point of view. The code powering the rest of PW doesn't know about this, nor does it know if you are using it for an access controlled website, or some command line API tool, or something else. While your front-end page is rendered, there might be several other core and/or 3rd party modules also doing other things (because they auto loaded, or they were requested by the page), and those modules in turn might be doing several of their own $pages API calls that have absolutely nothing to do with your output, user or access control. There is a much bigger picture than just what you are doing in your template file. The built-in filtering that you have on top of $pages->find() is actually a pretty unique case in the overall API, and the phpdoc for that method outlines it as a unique case. After all, find() is primarily used for lists and pagination. You have access to everything with your API code, but your code is not the user, and the user is not your code, so be careful not to blur those lines. The API is there to assist you in getting any content you need as quickly and easily as possible, but you are the gatekeeper. It's important to keep this in mind anywhere in the API. In the more than 5 years of this open source project, I'm not aware of any instance where someone has misused a get() method and caused a security problem. So we're talking about a hypothetical scenario of someone making a code error, that to my knowledge has never occurred before, though who knows. We could construct all kinds of scenarios where a developer could misuse the power provided and get themselves in trouble. PW is a tool that when used correctly, provides very strong security and its been my primary focus in this project. But I also don't believe in magic_quotes, safe_mode or trying to save developers from themselves by introducing obstacles. These things might seem to provide more security initially, but actually create a perception that one is no longer responsible for their own security and thus become security problems themselves. I have no qualms about an access controlled "one" function per an earlier post, which could be a useful shortcut for some developers and scenarios. But I think it's important that such a method is completely distinct and also outlined as a unique case, because PW's API context is one where the site/app developer using it carries that power and responsibility. We like to access control the user, not the developer. It's good to see this Security board finally getting some discussion.
    2 points
  13. Just sharing real-world observations. This is a point of confusion for some devs, including me, and thus I believe it makes sense to ask whether it's working as expected. As always, if the general consensus is that it works exactly as it should, then it probably does, and the disagreeing minority should just suck it up. Either way, when it comes to questions that involve security, I tend to gravitate towards the most obvious and fool-proof approach possible
    2 points
  14. 2 points
  15. I read about this new HTTP/2 webserver, Caddy. It's written in Go and it is really super lightweight, the binary is just 3 MB. And the best thing is, that it's super easy to use. You just put the binary in the path of your website and start caddy – and already you have an HTTP/2 server running that serves static files (and who doesn't want, as HTTP/2 is The Future™). And the best thing is: no PITA with certificates and all these thing, as Caddy has letsencrypt already built in. So as you start it, the certs get generated and your site is automatically running on an encrypted connection (which is by the way required for HTTP/2). The best part is however, that you can connect any backend to Caddy, for example php-fpm. This comes even with a "recipe", so you usually don't need to worry about configuration this. So I cobbled something together to have Processwire running with this server, and guess what: it works. Almost. The site is running, but the admin area is still behaving a little bit weird. I cannot edit pages (instead I get the "bookmarks" page) and all the behaviour of the admin area is a bit strange. The other option is that I get "Unrecognized path" I believe this is still a problem with rewriting which I can't figure. This is my Caddyfile: mydomain.com { root /var/www/mypath fastcgi / unix:/run/php/php7.0-fpm.sock php rewrite { regexp .* ext / to /index.php?it={dir}&{args}#{frag} } } I go crazy with the rewriting. Here is the documentation, maybe someone has an idea. Thanks and maybe you have a reason now to try Caddy yourself.
    1 point
  16. this one is trivial feature request : PW should not disclose its version number to unauthenticated users on the backend login screen. ok, this is about security through mere obscurity, so nothing vital here, but experience tells that attackers really love to easily know the exact version of their target.
    1 point
  17. I completely agree with LostKobrakai, however to answer your question I would do the following: <ul> <?php foreach($page->menus as $item) { $prev = $item->prev->depth ? : 0; $next = $item->next->depth ? : 0; $depth = $item->depth; $count = $depth - $next; echo ($prev < $depth ? "<ul><li>" : "<li>") . "<a href='{$item->menu_page->url}'>{$item->menu_page->title}</a>"; if($count == 0) { echo "</li>"; } else if($count > 0) { for($c = 1; $c <= $count; $c++) { echo "</li></ul>"; } echo "</li>"; } } ?> </ul> I've just tried to come up with this from my head, so it might need a little tweaking. EDIT: Updated based on Macrura's notes.
    1 point
  18. If $audience is an array of pages then you cannot get the "title"(sic) from it directly. Use the implode function to get a string with all titles. Also you should rather take the names or use some other function to sanitize titles to valid class names.
    1 point
  19. Check this: http://codepen.io/rolandtoth/pen/GoqEYZ
    1 point
  20. Can you show the site in question? I think there's an easy CSS/markup fix but it's hard to help without seeing anything.
    1 point
  21. Looks good! Setting coordinates in percentage wouldn't work? Markers will go wild on responsive sites if pixel values are used, I guess.
    1 point
  22. Is there a specific reason to do so? Maybe we can help you out without the need for you to reinvent the wheel.
    1 point
  23. I had a dream that I was locked in a fancy store full of strange amber liquid and as I stared into the golden abyss a passing stranger brushed away the fluffy snow to show the words... Oh, sorry, that wasn't a dream - I fell into my Weissbier last night. Just remembered. Happy Crimble!
    1 point
  24. If you're already trying to build menus manually an not automated from the page tree, then you should take a look at kongondo's menu builder module.
    1 point
  25. Crawlers do not have any php versions only servers do (otherwise this would be a gaping security hole). So that's certainly not the problem. But you're missing head and body tags, which while technically optional in html5 are still needed by lots of crawlers.
    1 point
  26. Hi there, I've discovered a bug yesterday that only seem to affect the Module in certain conditions. MarkupSEO seems to work ok on our site but when crawlers or SEO Profilers tries to profile our site, the module seems to encounter an error in a class construction stage and stops. For a long time, I actually thought this was due to the Blog Module I had installed (Long story short i had lots of installation issues) and there's a particular error message that started occurring around that time in our system that I always attributed to the Blog Module Installation. Everything was working as far as I know, so I dismissed the errors as not something critical. We kept getting messages from profilers/crawlers that stated they couldn't read our Meta Tags (which is produced by MarkupSEO) but when we would inspect our HTML on our servers and also on test servers, we could see all its presence. So it baffled us for a quite a while. Then I stumbled on a SEO Profiling tool that actually showed the HTML it was using to profile, and I couldn't see any tags MarkupSEO produced. That's when I realised there must have been an error with the Module instantiating and doing its task, when it was crawlers or profilers using the site. So when I had a look at our error logs I realised that this reoccurring mysterious error was in fact originating from MarkupSEO. My guess for the cause of the error is a change in how they implemented class construction in one of the different PHP versions. I'm still running on PHP 5.5 on our server and my guess is that crawlers and SEO Profilers are on a newer PHP version and there's some problems instantiating on a newer version. This was the profiling tool I used to discover the error: http://www.seocentro.com/tools/search-engines/metatag-analyzer.html This is an example error log 55 minutes ago 2015-12-21 10:14:29 guest / SQLSTATE[HY000]: General error: could not call class constructor [pageClass=Page, template=] Happy to provide any additional info that you might need. The site I'm working on is called sprachspielspass.de just in case if it works on other test sites you've chosen
    1 point
  27. Maybe a hook which changes the names to the individual titles of the new generated page. Just take a closer look to the HelloWorld.module in the modules directory. I have a page with 6 languages and ran into the same stuff. I was short in time and the idea came just after the launch. Maybe this is an idea which could let to the right solution.
    1 point
  28. Hello all, My name is Jim Jackson (Username: Zislatik) and I am amazed at processwire. I have been a student of MODX and always found my web development endeavors coming up a little short (my failings not MODX). Modx was the first CMS that I installed that made sense to me and I have created several basic site in it. I love the Modx community but in recent years I feel it has gotten pretty "big" as they have grown in a direction I am not sure I want to follow. I still love the community and I am very thankful to have found it. I am extremely please that I have found processwire. Processwire works the way I think when it comes to a CMS. I love that the community is smaller and developing. I feels like I can get in on the ground floor and watch it develop. I loved template variables, snippets and chunks in MODX which is why I gravitated to MODX but I am finding that infinite fields rock! Mind you I am a novice and I am sure I have just scratched the surface of what processwire offers. Anyway, I just wanted to introduce my self and for warn everyone that I will probably have a stream of newbie questions slowing the forums. I do have a couple of quick questions. 1. Are there any other MODX converts here and what would be the advice you would offer to a student of webdev in learning the differences? 2. I have a basic grasp of php, html and CSS, is it really as easy as it seems to build a site with process wire? 3. Any developers out there making money with processwire professionally? I have seen paid modules but I mean building site for customer in process wire? Again, thanks for any information provided. I am happy to have found processwire and I appreciate everything in advance. Thanks, JIm
    1 point
  29. I'm also coming from MODX-land. Years ago, discovering MODX was like a salvation, because it was not biased in any way or didn't forced any particular output, but stayed behind the curtain and abstracted all content away into a nice tree of resources. Whether these resources would become pages or just parts of them, or something completely different like xml nodes didn't matter, and that was quite a relief coming from "everything is either an article or page, since I'm a blog system at heart" WordPress. But in the end MODX had its oddities [[LikeThis? stuff=`notintuitive_at_all`]] and the MODX team decided to put that very odd, editor-unfriendly, buggy and slow backend in Revolution. Then again, discovering ProcessWire was like a salvation...
    1 point
  30. What extra tutorials would you like to see? Also 3. I mostly use processwire for my full time freelance web designer work unless there's a legacy cms (in which place I usually try and move them to pw anyway) I'm a front end guy and it's a dream not having to do it the "template engines way" I'm looking at you Drupal :/
    1 point
  31. If you know how to put a HTML website with their scripts and css files running, you are already on your way. Processwire content gets called through the API and you can basically put it anywhere you want. I have built a lot of "basic" websites in a better way than I could have imagined with other CMSs (or on my own for what matters!). If you'd like to see some stuff built into the basic level, I would gladly show you.
    1 point
  32. Jim, What the guys said above. Welcome to ProcessWire and the forums Guilty as charged! ProcessWire makes hard things easy...but you also need to be willing to get your hands dirty. Nothing is output for you. In addition to the stuff above, have a look at the docs (page, pages and selectors are a must)...and you should be on your way I think these guys are on to something http://directory.processwire.com/
    1 point
  33. Since the days back then of the modx evo course change, many modx refugees here. So welcome to the club You can start off with tutorials or clips: https://processwire.com/docs/tutorials/ https://processwire.com/talk/forum/13-tutorials/ https://processwire.com/videos/ http://processwire.tv/ You can find also some modx/processwire threads in the forum like this one: https://processwire.com/talk/topic/3111-a-modx-refugee-questions-on-features-of-processwire/ When you start with Processwire you have to make your self familiar with the concept that it is "an API-first CMS" a so called decoupled or headless cms. Together with the processwire flexible api makes this a diamond in a pile of cms systems out there. There is no building websites "the cms way" but you build your frontend separately in any way you want. That means, for one example, that you can directly apply any level of html, css and php experience that you already have. Here's another quick walk through https://processwire.com/talk/topic/4173-grouped-forum-posts-links-articles-tutorials-code-snippets/ There are quite a few people here making money with websites using processwire as their tool of choice. https://processwire.com/talk/forum/9-showcase/ Making money with processwire would not be different from any other cms system as it depends on your marketing, contacts, planning, etc. but in any case, processwire is a time saver getting your things done faster.
    1 point
  34. Start with this link https://processwire.com/talk/topic/3691-tutorial-a-quick-guide-to-processwire-for-those-transitioning-from-modx/
    1 point
  35. Welcome aboard, 1. We have plenty of converts here. Myself I'm a WordPress convert. However I'm not a convert from MODX so I will not be able to tell you the differences. 2. ProcessWire does not alter any of your markup and only when using ->render() will you find it output markup. With the new front-end editing it does alter your markup but only when logged in with the permission to edit using the front-end. The HTML, CSS and Javascript is completely down to you. By default ProcessWire uses PHP as it's template engine. So the only thing you need to learn is API and that's it Oh yeah, and the API is super easy to learn. Trust me ProcessWire is a front-end developers dream. 3. I work at an agency but also freelance. While I don't charge much at all for freelancing as my job is my hobby. ProcessWire is always my CMS of choice. So I guess you can say I make a living out of ProcessWire.
    1 point
  36. Hey all, I'm on this. I actually never noticed it worked that way because my installs had the page set to published, so it showed in the list of children. For now, the temp fix is to un-hide the tree page.
    1 point
  37. Managed to quickly put something together. Will post an update here Sunday or Monday if possible + send you some requests for the JS...
    1 point
  38. Relevant thread: https://processwire.com/talk/topic/132-redirect-after-login/
    1 point
  39. Since there are a lot of topics about the same theme, I decided to write a small module which overwrites the core function ___SetupPageName(). The module allows now to populate the page name using proprietary date() function. Works like PHP date() with follwing exceptions: Everything between the brackets is detected as format string, meaning no 2nd parameter possible. No need to use quotes around the format string. Spaces not allowed. from any page property, page field including subfields, parent property, parent field etc. Meaning everything what you get with $page->get(); including dot syntax. The function will give error and warnings in case of unproper settings, but creates the page with name 'untitled' anyway. Download here: http://modules.processwire.com/modules/process-setup-page-name/ Some Examples The following settings in parent template 'Name Format Children' will assign name immediately. date(Y) date('Y-m-d') parent.title parent.parent.title parent.id template.id assign name after page saving and/or population of depending field. Overwrites 'untitled' after all fields which are defined in parent template are populated. id (any other page property) pagefieldname, multiple pagefieldnames show a warning. pagefieldname (value not populated)show an error. date() // empty, no format assigned date(Y // missing closing bracket date(Y md) // unallowed space notexistingfieldname notexistingproperty existingfield.notexistingsubfield The function in the module ___SetupPageName() could be completely copied as is to the core class $pages. @Ryan Would be nice to see this in core. Related topics: https://processwire.com/talk/topic/8576-name-format-children/ https://processwire.com/talk/topic/8217-name-format-for-children-based-on-any-field-not-just-title/ https://processwire.com/talk/topic/11628-custom-page-name/ https://processwire.com/talk/topic/11349-page-add-step-not-being-skipped-when-name-format-for-children-is-set/ https://processwire.com/talk/topic/10701-automatic-page-name-using-processpageaddexecute-and-pagetable/ https://processwire.com/talk/topic/10208-pagetable-automatic-page-name-format-when-multiple-templates-allowed/ https://processwire.com/talk/topic/9979-name-format-for-children-for-multiple-allowed-templates-for-children/ https://processwire.com/api/modules/process-template/ Any recommandations after testing welcome. Download here: Download here: http://modules.processwire.com/modules/process-setup-page-name/ Edit: small enhancement to prevent display of warning twice. 23.12.15 multiple values possible now 24.12.15 made compatible with PW 3.x 27.12.15 Update Version 1.0.8 09.01.16 Update Version 1.1.0
    1 point
  40. What kongondo wrote is right but unfortunately this doesn't work in MarkupSEO (at least I couldn't get it to work). Fortunately it's very easy to override values because all seo fields are real fields: $page->seo_title = $page->seo_title . ' - My custom suffix here!'; And you can do this with all the MarkupSEO fields. To set a new value for the og:image, modify the "seo_image" field (untested).
    1 point
  41. Mod Note: @Jason, Please try not to double post. You asked the same question earlier today . Merging this thread with MarkupSEO's support forum since your question is really about that module.
    1 point
  42. I really like the ease of use of this module. I'm using it on a page which I'm working on and seems to be pretty good for google searches. But I have one issue... I would like to have the page I'm working on in google searches listed as this: Main site child page 1 child page 2 child page 3 child page 4 child page 5 child page 6 child page 7 child page 8 as only one google search listing. Right now I get every page separately in the google search, making it look little messy. This might not be due to this plugin but google settings but I'm not sure. Anybody knows what I should work on to get it working?
    1 point
  43. Just a small feature request. Any chance of added an option to do Enhanced Link Attribution? All it requires is an additional line of code to the Google Analytics code that is already generated (highlighted in Red) I will probably modify my local MarkupSEO module code for now but it would be great to see it as part of the official code branch. P/S I'm a fan of the module. Would happy to buy some beers to show my appreciation. ga('create', 'UA-XXXX-X'); ga('require', 'linkid', 'linkid.js'); ga('send', 'pageview');
    1 point
  44. Wow, I thought exactly the opposite, that I had to keep that option checked! Thanks!
    1 point
  45. Gebeer you could try to set them - i do that with a custom script to get seo fields prefilled on publishing if users don't fill seo fields manually. example: //set seo_title on publishing $page->set ('seo_keywords', $default_keywords); //set seo_description on publishing $page->set ('seo_description', $default_desc); ... set should work for you. best regards mr-fan
    1 point
  46. Alternative to changing the module itself is to render the stuff yourself...so you've full control over the output meta tags like Nico wrotes: $page->seo // includes all the default values mixed with the page related seo data // e.g.: $page->seo->title $page->seo->keywords // for rendering all fields with the module $page->seo->render //example with DC and own markup echo '<meta name="DC.descritption">'.$page->seo->description.'/>'; so the tags are up to you in your frontend template. May the best solution if you don't wanna change and maintain module files. regards mr-fan
    1 point
  47. You at the wrong place. explanation see line: https://github.com/NicoKnoll/MarkupSEO/blob/master/MarkupSEO.module#L417 you've changed the fieldname in the module settings page. change the <meta> tag itself could be done in this line: https://github.com/NicoKnoll/MarkupSEO/blob/master/MarkupSEO.module#L340 for real dublin core metas this module should get an option for this with a checkbox - to add the DC. tag to every meta tag and add additional tag like content type or created date.... could be done with a checkbox in the settings and an additional if statement to get those DC.tags. May Nico find some time, if i've got more time on my hands i would proud to contribute to this awesome module...but my calendar says Best regards mr-fan
    1 point
  48. Did just PR the german translation of this great module... https://github.com/Manfred62/pw-modules-lang-de/pull/1 proud to contribute with some translation. One Feature request comes in my mind - that would be a nice to have - and for my installations i probably would challange this with some little hooks on page saving...and some hacking - but within the moduel it would be much better. feature of the "smart" title|description would be: ->if some smart fields are set -> that on first page publish -> if no SEO fields are filled out by the user ->the smart title|desc should filled in the seo_ fields This has the benefit that the Google Preview would work and simple editors see what really would generated at frontend -> and they can improve this output with own entries in the seo_fields.... i think this would be a hook after page save and Page::statusUnpublished.....but i'm not so expirenced to edit such a complex module...i'm just able to hack a little bit with my (german: gefährlichem Halbwissen) regards mr-fan
    1 point
  49. This module adds basic capability to restrict page rendering to selected number of IP addresses. Note: this is only meant to be used as an additional security measure in addition to typical username/password authentication or something similar, not on it's own! Currently individual IPs (127.0.0.1), IP ranges (127.0.0.1-127.0.0.255) and CIDR format (127.0.0.0/24) are supported. You can also decide whether restrictions should apply to a) admin area and b) authenticated users. By combining these two options you could create a site with public access restricted to selected IPs while still allowing users outside those addresses to have full access after authenticating. Better description can be found from README. And once again: all comments, bug reports, feature suggestions etc. are more than welcome! So far everything seems to work as planned, but I haven't had the chance to test this nearly as thoroughly as I'd like (that's also why this little cutie is flagged "Beta" in the modules directory..) https://github.com/t...erIPRestriction http://modules.proce...-iprestriction/ How to install Copy PageRenderIPRestriction folder to your /site/modules/, go to Admin > Modules, hit "Check for new modules" and install Page Render IP Restriction. That's it. How to use Default out-of-the-box settings don't introduce any restrictions. You can edit module settings (Admin > Modules > Page Render IP Restriction) to include those IPs you wish to allow access to your site for. Once you've filled in at least one IP address and saved module settings restriction will be immediately effective. Please note that if you fill in at least one IP address and check both "Restrict admin access" and "Restrict access for authenticated users" you will no longer be able to reach Admin without valid IP. Make sure that you've tested everything properly before turning those options on (and avoid turning them on at all unless you're 100% sure that you know what you're doing)
    1 point
×
×
  • Create New...