hashover-next
hashover-next copied to clipboard
Ideas, going futher
This isn't actually an issue but don't know where else to post, please delete if you feel this as unnecessary...
Anyway, my 2 cents on making hashover even better:
- implement Ajax when commenting, would remove unnecessary page reloading on each new comment and make things look more sexy... something along the lines of this http://wordpress.org/plugins/wp-ajaxify-comments/developers/
Should perhaps be considered big priority if claiming to be a Disqus alternative?
- ability to also specify custom css instead of just custom html template, so it's easier to keep the changes when upgrading
- other stuff but it's getting late.
Cheers
@Lux-Delux
AJAX is something I'm not a big fan of, however, I have given the idea thought before and this was the approach I am considering: When someone submits a comment, an AJAX request is sent to "write_comments.php", if the request comes back as successful a JavaScript function is ran that places the comment into the thread. Basically meaning, it wouldn't write the comment and then retrieve the comment, it would ask "write_comments.php" to write a comment asynchronously and if successful simply place what's in the comment textarea into the HTML.
In lieu of support, it would behave the way it does now.
You can use whatever CSS file you want in your webpage(s) <head> element, and that would override the default. However, the default would still be added to the <head> element automatically, which is undesirable. I have fixed that problem. You may now place your custom CSS file(s) under the new directory "hashover/style-sheets" and set the new "$style_sheet" variable to its name, then HashOver will add your CSS file to the <head> element.
Feel free to post any suggestions as issues, if nothing else they will serve as reminders/TODOs.
F.Y.I. If you move to the HashOver-next branch, where these changes are being made: "$template" has been changed to "$html_template". Update that in "settings.php" accordingly.
Awesome, I'll try the new css template option later.
I guess AJAX isn't that important if your page is cached + all elements get cached in the browser anyway so the reload doesn't do much, however ajaxfying it would give a 'live' placebo effect - I'm just guessing people would find that more enticing than the 'old-school' approach of simply reloading the page.
Personally to me doesn't mean that much, but seeing how most modern systems use some sort of implementation it's perhaps what the end user would expect?
@Lux-Delux Yes it is expected, and will be implemented eventually. But not in 2.0 :-)
I would also like to get the overall visual aspects and HTML structure polished before implementing anymore JavaScript. Since the JavaScript normally depends on things being in specific places.
I have exams next week so I'll be light on any activity.
Anyway, on the subject of modern html/css tactics. Perhaps the best solution would be to have:
- a modern, responsive design
- a fallback system for older browsers/IE
For my own site I use modern css so it scales well on all screens, but I'll need to investigate further for wide compatibility and then somehow implement into the default hashover template. In due time ;)
The main idea is: when the user implements hashover on their website (and most current cms systems and html templates use responsive design) - the comments neutrally blend in and get the same general color palette.
@Lux-Delux
Perhaps individual CSS style sheets for these things is the best way to go.
Some examples being:
hashover/style-sheets/wordpress.css
hashover/style-sheets/drupal.css
hashover/style-sheets/default-unmodern.css
hashover/style-sheets/default-hdpi.css
The default CSS should be isolated from the page's preexisting CSS, to avoid random CSS weirdness. À la Disqus and expected behavior.
@Lux-Delux "I have exams next week so I'll be light on any activity."
I can't guarantee the codebase will be the same when you return ;-)
Yeah makes sense to have separate files, maybe just modern and old-browser, make the modern file primary and have the optional one if browser version < some number... Or put fallback rules in the same css... don't remember how all this is handled, haven't bothered with old browser compatibility recently... I'm guessing you'd like to avoid any extra javascript handling ?
I'm looking forward to new changes, am a bit of an update freak ;-p
BTW here's a WIP of my own theme

@Lux-Delux
That theme looks great!
I'd only change the sort dropdown menu to be float right, and add right padding to the icon in the name field. All in all, it looks fitting for integration with WordPress.
Yeah I left the sort for later, problem with float:right is that it looks awful on small screens, but I'll add a media query in the css for that condition... Also, that stupid icon in the name field is from the lastpass plugin in Chrome.
Also, I'd need to optimize this for avatars since I decided not to use them, Anyway, if there's interest, I'll gladly clean it up and push here when I get the time :-)
@Lux-Delux There's definitely interest :-)
I've been reading on font-face browser compatibility and the results are pretty good:
http://caniuse.com/fontface
and for pseudo elements
http://css-tricks.com/browser-support-pseudo-elements/
(which we wouldn't need if simply using <i class="some-icon"></i>)
When using font-face properly there really shouldn't be much issues, unless the target is firefox 3. Fontello even outputs css with IE7 support.
Is there really reason to avoid this? The images folder is currently 4kb... We could potentially replace that with an icon package similar in size (maybe even less), since font-face only loads the browser compatible format. There will be less html requests and we gain a graphically more pleasing effect which is easily styled with css.
I know that this is kind of old, but did you ever get around to submitting your theme @Lux-Delux ? In spite of Hashover not featuring Disqus import yet, that might be what it takes to convince me to switch to Hashover :)
I found some commits mentioning modern.css - I guess that's the one?
Regarding Disqus import: I will try and hack something together and report back in a separate issue. Cheers!