Sam Ruby wrote on 4/14/17 10:57 AM:
> OK, OK, I'm reconsidering this :-)
> 
> I've always though of whimsy as a collection of independent tools; on
> the theory that I could get more people to be involved if all they
> needed to be concerned about was a standalone tool.  Many of the tools
> have a unique look and feel, for example, the board agenda tool.

Yes, but from the *end user's* perspective, these are all part of the
cool stuff Whimsy does for Apache committers, officers, and members.
That's my focus here - making the end user experience better.

> Now that I see that you are trying to do, I can see the merits of
> having a common location for things like the bootstrap library.  In
> particular, I note that the
> https://whimsy.apache.org/members/non-participants page is inlining a
> copy of bootstrap as the assets weren't checked in and file
> permissions on whimsy-vm3 don't permit the web server to create these
> files (allowing scripts to create files in the apache httpd docroot
> can lead to hacking).
> 

I'm happy to conform to a better way to do this kind of thing, and I
have been *trying* to keep dependencies/functions to a minimum.

> What I want to think a bit more about is enabling that without harming
> the ability to develop and test standalone tools.
> 
> What I will probably do is update wunderbar to check to see if the
> DOCUMENT_ROOT environment variable is set, and if so, check to see if
> there is an assets directory there containing a suitable copy of the
> script or stylesheet to be served.

Point me at the code so I can help document.  Something I'd like to do
is create an example display-stuff.cgi script that people could copy
as-is to get started, which includes look and feel and examples of how
to get to common data on the server.  Not much of a help for the board
application, but would encourage Members curious about other internal
data bits to explore them.


> 
> - Sam Ruby
> 
> On Wed, Apr 5, 2017 at 9:54 PM, Sam Ruby <ru...@intertwingly.net> wrote:
>> The assets directories are maintained by wunderbar.  If you delete
>> those files, they will be recreated.  If they can't be recreated (due
>> to file permissions), they will be rendered inline.
>>
>> Each of the versions of bootstrap should match the one found in this 
>> directory:
>>
>> https://github.com/rubys/wunderbar/tree/master/lib/wunderbar/vendor
>>
>> The basic idea is that a tool simply does a require
>> 'wunderbar/bootstrap' and wunderbar worries about what files (css, js,
>> etc) are needed to make that happen.  It will even insert the
>> necessary <script> and <link rel="stylesheet"> lines into your HTML.
>>
>> In the case of bootstrap, this is done here:
>>
>> https://github.com/rubys/wunderbar/blob/master/lib/wunderbar/bootstrap.rb
>>
>> - Sam Ruby
>>
>>
>>
>> - Sam Ruby
>>
>> On Wed, Apr 5, 2017 at 9:19 PM, Shane Curcuru <a...@shanecurcuru.org> wrote:
>>> Does anyone mind if I work on cutting down on the number of different
>>> bootstrap libraries and CSS/JS files that we have in the repo?
>>>
>>> Whimsy serves a lot of users - it would be nice to have a little bit of
>>> similarity in appearance, along with some simple nav hints back to the
>>> homepage or related tools, and even perhaps helpful documentation.  But
>>> trying to figure out how to add that when some directories have three
>>> different bootstraps makes my head hurt.
>>>
>>> Related: is there any reason that each directory needs it's own copies
>>> of everything?  I.e. would any additional config/maintenance be needed
>>> if /members and /committers tools mostly used the same bootstrap
>>> (presuming the right version is used), but in /www/css or the like?
>>>
>>> I'll test each page before changing anything, and would focus on simple
>>> fixes first, but wanted to know if this was a dumb idea for some reason
>>> first.
>>>
>>> ./www/board/agenda/public/assets/bootstrap-min.css
>>> ./www/board/agenda/public/assets/bootstrap-min.js
>>> ./www/board/agenda/public/assets/bootstrap-theme.min.css
>>> ./www/board/agenda/views/bootstrap.html.rb
>>> ./www/board/agenda/views/pages/bootstrap.js.rb
>>> ./www/incubator/assets/bootstrap-min.css
>>> ./www/members/assets/bootstrap-min.css
>>> ./www/members/assets/bootstrap-min.js
>>> ./www/members/css/bootstrap-combobox.css
>>> ./www/members/css/bootstrap.min.css
>>> ./www/members/js/bootstrap-combobox.js
>>> ./www/members/js/bootstrap.min.js
>>> ./www/roster/public/assets/bootstrap-min.css
>>> ./www/roster/public/assets/bootstrap-min.js
>>> ./www/roster/public/assets/bootstrap-theme.min.css
>>> ./www/status/assets/bootstrap-min.css
>>> ./www/status/assets/bootstrap-min.js
>>> ./www/status/css/bootstrap.min.css
>>> ./www/status/js/bootstrap.min.js
>>> ./www/test/icla/public/assets/bootstrap-min.css
>>> ./www/test/icla/public/assets/bootstrap-min.js
>>> ./www/test/icla/public/assets/bootstrap-theme.min.css
>>>
>>> --
>>>
>>> - Shane
>>>   https://www.apache.org/foundation/marks/resources


-- 

- Shane
  https://www.apache.org/foundation/marks/resources

Reply via email to