New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New revised user experience - Refinery Glass #3071
Conversation
Includes (but not limited to): - Invite user, activates account from link in their email - New 'glass' look (css), getting closer to responsive design - New 'glass' editor using grande.js - uses contenteditable attr - AJAX forms & JS validation
- We feel its Okay to be quite limiting of browsers here to cut down on testing time and be able to use new browser features. For the actual clients' sites it is probably good to support a wider range of browsers
- Plugins have a default order - New plugins specifiy a "position" number (0-100) - Refinery::Core.config.backend_menu_positions can override these positions - 0 specifies hidden, just so there is no menu item for the plugin
- Found this useful for creating a thank-you page in a seed.rb, then finding it by its "identifier" in the controller to redirect to it - This is an attribute set only in code, and read only in code - so we don't rely on, for example, redirect_url not to be changed by the admin
- Single click to upload (open browse for file window) - Progress bar while uploading - Image shown in place
- It flattens the HTML and strips most attributes
- search for each word in the query (split on space)
That's a really cool improvement. Should we start using it now and check if all extensions works well ? @parndt Could we target 4.0 for this PR ? |
What do you mean @bricesanchez by "start using it now"? We are using it in production, but that only means it works within the way we use refinery. As to the extenstions, it is not a "check if they work well" but "port them over to the new html conventions" if that makes sense. I recommend dropping support for Inquiries, and instead make sure the engine generator outputs a good inquiries engine. I have a blog plugin started, it has some feature overlap with the current blog, but it also differs in many ways. We can potentially come up with something in between. I have never installed any other extensions, so I can't speak to them. |
By start using it now i mean in your opinion is it ready to be merged on master even if it remains works to do ? I like your idea to drop the support of inquiries and improve the form generator. |
To be honest I don't know what it really means to have something merged into master. Please note that there are a lot of skipped (essentially failing) tests. I skipped them so that I could put a comment in and describe what is going on. Some are just because I couldn't get the test to pass when I think it should. With less automated tests it means we rely on more manual tests (which are all run withing our environment). Back to the questions, I don't have a good idea who is running off of master, so it is really a question for them I guess. We have dropped functionality with this update so I guess worst case scenario it is a scramble to re-build the missing functionality and fix the bugs that are still lurking. |
Why dropping inquiries? |
Looks good. |
I like the idea of master branch always being working, but unreleased and not necessarily supported, software |
@anitagraham, my reasons for dropping support for inquiries:
|
@parndt, I can confirm that this PR is working. But I can see people potentially thinking it isn't "working" because of the missing features. It adds features and removes some. The main features removed at this point on my list are:
|
@stefanspicer yeah, I think that's what I meant. Things like i18n are actually quite a big deal as we have users using many different languages |
Yes, I thought that would be a big deal. And the reason it was left out is simply that we have had no need (up to this point) for anything other than English, so it naturally sort of slips behind. |
Refinery Glass Authentication I18n will be finalized today, we will dig into Refinery I18n this week with a colleague. Will make a PR on your repo soon @stefanspicer. Im here speaking about hardcoded back-office english, we will fix keys and ensure :en and :fr translations are complete, but wont dig in other yml. About content I18n feature, it is apparently disabled and I have no idea about how it works. @stefanspicer @bricesanchez @parndt can this be worked out quite easily ? |
I18n will be a real challenge as we spoted hardcoded english in js, css (?!), views and controllers. |
@JulianNacci, yes, not a simple task. I want to support you in any way needed. If you want to put a list together of any tough ones, that might be helpful:
|
Thank you @parndt, it's not that frustrating, and is something I've attempted to do already. I actually have 9 other (fairly small) changes that I've extracted out of this in preparation to submit them each individually. I've attempted to make each of the current 18 commits a separate "feature" of their own that follow the current tip of master. The only exception is the first one Oh, and I forgot to mention that the glass-3-0-2 branch is what @bricesanchez and I are currently working on for the next PR to replace this one. It has fixes and features from the past 3 months in there too, and has been rebased onto master. |
@parndt shall we work on a plan together for how this should be broken out? Or @bricesanchez as you dig into this PR maybe you'll have some more insight and can speak to this? |
I am supremely low on time right now, sorry. Feel free to ask me directed questions though and I'll do my best! |
@stefanspicer I've dig into this PR and i'm sure the result of your work could be the future of Refinery CMS. I'm in favor of splitting this PR to be able to make a good review and reduce the number of regressions or bugs. In the other way, i'm interested to try it as it on a new project and see what happens. I've also seen that there is nearly no changes in controllers or models, only views, css and JS and i'm asking myself if we could use it as an engine before merging it. If we split the PR, we could make this plan :
|
I think your first comment about the future of refinery is actually my biggest question. Before I go and put even more hours into this, I need to see some people to agree that this is the future of refinery. My team and I see how refinery could become the best CMS for developers to very efficiently provide a custom solution while surprising and wow'ing their client at the same time. If you are willing, I think the 2-4 hours you spend trying this out on a new project will give you more insight than the 12-24 hours I could put in splitting this out. I would even gladly work with you on getting it set up and walking through some things as documentation is currently lacking. This can definitely be an engine, but I don't think this is the way to go. My pain in that was that it started out as an engine and was one up until Apr 2015 when I put the effort in to clean it up and bring it into the refinery core while being careful not to revert all the changes that happened while we were off in our own fork. So if you're okay with it, I'll wait until you have at least attempted to use this on a project and we'll probably come out of that with a more specific (and hopefully better) plan on how to merge this PR. Let me know if/when you want me to jump in and help out on your project. |
I've tried your PR on an existing project in version 3.0.2 and on a dummy project. This is my thoughts : Pros :
Cons :
Questions :
|
We don't either 😉 |
I'm glad you like the look. It's had many iterations. This live editor idea is the future of the web and refinery has an opportunity here to lead on certain aspects if we want to take this on. Quick note about turbolinks: We're planning on going that way, just trying to keep changes as small as possible and modifying the Updating a project to this version is going to be somewhat painful regardless of how we slice it. I think creating good guides will help with this. For example, you have a legacy FAQ engine. Regenerating it with the same parameters and then using On to splitting and merging incrementally. Let's go one chunk at a time building upon the current 3.0.2. What is the first PR chunk now that you've dug in a bit? Same as before @bricesanchez "change layout of the admin (sidebar with plugin menu and general CSS)" |
Is that the plan @bricesanchez? It may make more sense to take the menu and index views as the first chunk. |
Seems like it's using the old icons? Otherwise looks generally good. |
Yes @stefanspicer :) |
Thank you for merging #3167 @bricesanchez. That's great. On to the next chunk? (or "shard"?) I have 90% prepared the admin/users/index view. Shall I submit that PR next? |
@stefanspicer You're welcome!
We should stay concentrate on this repo before extensions repos. We could work on the layout/views CSS styles for backend (pages, images, resources). No need to work on the inline editing feature at this time. What do you think? |
I'd prefer to do the admin/users/index view next just because it is most of the way there already. But I'm OK to switch gears. Even though refinerycms-authentication-devise has been technically broken out into an extension, I still see it as very much apart of the core. So my fist choice is admin/users/index. Second choice is to do admin/resources/index next. I want to do a simpler index first, then move to admin/pages/index. Let me know, and I'll get to work. |
@stefanspicer I'm ok with that, i will help you to get these PRs merged :) |
Yes, users are still sort of part of the core, but not the devise implementation.. will be interested to see what you come up with anyway. |
This replaces #2999. It has been rebased and includes a few more features, fixes and refactored JS.
Here are a few highlights: https://youtu.be/8nZgeF-QwMo
Here is a demo site I set up. Go and try it out: http://refineryglass.com
This PR works in conjunction with refinery/refinerycms-authentication-devise#14
Development of Refinery Glass started in Oct 2014 and after over 1000 commits (that I've condensed into a few) we've launched this new refinery on 5 production websites.
Main Features of Refinery Glass
Still a lot left to do