joer80

Members
  • Content Count

    297
  • Joined

  • Last visited

Community Reputation

131 Excellent

About joer80

  • Rank
    Sr. Member

Contact Methods

  • Website URL
    http://www.webprojoe.com

Profile Information

  • Gender
    Male
  • Location
    Texarkana, TX

Recent Profile Visitors

3,308 profile views
  1. joer80

    That is a good point. We probably need to do this through an s3 files and s3 images field type. If the project used sessions stored in the database and only these fields for files and images, I think all user uploaded assets would be the same on all web servers.
  2. joer80

    I am also considering mounting assets folder as a bucket. https://github.com/s3fs-fuse/s3fs-fuse/wiki/Fuse-Over-Amazon
  3. joer80

    Scripting via the rest apis could be very handy and make it worth while. One pro also is also the file storage is cheaper. Around half the price per gig for storage. Doing something like aurora over a regular mysql could be different though. Not only is it fully managed and replicated but the storage system is also distributed in a way that may take a lot of the pain points you mentioned away. Docs say you do not need to assign a storage number and you are only charged for what you use and it can grow up to 64 TB without rebooting. It also has up to 15 low-latency read replicas, point-in-time recovery, continuous backup to Amazon S3, and replication across three Availability Zones (AZs) by default. It says it keeps 6 copies at all times and instance failover typically takes less than 30 seconds.
  4. joer80

    Another option might be to make a hook that uploads the files to s3. That should already be HA. I think we have a plugin for this already, but it may not work as if you fire up a new web server, the file will not be in the local install but it will be on s3. It will need to know how to pull it back down if missing. This also adds quite a bit of hassle in needing to setup s3 buckets and IAM roles for every website.
  5. I was thinking about some of the ways to provide a low cost high availability service in my hosting environment for my clients. I already use RDS by amazon, so it automatically replicates my database over 2 availability zones and does fail over. This seems to take care of the database layer, but my files are spread out/out of sync over the 2 servers home folders. There is still the need to sync the asset files. Would it be a good way to solve this by simply using an image field that stores the user uploaded images in the database instead of in the assets folder? I would guess I would need to make a new image field type for this. For performance, I would think you would want it to cache to the local disks asset folder on the first load so it doesn't cause extra db strain. It would only pull the blob one time. It sounds like a nightmare trying to rsync a number of home directories and only use that source when the copy is full. Maybe the way to do this would be to make a hook on page save instead of adding a new field type. ie. On page save, add images to the database so I can rebuild if missing. Let me know your thoughts! Thanks!
  6. joer80

    How would you nest more than one deep? For example, with my approach, I can insert a section, then a grid, then a cell, and then put an accordion into one cell, and then put another grid into that accordion. So I can do text in the left part of an accordion and an image in the right. Here is another screencast. Also shows I got rid of the content layer. I don't find it necessary. This is a one pager I did for our imaging clinic. It had an accordion example. https://www.hceimaging.com/
  7. joer80

    I love this idea! I would use it.
  8. I had the need to do something similar before. We wanted to know how far users got into a multi-step order process, and also what values they were putting in during each step and the referring pages. I found inserting a record on every page load worked well and was fast. Don't increment anything or it is slow, just insert new records and use a weekly or monthly cron to process the data to keep the table size manageable. Add in an optimize command also to clear db overhead after rows are deleted. I insert the session_id, timestamp, ip address, etc, but none of the data is public. Used for troubleshooting.
  9. joer80

    Give me a hypothetical situation and I can see if the page layout group method would be enough. By assigning a page layout to each page to form groups of pages. A page can have its own items and the items attached to its page group at the same time. As an additional layer, you can use hanna codes to share code between page groups even.
  10. joer80

    My next step is to see how hard it will be to make a module that will allow me to keep them all up to date as I make changes and add templates. I will have 5 installs within a week!
  11. joer80

    I just noticed that feature earlier today and enabled it! Whats cool also is I can insert a grid inside my accordion so I can do columns inside my accordions! Just tested it out.
  12. joer80

    I have decided to clean this up a bit. It seems adding a content page under a page just to separate it from the detail pages is not optimal or necessary. I have decided on another way to flag what the child items are. I now use the "Page" template for pages that have content rows as children, and every other page type that can be added under Admin Home is made to have detail pages as children. ie. Services, Products, Basic Pages, etc. I show this with the page template using the globe, and the other master types using a dark circle. I also added a "Basic Pages" master/detail set that allowed me to trim up my root page list and move things like Terms and conditions and Privacy Policy under there as detail pages. This also keeps me from building a section just to add a text item to it. I just add new and type content. The basic page template has the inner page heading, and a section and text row built in so it saves time adding these info pages. So you can add a "Page", and still build it out, and also select a page layout of "Inner Page" to give you the automatic page heading, or blank gives you a clean slate, or you can work with an existing page type like "Basic Page" or "Service", or add a new template with custom fields and work with the same master and detail format. Just tell it to use page.php as the template, give it some fields, and make sure it selects a page layout.
  13. joer80

    Here is how the map row looks. Its a regular grid item with the collapse gutter option set and the first child cell set to 1/3 on large screens. I could do the map side as a map.php template though instead of a php snippet even though its just 5-10 lines of code. I did a contact_form.php for the basic form I used on the contact page. It's easy to use checkboxes to know what fields to make with you add it to the page. Address, phone and such is still pulled from hanna codes so if you don't want fax you just leave it blank. My goal is to be able to import the whole row from an external library of some sort and not have to build them.
  14. joer80

    I think I am going to add a lazy cron style auto update module for important security updates, and maybe hit a manual update when you are backed up for feature ones. I can launch this as version 1.0 and check an endpoint for the most recent version from time to time to let the user know if there is an update with new features. If I add a new drop-down/option list to the section.php template in 1.01, it would make the database changes and replace the section.php file to read them. Ryan is also doing a great job with page import and export, so you could go to a website and export the home page and all of its children, and import it into a new website. You can already drag a row from one page to another and carry all of the children items with it. Since the code snippet template has fields for its own css, js, images, php code and html code, you should be about to export whole features by importing one page into your sitewide folder or a page layout folder that target your head, bottom, and page at the same time. I probably need to put a row gallery up somewhere also so I can upload row designs and not just mark them as inactive. Keep the websites clean but browse for ideas and pull them in. Just have to standardize things like the hanna tags so the address info and such comes in right for a map row.
  15. joer80

    Oh cool! Are you a full-time programmer? On the detail page layouts, I didn't want to be required to select a page layout every time I add a child page so I made that drop down. (For blog posts and services and products, etc.) . So if I set a detail page layout on a page, any children will use that even if they do not set one. My page.php template says "if the current page I am showing doesn't have a page layout selected, check its parent to see if there is a detail page layout I can use". So if I add a blog post (blog_post.php), or a new service page, those do not even have to have a drop down for selecting the page layout as part of their template fields. I can also set the blog template only to allow blog post children, so it saves the whole step of selecting a page template or layout at all. If I want, I can allow content children also, but its not really necessary since you can add items to the page layout. blog and blog_post or services and service would still use the page.php template though. They are just templates to get the unique fields. After I clean it up some, I will see about making a site profile.