Dashboard - 3rd Column - $100



  • "Hello, Ajax Widgets Company?  I'd like to place an order…."

    Maybe it's just me but; 1280x1024 has become 1920x1080 or 1600x1200 and I'm really missing that vertical layout space, both on my desktop and in my browser.  There's plenty of horizontal space though.  So I figure that a third column of widgets on the dashboard would help me with keeping an eye on everything at a glance complete with the traffic graphs for 5 (or more) interfaces.

    Adding a third (optional) column, or maybe specifying a number of columns from one to four (or something like that), might be a useful addition to the dashboard.

    I'll start the bounty at $100.

    Is anyone else interested in seeing such functionality added to the dashboard?

    Thanks.


  • Banned

    Some sort of CSS script/stylesheat to control how it looks and how much it fills your screen.

    Many are running widescreens nowadays and PF has not adopted to that. Many things would look much nicer in 90% of the screen instead of only using 50%….


  • Rebel Alliance Developer Netgate

    If someone wanted to make a whole "widescreen" theme that would be good, as long as it was an option. Most of the GUI is coded to fit inside of the current layout and can get a little fun where things spill over that width. It's mainly CSS and some hardcoded div/table sizes here and there that would be the hard parts here.

    It would look nicer on some monitors but would come at the expense of supporting smaller screens. We already have some code to switch to a basic theme on Android, iPhone, and iPad, but beyond that it gets fuzzy.

    It is true that most desktops have large widescreens these days but if you're on-site or in a datacenter trying to manage a firewall at a critical time, odds are you are using a laptop or netbook that has a much more limited screen size.



  • I figured that someone would know the particulars of what was hard-coded  PHP/Javascript and what was defined by style sheets.  I also realize that page headers and footers, menus, and the notification area need to be considered as well.  I prefer "aestheticly pleasing" to "just tacked on," plus it's a big boost when trying to convince Corporate America to take FOSS seriously.  A high degree of polish on a UI is about the only thing the management types really notice (and measure credibility by) in my world.

    And I seriously wouldn't be surprised if it turns out to be a much bigger hassle than I already suspect it is.  But I do already have 23" flat panels invading the data center and it looks silly when I have to run two Firefox windows side-by-side.  A 3-column and/or a 4-column pfsense_ng theme would be awesome.  Or sidebar/desktop widgets, or….  If anyone else has any other ideas?...

    I know $100 doesn't cover it, but it's a place to start.

    Thanks for listening.


  • Banned

    Heyy jimp !

    Can you point me in the direction of CSS in pfsense and the hardcoded tables???

    It would be very nice if you could save the theme that you have done.


  • Rebel Alliance Developer Netgate

    CSS is all in the themes. /usr/local/www/themes/

    As for the hardcoded stuff, it's all over every file. 2.0 is a lot more themable than 1.2.x was but I think there's still some work to be done for future versions.


  • Banned

    Found the Css :)



  • It's a lot of very delicate work. I took a look, you'd even have to redo some images.
    Thus said I'll do it for $300.



  • Many thanks for at least looking at it, Supermule.  If you're still interested in trying please say so.

    Otherwise…,

    Evgeny, I can bump the bounty to $200 total but that's my limit right now.

    Does ANYONE else think this feature has value beside me?  Anyone?... Bueller?...

    Seriously, $200 payable this Friday  No escrow needed.  I trust you guys.  If no one else is willing to pony up the rest of the bounty within a week I'll just let it go quietly unto the night.

    Thanks.



  • I think it is worth to mention that it is not only about css, at least index.php will have to be modified.



  • Oh, I know.  It looks like a pain.  But I didn't write it.  I've been wondering if it had ever been built with scaling up or out in mind.  And I'm not sure I've covered all of the places and files where mods would be necessary.

    And keep in mind, I'm just talking about the dashboard here, even though it could impact the whole theme.

    Would widget sizing or scaling be easier, maybe to get back some of that feeling of vertical space?  What about tacking a widget in a pop-up that could be places independently of the browser window?

    Thanks to all who have given it some thought.  At least you're thinking about it, perhaps for the future.

    Like I said, I'll give it a week or so and then let it go if there's no other interest.

    Thanks again.


  • Banned

    The CSS is a pain…..and if Index.php needs attention, then my knowledge of PHP is not enough.

    The images are not scaling, besides the bottom red area. I can scale that to 100% no issues....The top doesnt want to play along.



  • @2low4zero:

    And keep in mind, I'm just talking about the dashboard here, even though it could impact the whole theme.

    Would widget sizing or scaling be easier, maybe to get back some of that feeling of vertical space?  What about tacking a widget in a pop-up that could be places independently of the browser window?

    Yes this will impact the whole theme.
    About sizing/scaling - there is no problem (it can be done fairly easy) to add third column but will you enjoy smaller widgets fitting this 800px wide white area in the middle of the screen? I guess no. I tend to think that the whole theme should be redone to provide flexibility showing nice on both 'narrow' and wide monitors, dynamically adjusting number of columns for widgets.


  • Banned

    Absolutely agree on this!

    @Evgeny:

    @2low4zero:

    And keep in mind, I'm just talking about the dashboard here, even though it could impact the whole theme.

    Would widget sizing or scaling be easier, maybe to get back some of that feeling of vertical space?  What about tacking a widget in a pop-up that could be places independently of the browser window?

    Yes this will impact the whole theme.
    About sizing/scaling - there is no problem (it can be done fairly easy) to add third column but will you enjoy smaller widgets fitting this 800px wide white area in the middle of the screen? I guess no. I tend to think that the whole theme should be redone to provide flexibility showing nice on both 'narrow' and wide monitors, dynamically adjusting number of columns for widgets.



  • Hi,

    I can do both PHP and CSS. I can take this if Supermule and Evgeny are busy. :)

    [ simon.cpu ]



  • @simoncpu:

    Hi,

    I can do both PHP and CSS. I can take this if Supermule and Evgeny are busy. :)

    [ simon.cpu ]

    Hi,
    I am 75% done. But if you want to do it for $100 please go ahead, I think 2low4zero will be happy (as nobody else is willing to pay) ;-)



  • Really!?!

    Do I owe you a little cash Evgeny?  200 bucks for chips and beverages?  I know that amount certainly doesn't pay you for your time and effort.  And I don't suppose my gratitude will buy you much on Amazon or NewEgg, but you have it none-the-less.  Thank you.

    I kind of thought others would find this feature to have some value….

    Feel free to pm me with the particulars for payment if you wish.  I'll be happy to pay promptly.

    Many thanks.



  • @2low4zero:

    Do I owe you a little cash Evgeny?

    Let's test it first -) I'll PM you when it is ready and on how to test it.



  • Ok, I redid lots of css, added/removed/modified some pictures, now the whole theme adjusts to browser's window size pretty nice.
    Now I am trying to make it perfect by letting web-server to decide how many columns to give you for widgets (based on width of your browser window) but I hit a roadblock that I can't seem to find solution for.
    How can php code (server side) be aware of browser window current width (client side)? I tried cookie but it works only if you refresh after resizing the window…
    Any hints will be appreciated. I really would not like to hard code number of columns...
    Thanks.


  • Rebel Alliance Developer Netgate

    It probably can't, because that has to be determined by javascript.

    Why does the PHP code have to know? Couldn't you shuffle the widgets around or rewrite the widget container using only javascript?



  • @Evgeny:

    Ok, I redid lots of css, added/removed/modified some pictures, now the whole theme adjusts to browser's window size pretty nice.
    Now I am trying to make it perfect by letting web-server to decide how many columns to give you for widgets (based on width of your browser window) but I hit a roadblock that I can't seem to find solution for.
    How can php code (server side) be aware of browser window current width (client side)? I tried cookie but it works only if you refresh after resizing the window…
    Any hints will be appreciated. I really would not like to hard code number of columns...
    Thanks.

    Just do something like:

    $_GET['var'] will then contain the value "123". Of course, it will all depend on what you're trying to do. A better solution is to modify the HTML using JavaScript instead. :)



  • All,

    Evgeny is, for lack of a better phrase, THE MAN!  And the bounty has been paid.  Thanks go out to SimonCPU, SuperMule, and Jimp on this one.  I appreciate the input.

    Now then, Evgeny wanted to open the floor for discussions regarding auto-detecting browser dimensions versus just manually selecting 3 or 4 columns.  Can anyone give a good argument on why one method might be superior to the other?

    Also, here are a couple of links to some full-sized sample images for your TMI-Candy enjoyment;

    http://mail.manske.org/Advancing-Column01.jpg
    http://mail.manske.org/Advancing-Column03.jpg

    Hopefully Evgeny can push this into the repository sometime soon and the core team will accept it.

    Thanks again everyone.






  • Please send patches to coreteam@pfsense.org so I can look them over.  We MIGHT be able to get these in if they are trivial…. But no promises until I can judge the risk factor being this late in the BETA cycle.

    EDIT: oh by the way, that looks incredible!



  • This is done as a package now. I was not hoping that you could push it to pfSense mainline.
    modified:

    • index.php
    • fbegin.inc
    • fend.inc
    • all.css for pfsense_ng theme
      and added several pictures.
      Still want to see patches or should I just push new package to packages in gitorious?
      Thanks.


  • Why would you not want this stuff included?



  • Just because it is not tested enough and might badly affect other themes although I tried to avoid this. -( Lots of css stuff looked puzzling to me as usually you do not understand other's people thoughts ver well when they design web-pages using css (all this coordinates, margins, pads, relative-ness etc).
    Anyway I'll provide patches and you decide.



  • OK I understand your hesitation and can appreciate that.

    I'll look it over and worst case scenario we get it in for 2.1.



  • I've sent patches.
    I've got $300 from bounty starter. Thanks!!!
    I've donated $100 out of these $300 to pfSense. Thank you, pfSense team!


  • Banned

    This is just awesomeness!!

    Thx Evgeny! looks very good! Sorry I couldnt contribute more than I did.



  • I think we did a good thing here for the whole community.  And I obviously wanted it bad enough to pay for it and test it.  I hope the core team finds it safe and suitable for inclusion before 2.0 goes RC.  Maybe not, but it's obviously cool enough to include down the line.

    Thanks again, Evgeny.


  • Banned

    Is it backwards compatible with 1.2.3?



  • Backwards compatible?

    Nyet!  What we've got in 1.2.3 is what we've got, unless there's ever a 1.2.4, I suspect.

    Good question for the devs though;  Will there ever be a 1.2.4 with a backport of …stuff... from 2.x?
    (Way off topic though...)


  • Rebel Alliance Developer Netgate

    No, 1.2.x is dead; Long live 2.0. :-)


  • Banned

    I was only thinking about the mod here :)


  • Rebel Alliance Developer Netgate

    The 2.0 dashboard is a lot different than the one backported into the 1.2.3 dashboard package… At this point I doubt it would be worth the effort to backport the changes into that package.


  • Banned

    Thks Jim :)

    @jimp:

    The 2.0 dashboard is a lot different than the one backported into the 1.2.3 dashboard package… At this point I doubt it would be worth the effort to backport the changes into that package.



  • I left the 3 column dashboard up all night.  It's been 24 hours and no errors, complaints, or lock-ups.

    So far it's all good.



  • The third column package had been running for a couple of weeks then I upgraded last night and had issues.  Any ideas from the core team on whether or not this package is going to see general distribution soon?  Sullrich and Supermule think its cool.  So, can we get it included in the general distribution, please?

    Thoughts and comments welcomed.

    Thanks.

    Bryan



  • Probably need to reinstall the package.  The upgrade would have likely reset the PHP include files.  The downside to packages that modify the base system I'm afraid.

    –Bill



  • Yes, before upgrade please uninstall the package. It removes everything it brought in and restores all the file it replaced.
    I think 2low4zero's question was 'why can't we put this package into official pfSense package repository?' rather than 'why did I have issues after upgrade?' -)


Log in to reply