Merge branch 'master' of git://git.gitorious.org/conservancy/website
This commit is contained in:
		
						commit
						55c195c73f
					
				
					 32 changed files with 6666 additions and 138 deletions
				
			
		|  | @ -71,14 +71,14 @@ class OmnibusFeed(ConservancyFeedBase): | |||
|     title_template = "feeds/omnibus_title.html" | ||||
|     description_template = "feeds/omnibus_description.html" | ||||
|     author_email = "info@sfconservancy.org" | ||||
|     author_link = "http://sfconservancy.org/" | ||||
|     author_link = "https://sfconservancy.org/" | ||||
|     author_name = "Software Freedom Conservancy" | ||||
| 
 | ||||
|     def item_enclosure_mime_type(self): return "audio/mpeg" | ||||
| 
 | ||||
|     def item_enclosure_url(self, item): | ||||
|         if hasattr(item, 'mp3_path'): | ||||
|             return "http://sfconservancy.org" + item.mp3_path | ||||
|             return "https://sfconservancy.org" + item.mp3_path | ||||
|     def item_enclosure_length(self, item): | ||||
|         if hasattr(item, 'mp3_path'): | ||||
|             return item.mp3_length | ||||
|  | @ -93,7 +93,7 @@ class OmnibusFeed(ConservancyFeedBase): | |||
|             return "Software Freedom Conservancy" | ||||
| 
 | ||||
|     def item_author_link(self, obj): | ||||
|         return "http://sfconservancy.org" | ||||
|         return "https://sfconservancy.org" | ||||
| 
 | ||||
|     def item_author_email(self, item): | ||||
|         if item.omnibus_type == "news": | ||||
|  |  | |||
|  | @ -13,6 +13,11 @@ class ForceCanonicalHostnameMiddleware(object): | |||
|         * adds cache headers to provide hints to squid | ||||
|         """ | ||||
| 
 | ||||
|         # Never allow connection to the /admin part of the site without SSL | ||||
|         if (not request.is_secure) and request.path.startswith('/admin'): | ||||
|             url = 'https://sfconservancy.org%s' % request.path | ||||
|             return http.HttpResponseRedirect(url) | ||||
| 
 | ||||
|         # Check for a redirect based on settings.APPEND_SLASH | ||||
|         host = http.get_host(request) | ||||
|         old_url = [host, request.path] | ||||
|  |  | |||
|  | @ -43,19 +43,17 @@ solving the problems of  Windows and Linux interoperability.</p> | |||
| 
 | ||||
| <h2>Loïc Dachary</h2> | ||||
| 
 | ||||
| <p>Loïc Dachary has been involved with Free Software since 1987 when he | ||||
| started distributing GNU tapes to the general public in France.  His first | ||||
| contact was with GNU Emacs and in 1989 with GCC which he used to port a | ||||
| Unix System V kernel to a embeded motorola 68030 motherboard.  He | ||||
| currently works as a developer | ||||
| for <a href="http://outflop.me/">OutFlop</a>, a company providing services | ||||
| and software to operate poker rooms.  He | ||||
| created <a href="http://savannah.gnu.org/">Savannah</a>, the GNU forge, in | ||||
| 2001 to provide a Free alternative to proprietary forges. As a president | ||||
| of FSF France, he provides technical and legal resources to French Free | ||||
| Software developers. Loic Dachary is also a honorary member | ||||
| of <a href="http://april.org/">APRIL</a> since 1996, a French non-profit | ||||
| dedicated to Free Software with over 5,500 members.</p> | ||||
| <p>Loïc Dachary has been involved with the Free Software Movement since | ||||
| 1987, when he started distributing GNU tapes to the general public in | ||||
| France. In 2012, he founded <a href="http://upstream-university.org/">Upstream | ||||
| University</a>, a nonprofit with the goal of teaching developers how to | ||||
| contribute easily and efficiently. Dachary volunteers as a developer | ||||
| for <a href="http://april.org/">April</a>, a grassroots organization | ||||
| promoting Free Software. He maintains April's OpenStack cluster and organizes | ||||
| contributions with agile methods. As President | ||||
| of <a href="http://fsffrance.org/">FSF France</a>, he also provides technical | ||||
| and legal resources to French Free Software developers. His day job is to use | ||||
| and contribute to <a href="http://ceph.com/">Ceph</a> within OpenStack.</p> | ||||
| 
 | ||||
| <h2>Mark Galassi</h2> | ||||
| 
 | ||||
|  | @ -90,6 +88,14 @@ Loyola College in Maryland, and an M.S. in Computer Science from the | |||
| University of Cincinnati.  His Master's thesis discussed methods for | ||||
| dynamic interoperability of Free Software languages.</p> | ||||
| 
 | ||||
| <h2>Mike Linksvayer</h2> | ||||
| 
 | ||||
| <p>Mike Linksvayer serves on the boards of AcaWiki and OpenHatch, | ||||
| and is chair of the Open Definition Advisory Council. From 2003 to | ||||
| 2012 he served as CTO and VP of Creative Commons, where he is now a | ||||
| Senior Fellow. In 2000 he co-founded Bitzi, an early open content/open | ||||
| data mass collaboration platform.</p> | ||||
| 
 | ||||
| <h2>Stormy Peters</h2> | ||||
| 
 | ||||
| <p>Stormy Peters is Head of Developer Engagement at Mozilla. She is | ||||
|  |  | |||
							
								
								
									
										173
									
								
								www/conservancy/static/about/eval-committee/index.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										173
									
								
								www/conservancy/static/about/eval-committee/index.html
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,173 @@ | |||
| {% extends "base_about.html" %} | ||||
| {% block subtitle %}Evaluation Committee - {% endblock %} | ||||
| {% block submenuselection %}Eval{% endblock %} | ||||
| {% block content %} | ||||
| 
 | ||||
| <h1>Evaluation Committee</h1> | ||||
| 
 | ||||
| <p>The Evaluation Committee evaluates projects that have applied to become | ||||
| members of Conservancy. | ||||
|   Conservancy's <a href="/about/board/">Board of | ||||
|     Directors</a> <a href="/news/2013/apr/23/linksvayer-and-eval-committee/">formally | ||||
|     charters and authorizes</a> this Committee to offer <a href="/members/">membership to | ||||
|   projects  <a href="/members/apply/">that apply</a> | ||||
|     for membership in Conservancy.</p> | ||||
| 
 | ||||
| <h2>Jeremy Allison</h2> | ||||
| 
 | ||||
| <p>Jeremy Allison is one of the lead developers on the Samba Team, a group | ||||
| of programmers developing an Open Source Windows compatible file and print | ||||
| server product for UNIX systems. Developed over the Internet in a | ||||
| distributed manner similar to the Linux system, Samba is used by all Linux | ||||
| distributions as well as many thousands of corporations and products | ||||
| worldwide. Jeremy handles the co-ordination of Samba development efforts | ||||
| and acts as a corporate liaison to companies using the Samba code | ||||
| commercially.</p> | ||||
| 
 | ||||
| <p>He works for Google, Inc. who fund him to work on improving Samba and | ||||
| solving the problems of  Windows and Linux interoperability.</p> | ||||
| 
 | ||||
| <h2>Tom Callaway</h2> | ||||
| 
 | ||||
| <p>Tom Callaway has been working for Red Hat since 2001. He started in | ||||
| Sales Engineering and has been the Fedora Engineering Manager since 2008. | ||||
| He served three consecutive elected terms on the Fedora Board from 2007 to | ||||
| 2011. Tom also maintains or co-maintains a large number of Packages in | ||||
| Fedora (currently 390) and is leading the Fedora Packaging Committee, | ||||
| responsible for RPM Packaging Standards and Practices.  Additionally, he is | ||||
| responsible for managing Fedora's Legal issues.  Tom frequently represents | ||||
| Fedora and Free Software at conferences around the world, and tries his | ||||
| best not to make too big of a fool of himself.</p> | ||||
| 
 | ||||
| <p>When not working, Tom enjoys geocaching, ice hockey, gaming, science | ||||
| fiction, and pinball.</p> | ||||
| 
 | ||||
| <h2>Loïc Dachary</h2> | ||||
| 
 | ||||
| <p>Loïc Dachary has been involved with the Free Software Movement since | ||||
| 1987, when he started distributing GNU tapes to the general public in | ||||
| France. In 2012, he founded <a href="http://upstream-university.org/">Upstream | ||||
| University</a>, a nonprofit with the goal of teaching developers how to | ||||
| contribute easily and efficiently. Dachary volunteers as a developer | ||||
| for <a href="http://april.org/">April</a>, a grassroots organization | ||||
| promoting Free Software. He maintains April's OpenStack cluster and organizes | ||||
| contributions with agile methods. As President | ||||
| of <a href="http://fsffrance.org/">FSF France</a>, he also provides technical | ||||
| and legal resources to French Free Software developers. His day job is to use | ||||
| and contribute to <a href="http://ceph.com/">Ceph</a> within OpenStack.</p> | ||||
| 
 | ||||
| <h2>Mark Galassi</h2> | ||||
| 
 | ||||
| <p>Mark Galassi has been involved in the GNU project since 1984. He | ||||
| currently works as a researcher in the International, Space, and Response | ||||
| division at Los Alamos National Laboratory, where he has worked on the | ||||
| HETE-2 satellite, ISIS/Genie, the Raptor telescope, the Swift satellite, | ||||
| and the muon tomography project. In 1997 Mark took a couple of years off | ||||
| from Los Alamos (where he was previously in the ISR division and the | ||||
| Theoretical Astrophysics group) to work for Cygnus (now a part of Red Hat) | ||||
| writing software and books for eCos, although he continued working on the | ||||
| HETE-2 satellite (an astrophysical Gamma Ray Burst mission) part time. Mark | ||||
| earned his BA in Physics at Reed College and a PhD from the Institute for | ||||
| Theoretical Physics at Stony Brook.</p> | ||||
| 
 | ||||
| <h2>Mike Hostetler</h2> | ||||
| 
 | ||||
| <p>Mike Hostetler is an inventor, entrepreneur, programmer and proud | ||||
| father. Having worked with web technologies since the mid 1990's, Mike has | ||||
| had extensive experience developing web applications with PHP and | ||||
| JavaScript.  Currently, Mike works as the Founder and CEO of appendTo, LLC, | ||||
| the company dedicated to jQuery, based in Denver, Colorado. Heavily | ||||
| involved in Open Source, Mike is an alumni of the jQuery Core team, | ||||
| participates in the QCubed PHP5 Framework project, and participates in the | ||||
| Drupal project. When not in front of a computer, Mike enjoys hiking, | ||||
| fly-fishing, snowboarding and spending time with his family.</p> | ||||
| 
 | ||||
| <h2>Bradley M. Kuhn</h2> | ||||
| 
 | ||||
| <p>Bradley M. Kuhn began his work in the Free Software Movement as a | ||||
| volunteer when, in 1992, he became an early adopter of the popular | ||||
| GNU/Linux operating system, and began contributing to various Free Software | ||||
| projects.  He worked during the 1990s as a system administrator and | ||||
| software development consultant for Westinghouse, Lucent Technologies, and | ||||
| numerous small companies.  He also spent one year teaching Advanced | ||||
| Placement Computer Science (using GNU/Linux and GCC) at Walnut Hills High | ||||
| School in Cincinnati.  In January 2000, he was hired by the Free Software | ||||
| Foundation (FSF), and he served as its Executive Director from March 2001 | ||||
| until March 2005, when he left FSF to join the Software Freedom Law Center | ||||
| (SFLC), where he worked as SFLC's Policy Analyst and Technology Director | ||||
| from 2005 until October 2010, when he joined Conservancy as its Executive | ||||
| Director.  Kuhn holds a summa cum laude B.S. in Computer Science from | ||||
| Loyola College in Maryland, and an M.S. in Computer Science from the | ||||
| University of Cincinnati.  His Master's thesis discussed methods for | ||||
| dynamic interoperability of Free Software languages.</p> | ||||
| 
 | ||||
| <h2>Mike Linksvayer</h2> | ||||
| 
 | ||||
| <p>Mike Linksvayer serves on the boards of AcaWiki and OpenHatch, and is | ||||
| chair of the Open Definition Advisory Council. From 2003 to 2012 he served | ||||
| as CTO and VP of Creative Commons, where he is now a Senior Fellow. In 2000 | ||||
| he co-founded Bitzi, an early open content/open data mass collaboration | ||||
| platform.</p> | ||||
| 
 | ||||
| <h2>Martin Michlmayr</h2> | ||||
| 
 | ||||
| <p>Martin Michlmayr has been involved in various free and open source | ||||
| software projects for well over 15 years.  He acted as the leader of the | ||||
| Debian project for two years and currently serves on the board of the Open | ||||
| Source Initiative (OSI).  Martin works for HP as an Open Source Community | ||||
| Expert.  In this role, he facilitates open source activities both | ||||
| internally within HP as well as externally within the broader open source | ||||
| community.  Martin holds Master degrees in Philosophy, Psychology and | ||||
| Software Engineering, and earned a PhD from the University of | ||||
| Cambridge.</p> | ||||
| 
 | ||||
| <h2>Evan Prodromou</h2> | ||||
| 
 | ||||
| <p>Evan Prodromou is the lead developer of pump.io and founder of E14N Inc. | ||||
| He has previously worked on Free Software for web services like MediaWiki | ||||
| and StatusNet.</p> | ||||
| 
 | ||||
| <h2>Karen Sandler</h2> | ||||
| 
 | ||||
| <p>Karen M. Sandler is currently the Executive Director of the GNOME | ||||
| Foundation and prior to taking up this position was General Counsel of the | ||||
| Software Freedom Law Center (SFLC). Karen continues to do <a | ||||
| href="/about/outside#karen">pro bono legal work with Conservancy</a>, SFLC, | ||||
| and Question Copyright and serves as an officer of both the Conservancy and | ||||
| SFLC.  Before joining SFLC, Karen worked as an associate in the corporate | ||||
| departments of Gibson, Dunn & Crutcher LLP in New York and Clifford | ||||
| Chance in New York and London. Karen received her law degree from Columbia | ||||
| Law School in 2000, where she was a James Kent Scholar and co-founder of | ||||
| the Columbia Science and Technology Law Review. Karen received her | ||||
| bachelor’s degree in engineering from The Cooper Union. She is a recipient | ||||
| of an O'Reilly Open Source Award and also co-host of the <a | ||||
| href="http://faif.us">“Free as in Freedom” podcast</a>.</p> | ||||
| 
 | ||||
| <h2>Tony Sebro</h2> | ||||
| 
 | ||||
| <p>Tony Sebro is a seasoned technology attorney with a broad base of | ||||
| business and legal experience relating to technology, strategy, and | ||||
| business development.  Before joining Conservancy, Tony was most recently a | ||||
| Partner with the PCT Companies, a family of professional service firms. | ||||
| Prior to that, he was Program Director, Technology & Intellectual | ||||
| Property at IBM's Armonk, New York world headquarters, where he was | ||||
| responsible for developing and executing licensing strategies in | ||||
| partnership with IBM's Software Group.  In that role, Tony led negotiations | ||||
| and structured deals with market leaders in the web technology, e-commerce, | ||||
| retail, enterprise software, and financial services sectors.  Tony also led | ||||
| various internal strategic initiatives, including an effort to provide | ||||
| business leaders of key emerging market opportunities with coordinated | ||||
| intellectual property development and monetization strategies, as well as | ||||
| the revamping and supervision of IBM's corporate-wide process for | ||||
| determining the value and availability of patents for sale.  Prior to his | ||||
| tenure at IBM, Mr. Sebro practiced law in the New York office of Kenyon | ||||
| & Kenyon, LLP, handling litigation and licensing matters for clients in | ||||
| the medical, pharmaceutical and mechanical technology areas.  Tony received | ||||
| his J.D. and his M.B.A. from the University of Michigan.  He received his | ||||
| B.S. from the Massachusetts Institute of Technology. Tony is a member of | ||||
| the New York bar and registered to practice before the U.S. Patent and | ||||
| Trademark Office. Tony is also an active participant in and supporter of | ||||
| the non-profit community, and has served on the boards of multiple | ||||
| non-profit organizations.</p> | ||||
| 
 | ||||
| {% endblock %} | ||||
|  | @ -14,13 +14,13 @@ | |||
|   gitorious</a>.</p> | ||||
| 
 | ||||
| <p>The documents on this website are | ||||
|   licensed as <a href="http://creativecommons.org/licenses/by-sa/3.0/">CC-By-SA-3.0 | ||||
|   Unported</a>.  In some cases, the documents are dual-licensed | ||||
|   (AGPLv3-or-later|CC-By-SA-3.0-Unported-or-later), to make it more | ||||
|   licensed as <a href="https://creativecommons.org/licenses/by-sa/3.0/us">CC-By-SA-3.0 | ||||
|   USA</a>.  In some cases, the documents are dual-licensed | ||||
|   (AGPLv3-or-later|CC-By-SA-3.0-USA-or-later), to make it more | ||||
|   convenient to intermix the document with code.</p> | ||||
| 
 | ||||
| <p>Conservancy's Logo is also licensed | ||||
|   under <a href="http://creativecommons.org/licenses/by-sa/3.0/us">CC-By-SA-3.0 | ||||
|   under <a href="https://creativecommons.org/licenses/by-sa/3.0/us">CC-By-SA-3.0 | ||||
|   USA</a>.  A <a href="/img/conservancy-logo_package.zip">Conservancy | ||||
|   logo package in ZIP format is available, which includes high quality SVG, | ||||
|   PNG and other formats</a>.</p> | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| {% extends "base_about.html" %} | ||||
| {% block subtitle %}Outside Counsel & Contractors - {% endblock %} | ||||
| {% block subtitle %}Outside Counsel, et alia - {% endblock %} | ||||
| {% block submenuselection %}Outside{% endblock %} | ||||
| {% block content %} | ||||
| <h1>Outside Counsel</h1> | ||||
|  |  | |||
							
								
								
									
										638
									
								
								www/conservancy/static/campaign/index.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										638
									
								
								www/conservancy/static/campaign/index.html
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,638 @@ | |||
| {% extends "base_conservancy.html" %} | ||||
| {% block subtitle %}Campaign - {% endblock %} | ||||
| {% block category %}campaign{% endblock %} | ||||
| 
 | ||||
| {% block head %} | ||||
| <link href="/jquery-ui.css" rel="stylesheet" type="text/css"/> | ||||
| <script src="/jquery.min.js"></script> | ||||
| <script src="/jquery-ui.min.js"></script> | ||||
| 
 | ||||
| <style type="text/css"> | ||||
|   #progressbar .ui-widget-header { background: rgb(206, 31, 31); } | ||||
| </style> | ||||
| 
 | ||||
| <script type="text/javascript"> | ||||
|   $(document).ready(function() { | ||||
|     $("#progressbar").progressbar({ value: (41194 / 75000) * 100 }); | ||||
| 
 | ||||
|     $('.toggle-content').hide(); | ||||
| 
 | ||||
|     $('.toggle-control') | ||||
|      .addClass('clickable') | ||||
|      .bind('click', function() { | ||||
|         var $control = $(this); | ||||
|         var $parent = $control.parents('.toggle-unit'); | ||||
| 
 | ||||
|         $parent.toggleClass('expanded'); | ||||
|         $parent.find('.toggle-content').slideToggle(); | ||||
| 
 | ||||
|         // if control has HTML5 data attributes, use to update text | ||||
|         if ($parent.hasClass('expanded')) { | ||||
|             $control.html($control.attr('data-expanded-text')); | ||||
|         } else { | ||||
|             $control.html($control.attr('data-text')); | ||||
|         } | ||||
|     }); | ||||
|     $('a.donate-now') | ||||
|       .addClass('clickable') | ||||
|       .bind('click', function() { | ||||
|         var $control = $('#donate-box'); | ||||
| 
 | ||||
|         $control.toggleClass('expanded'); | ||||
|         $control.find('.toggle-content').slideUp("slow"); | ||||
|         $control.find('.toggle-content').slideDown("slow"); | ||||
|     }); | ||||
|   }); | ||||
| </script> | ||||
| {% endblock %} | ||||
| 
 | ||||
| {% block content %} | ||||
| 
 | ||||
| <div style="position:fixed;top:180px;right:2%;width:18%"> | ||||
| <table style="background-color:#afe478;width:100%;"> | ||||
| <tr><td style="text-align:center;padding:10px;padding-bottom:10px;"> | ||||
| 
 | ||||
| <div id="donate-box" class="toggle-unit"><h1 class="toggle-content">Donate Now!</h1></div> | ||||
| </div> | ||||
| 
 | ||||
| <!-- | ||||
| <script type="text/javascript" src="https://js.balancedpayments.com/v1/balanced.js"></script> | ||||
| 
 | ||||
| <script type="text/javascript"> | ||||
|    // FOR DEMONSTRATION PURPOSES ONLY - if you already have a server you can POST to, replace | ||||
|    //                                   the URL with the URL to post to. | ||||
|    // go to http://requestb.in/ | ||||
|    // click create new request bin and COPY that URL without the ?inspect at the end | ||||
|    var requestBinURL = 'http://requestb.in/1dk2x8y1';  // make sure it doesn't end in ?inspect | ||||
| 
 | ||||
|    var marketplaceUri = '/v1/marketplaces/TEST-MPMp7ZUPDpbj69vk2wGHRVY'; | ||||
|    //var marketplaceUri = 'https://www.balancedpayments.com/marketplaces/TEST-MPMp7ZUPDpbj69vk2wGHRVY'; | ||||
|    balanced.init(marketplaceUri); | ||||
| 
 | ||||
| var cardData = { | ||||
|   "name": "Bernhard Riemann",                 // Optional | ||||
|   "card_number": "4111 1111 1111 1111", | ||||
|   "expiration_month": 4, | ||||
|   "expiration_year": 2014, | ||||
| }; | ||||
| 
 | ||||
| function evbind(el, ev, handler) { | ||||
| if(el.addEventListener) { | ||||
| el.addEventListener(ev, handler, false); | ||||
| } else if(el.attachEvent) { | ||||
| el.attachEvent('on'+ev, function() {handler.apply(el);}); | ||||
| } | ||||
| } | ||||
| 
 | ||||
| /* | ||||
| 
 | ||||
|    function responseCallbackHandler(response) { | ||||
|       alert(response.status); | ||||
|       switch (response.status) { | ||||
|         case 400: | ||||
|             // missing or invalid field - check response.error for details | ||||
|             console.log(response.error); | ||||
|             break; | ||||
|         case 404: | ||||
|             // your marketplace URI is incorrect | ||||
|             console.log(response.error); | ||||
|             break; | ||||
|         case 201: | ||||
|             // WOO HOO! MONEY! | ||||
|             // response.data.uri == URI of the bank account resource you | ||||
|             // should store this bank account URI to later credit it | ||||
|             console.log(response.data); | ||||
|             var $form = $("#bank-account-form"); | ||||
|             // the uri is an opaque token referencing the tokenized bank account | ||||
|             var bank_account_uri = response.data['uri']; | ||||
|             // append the token as a hidden field to submit to the server | ||||
|             $('<input>').attr({ | ||||
|                type: 'hidden', | ||||
|                value: bank_account_uri, | ||||
|                name: 'balancedBankAccountURI' | ||||
|             }).appendTo($form); | ||||
|             $form.attr({action: requestBinURL}); | ||||
|             $form.get(0).submit(); | ||||
|         break; | ||||
|     default: | ||||
|         console.log(response.status); | ||||
|         } | ||||
|     } | ||||
|    //alert('allo?'); | ||||
| 
 | ||||
|    var tokenizeInstrument = function(e) { | ||||
|         alert('what"s going on?'); | ||||
|         e.preventDefault(); | ||||
|     | ||||
|         var $form = $('#bank-account-form'); | ||||
|         var bankAccountData = { | ||||
|             name: $form.find('.ba-name').val(), | ||||
|             account_number: $form.find('.ba-an').val(), | ||||
|             bank_code: $form.find('.ba-rn').val(), | ||||
|             type: $form.find('select').val() | ||||
|         }; | ||||
|   | ||||
|   | ||||
|         balanced.bankAccount.create(bankAccountData, responseCallbackHandler); | ||||
|     }; | ||||
|    $('#bank-account-form').submit(tokenizeInstrument); | ||||
| */ | ||||
| </script> | ||||
| --> | ||||
| $41,194 raised toward<br/> | ||||
| our $75,000 goal.</br> | ||||
| <div id="progressbar" style="height:20px;"><span style="float:right; align:center; margin-right:40%">54.9%</div> | ||||
| <font style="font-size: 75%">(Progress bar updated daily.)</font> | ||||
| <a id="donate" style="text-decoration:none"></a> | ||||
| <h3>Help us reach our goal:</h3> | ||||
| 
 | ||||
| <!-- PayPal start --> | ||||
| <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top"> | ||||
| <input type="hidden" name="cmd" value="_s-xclick"> | ||||
| <input type="hidden" name="hosted_button_id" value="3VRTJALJ5PQRW"> | ||||
| <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="Donate Now!"> | ||||
| <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1"> | ||||
| </form> | ||||
| <!-- PayPal end --> | ||||
| 
 | ||||
| <!-- Balanced start - | ||||
| <div class="container"> | ||||
| - <form action="#" method="POST" id="bank-account-form" class="form-horizontal" onsubmit="balanced.card.create(cardData, function(response) { alert(response.status); });"> - | ||||
| <form action="#" method="POST" id="bank-account-form" class="form-horizontal"> | ||||
|     <fieldset> | ||||
|         <legend>Bank Account Information</legend> | ||||
|         <p><label>Account Holder's Name | ||||
|             <input type="text" | ||||
|                    autocomplete="off" | ||||
|                    placeholder="Bank Account Holder's name" | ||||
|                    class="ba-name" | ||||
|                    name="ba_name" | ||||
|                    value="4111 1111 1111 1111"> | ||||
|         </label></p> | ||||
|         <p><label>Routing Number | ||||
|             <input type="text" | ||||
|                    autocomplete="off" | ||||
|                    placeholder="Routing Number" | ||||
|                    class="ba-rn" | ||||
|                    name="ba_rn" | ||||
|                    value="4"> | ||||
|         </label></p> | ||||
|         <p><label>Account Number | ||||
|             <input type="text" | ||||
|                    autocomplete="off" | ||||
|                    placeholder="Account Number" | ||||
|                    class="ba-an" | ||||
|                    name="ba_an" | ||||
|                    value="2014"> | ||||
|         </label></p> | ||||
|         <p><label>Account Something | ||||
|             <input type="text" | ||||
|                    autocomplete="off" | ||||
|                    placeholder="Account Something" | ||||
|                    class="ba-as" | ||||
|                    name="ba_as" | ||||
|                    value="something someone"> | ||||
|         </label></p> | ||||
|         <p><label>Account Type | ||||
|             <select name="ba_type"> | ||||
|                 <option value='' disabled selected style='display:none;'> | ||||
|                     Select Account Type | ||||
|                 </option> | ||||
|                 <option value="checking" default>CHECKING</option> | ||||
|                 <option value="savings">SAVINGS</option> | ||||
|             </select> | ||||
|         </label></p> | ||||
|         <button type="submit" class="btn"> | ||||
|             Tokenize | ||||
|         </button> | ||||
|     </fieldset> | ||||
| </form> | ||||
| </div> | ||||
| <script type="text/javascript"> | ||||
| 
 | ||||
| evbind(document.getElementById('bank-account-form'), 'submit', | ||||
|   function(e) { | ||||
|     e.preventDefault(); | ||||
|     console.log(this.ba_as.value); | ||||
|     balanced.card.create( | ||||
|  { | ||||
|   "name": this.ba_as.value, | ||||
|   "card_number": this.ba_name.value, | ||||
|   "expiration_month": this.ba_rn.value, | ||||
|   "expiration_year": this.ba_an.value, | ||||
| /* | ||||
|   "name": "Bernhard Riemann",                 // Optional | ||||
|   "card_number": "4111 1111 1111 1111", | ||||
|   "expiration_month": 4, | ||||
|   "expiration_year": 2014, | ||||
| */ | ||||
|  }, | ||||
|     function(response) { | ||||
|       console.log(response); | ||||
|       console.log(response.data.uri); | ||||
|       $.ajax("/campaign/?token=" + response.data.uri + '&amount=' + document.getElementById('bank-account-form').ba_an.value); | ||||
|       alert(response.status); | ||||
|     }); | ||||
| }); | ||||
| 
 | ||||
| </script> | ||||
| - Balanced end --> | ||||
| 
 | ||||
| <p> | ||||
| Other donation methods: | ||||
| <div class="toggle-unit"> | ||||
|     <h4 class="toggle-control" data-text="Google Checkout"  | ||||
|     data-expanded-text="Google Checkout:">Google Checkout</h4> | ||||
|     <div class="toggle-content"> | ||||
| <!-- Google Checkout start --> | ||||
| <script type="text/javascript">  | ||||
| function validateAmount(amount){ | ||||
|     if(amount.value.match( /^[0-9]+(\.([0-9]+))?$/)){ | ||||
|         return true; | ||||
|     }else{ | ||||
|         alert('You must enter a valid donation.'); | ||||
|         amount.focus(); | ||||
|         return false; | ||||
|     } | ||||
| } | ||||
| </script> | ||||
| <form action="https://checkout.google.com/cws/v2/Donations/622836985124940/checkoutForm" id="BB_BuyButtonForm" method="post" name="BB_BuyButtonForm" onSubmit="return validateAmount(this.item_price_1)" target="_top"> | ||||
|     <input name="item_name_1" type="hidden" value="Directed Donation for Conservancy's NPO accounting software project"/> | ||||
|     <input name="item_description_1" type="hidden" value="This donation to the Software Freedom Conservancy, Inc. is directed toward Conservancy's NPO accounting software project.  Conservancy is a 501(c)(3) charity in New York."/> | ||||
|     <input name="item_quantity_1" type="hidden" value="1"/> | ||||
|     <input name="item_currency_1" type="hidden" value="USD"/> | ||||
|     <input name="item_is_modifiable_1" type="hidden" value="true"/> | ||||
|     <input name="item_min_price_1" type="hidden" value="6.0"/> | ||||
|     <input name="item_max_price_1" type="hidden" value="25000.0"/> | ||||
|     <input name="_charset_" type="hidden" value="utf-8"/> | ||||
|     <table cellpadding="5" cellspacing="0" width="1%"> | ||||
|         <tr> | ||||
|             <td align="right" valign="top" style="padding-top:9px;" nowrap="nowrap" width="1%">$ <input id="item_price_1" name="item_price_1" onfocus="this.style.color='black'; this.value='';" size="6" type="text" value="250.00"/> | ||||
|             </td> | ||||
|             <td align="left" width="1%"> | ||||
|                 <input alt="Donate" src="https://checkout.google.com/buttons/donateNow.gif?merchant_id=622836985124940&w=115&h=50&style=trans&variant=text&loc=en_US" type="image"/> | ||||
|             </td> | ||||
|         </tr> | ||||
|     </table> | ||||
| </form> | ||||
| <!-- Google Checkout end --> | ||||
|     </div><!-- /.toggle-content --> | ||||
| </div><!-- /.toggle.unit --> | ||||
| 
 | ||||
| <div class="toggle-unit"> | ||||
|     <h4 class="toggle-control" data-text="Wire Transfer"  | ||||
|     data-expanded-text="Wire Transfer:">Wire Transfer</h4> | ||||
|     <div class="toggle-content"> | ||||
|         Please | ||||
|             contact <a href="mailto:accounting@sfconservancy.org">Conservancy | ||||
|             by email</a><br/> for wire transfer instructions.<br/> | ||||
|             Please Include your currency and country.<br/> | ||||
|     </div><!-- /.toggle-content --> | ||||
| </div><!-- /.toggle.unit --> | ||||
| 
 | ||||
| <div class="toggle-unit"> | ||||
|     <h4 class="toggle-control" data-text="Paper Check"  | ||||
|     data-expanded-text="Paper Check:">Paper Check</h4> | ||||
|     <div class="toggle-content"> | ||||
|     Send paper check donations to:<br/> | ||||
|     Software Freedom Conservancy, Inc.<br/> | ||||
|     137 MONTAGUE ST  STE 380<br/> | ||||
|     BROOKLYN, NY 11201-3548<br/> | ||||
|     Please write <q>NPO ACCOUNTING</q> in the memo line.  | ||||
|     </div><!-- /.toggle-content --> | ||||
| </div><!-- /.toggle.unit --> | ||||
| 
 | ||||
| <!-- Flattr start --> | ||||
| <p><a href="https://flattr.com/thing/1296704/Campaign-to-develop-Free-and-Open-Source-Non-Profit-Accounting-Software" target="_blank"><img src="https://api.flattr.com/button/flattr-badge-large.png" alt="Flattr this" title="Flattr this" border="0" /></a></p> | ||||
| <!-- Flattr end --> | ||||
| </td></tr></table> | ||||
| </div> | ||||
| 
 | ||||
| <div style="align:left;width:80%;"> | ||||
| <!-- begin campaign text --> | ||||
| 
 | ||||
| <h2>Fundraising Campaign: Non-Profit Accounting Software</h2> | ||||
| 
 | ||||
| <img src="/img/conservancy-accounting-campaign-logo.png" alt="Conservancy accounting campaign logo" style="float:left;" /> | ||||
| 
 | ||||
| <p>Conservancy has a plan to help all non-profit organizations (NPOs) by | ||||
| creating an Open Source and Free Software accounting system usable by | ||||
| non-technical bookkeepers, accountants, and non-profit managers.  You can | ||||
| help us do it by donating now. | ||||
| </p> | ||||
| 
 | ||||
| <p>To keep their books and produce annual government filings, most NPOs rely | ||||
| on proprietary software, paying exorbitant licensing fees.  This is | ||||
| fundamentally at cross purposes with their underlying missions of charity, | ||||
| equality, democracy, and sharing.</p> | ||||
| 
 | ||||
| <p>You can help Conservancy fix this problem by <a href="#donate-box" class="donate-now">donating now</a>.  We seek to | ||||
| raise $75,000 to employ a  | ||||
| developer for one year to make substantial progress on this project.</p> | ||||
| 
 | ||||
| <p>This project has the potential to save the non-profit sector | ||||
| millions in licensing fees every year.  Even non-profits that continue to use proprietary accounting | ||||
| software will benefit, since the existence of quality Open Source and Free | ||||
|   Software for a particular task curtails predatory behavior by proprietary | ||||
|   software companies, and creates a new standard of comparison.</p> | ||||
| 
 | ||||
| <p>But, more powerfully, this project's realization | ||||
| will increase the agility and collaborative potential | ||||
| for the non-profit sector — a boon to funders, boards, and employees —  bringing the Free Software and general NPO communities | ||||
| into closer collaboration and understanding.</p> | ||||
| 
 | ||||
| <p>Thanks in advance for <a href="#donate-box" class="donate-now">helping us</a> develop Free Software to benefit all | ||||
| non-profit organizations, and the  | ||||
| populations they serve.</p> | ||||
| 
 | ||||
| <p>Donors of $500 or more will be acknowledged in the THANKS file and other | ||||
|   appropriate places in the codebase itself.</p> | ||||
| 
 | ||||
| <p><a href="#endorsements">Endorsers of this effort</a> include Fractured Atlas, The Free Software | ||||
| Foundation, Mozilla Foundation, GNOME Foundation, OpenHatch, Open | ||||
| Source Initiative, QuestionCopyright.org, and Software in the Public | ||||
| Interest; all encourage you to <a href="#donate-box" class="donate-now">donate and support it</a>.</p> | ||||
| 
 | ||||
| 
 | ||||
| <h3>Background</h3> | ||||
| 
 | ||||
| <p>Like many non-profit organizations (NPOs) in the USA, Conservancy's | ||||
|   financial accounts are audited annually by an independent accounting firm; | ||||
|   we recently completed our fiscal year 2011 audit.  As usual, our auditors | ||||
|   asked plenty of questions about our accounting software.  Conservancy uses | ||||
|   only Free Software, of course, centered around a set of straightforward reporting | ||||
|   scripts that we created to run on top | ||||
|   of <a href="http://www.ledger-cli.org/">Ledger CLI</a>. (Conservancy's | ||||
|   current configuration using Ledger CLI | ||||
|   is <a href="https://gitorious.org/ledger/npo-ledger-cli">publicly | ||||
|   documented and explained</a>.)</p> | ||||
| 
 | ||||
| <p>Our auditors were only familiar with proprietary accounting software, and | ||||
|   so our system seemed foreign to them, as it relies on Ledger CLI's text files, Emacs and | ||||
|   version control.  During their questions | ||||
|   about our setup, we asked them to hypothetically prescribe a specific | ||||
|   proprietary software setup as a model for  managing Conservancy's | ||||
|   accounts.  Our chief auditor started by mentioning a few well-known | ||||
|   proprietary solutions.   But then he paused and continued:  <q>Given | ||||
|   that Conservancy's a fiscal sponsor with so many temporarily restricted | ||||
|   accounts, existing systems really wouldn't do that good of a job for | ||||
|   you</q>.</p> | ||||
| 
 | ||||
| <p>Indeed, Conservancy reached out into the broader fiscal sponsorship | ||||
|   community beyond the <acronym title="Free, Libre and Open Source Software">FLOSS</acronym> | ||||
|   <acronym title="Non-profit Organization">NPO</acronym> community and discovered that many larger fiscal sponsors — even | ||||
|   those willing to use proprietary components — have cobbled together | ||||
|   their own unique systems, idiosyncratically tailored to their specific | ||||
|   environments.  Thus, good, well-designed, and reusable accounting software | ||||
|   for non-profit fiscal sponsorship is not just missing in the software | ||||
|   freedom community; it's missing altogether.</p> | ||||
| 
 | ||||
| 
 | ||||
| <p>The project that Conservancy proposes will take a modest step | ||||
|   forward in creating a better solution for everyone.  | ||||
|   <a href="#quotes">Many NPO leaders and academics agree</a> with Conservancy about the | ||||
|   immediate need for work to begin on this | ||||
|   effort.  <a id="endorsements" style="text-decoration:none"></a><a href="https://www.fracturedatlas.org">Fractured Atlas</a>, The <a href="http://fsf.org">Free Software | ||||
|   Foundation</a>, The <a href="https://www.mozilla.org/foundation/">Mozilla | ||||
| Foundation</a>, The <a href="http://www.gnome.org/foundation/">GNOME Foundation</a>,  <a | ||||
|         href="https://openhatch.org/">OpenHatch</a>, <a href="http://opensource.org/node/658">Open Source Initiative</a>, | ||||
|   <a href="http://QuestionCopyright.org">QuestionCopyright.org</a>, and <a href="http://www.spi-inc.org/">Software in the Public Interest</a> have | ||||
|   all endorsed Conservancy's plan, and they encourage you to <a href="#donate-box" class="donate-now">donate and | ||||
|   support it</a>.</p> | ||||
| 
 | ||||
| <p>Conservancy is uniquely qualified to undertake this task.  Using only Free | ||||
|   Software, Conservancy already meets the complex accounting challenges of | ||||
|   earmarked, directed donations for over thirty different projects.  We've | ||||
|   learned much about this work in our first seven years of | ||||
|   operation, and we're prepared to apply what we've learned to solve | ||||
|   this problem not just for ourselves, but for anyone who seeks a | ||||
|   solution that both respects software freedom and handles non-profit | ||||
|   accounting for all sorts of NPOs, including fiscal sponsors.  General NPO | ||||
|   accounting is just a “base case” of fiscal sponsorship (i.e., | ||||
|   an NPO is just a fiscal sponsor for one and only one specific project), | ||||
|   and Conservancy therefore believes a solution that handles fiscal sponsors | ||||
|   will also handle the simpler case as well.</p> | ||||
| 
 | ||||
| <h3>The Plan</h3> | ||||
| 
 | ||||
| <p>Conservancy proposes to hire a software developer for one year to | ||||
|   accomplish the first two phases of this project.  Conservancy seeks to | ||||
|   raise $75,000 toward this project to help cover salary and benefits for a | ||||
|   full-time staffer to work on this project.  We ask that you give generously | ||||
|   via the donation buttons on this page to support our work.</p> | ||||
| 
 | ||||
| <h4>Phase 0</h4> | ||||
| 
 | ||||
| <p>Some Free Software accounting systems do exist.  A previous informal | ||||
|   survey of these systems that Conservancy conducted in 2007 led us to the | ||||
|   conclusion that, in general, these systems were heavily geared toward | ||||
|   for-profit endeavors, ignored the unique needs of NPOs generally, and | ||||
|   were completely hopeless for the specific needs of a fiscal sponsoring | ||||
|   organization.  Conservancy's assessment at the time was that these | ||||
|   challenges could be addressed only with a large rewrite of one of these | ||||
|   systems.  Conservancy chose | ||||
|   <a href="http://www.ledger-cli.org/">Ledger CLI</a> precisely because | ||||
|   it provided flexibility and configurability not present in any other Free Software | ||||
|   double-entry accounting system.</p> | ||||
| 
 | ||||
| <p>However, while that previous informal survey informs Conservancy's | ||||
|   existing hypothesis that Ledger CLI is the right base system here, | ||||
|   Conservancy will first test that hypothesis.  The first phase of this | ||||
|   project (estimated to last approximately 6-8 full-time weeks) will produce | ||||
|   a written survey of all known Free Software accounting systems, and | ||||
|   indicate what challenges exist to adapt such systems for the needs of | ||||
|   NPOs.  The <a href="https://fsf.org/">Free Software Foundation</a> has | ||||
|   pledged their help in the evaluation of SQL-Ledger, | ||||
|   and <a href="http://www.gnome.org/foundation/">the GNOME Foundation</a> has pledged their | ||||
|   help in the evaluation of <a href="http://www.gnucash.org/">GNUcash</a> (which they | ||||
|   currently use, respectively).</p> | ||||
| 
 | ||||
| <h4>Phase 1</h4> | ||||
| 
 | ||||
| <p>Phase 1 of the project will select the preferred codebase from Phase 0, | ||||
|   and improve that system to create a basic accounting system for | ||||
|   small-to-medium sized USA NPOs (i.e., Form 990-filers) — including fiscal | ||||
|   sponsors — with the following features: | ||||
| <ul> | ||||
| <li>Basic accounts payable/receivable (with invoicing)</li> | ||||
| <li>Tracking and reporting of non-profit income types (related business | ||||
|   income, unrelated business taxable income, donations, etc.)</li> | ||||
| <li>Basic backup documentation tracking for expenses and payments</li> | ||||
| <li>Basic bank statement reconciliation reporting</li> | ||||
| <li>Basic annual audit preparation reporting | ||||
|   (A <a href="https://github.com/ledger/ledger/tree/next/contrib/non-profit-audit-reports">prototype | ||||
|   of this portion is already complete</a> and has been relied on for | ||||
|   real-life audits; but the prototype is just a hack and needs to be | ||||
|   rewritten.)</li> | ||||
| <li>Ability to easily handle all these features on a project-by-project | ||||
|   subset of the accounts, and to easily export and excise that subset from | ||||
|   the system. (i.e., support for temporarily restricted assets, earmarked for | ||||
|   fiscal-sponsored projects)</li> | ||||
| <li>Multi-currency support and reporting</li> | ||||
| </ul> | ||||
| </p> | ||||
| 
 | ||||
| <p>We will consider the first year of this project successful <em>only if all these | ||||
|   functions can be performed by a bookkeeper who is generally qualified as a | ||||
|   bookkeeper</em>, but not necessarily familiar with standard Free Software tools | ||||
|   such as GNU/Linux, Emacs, version control, and command line scripts.  This | ||||
|   requirement is essential: Conservancy's existing system using Ledger CLI | ||||
|   already provides sufficient functionality to manage non-profit accounting, | ||||
|   but our system requires a bookkeeper who is also adept with the | ||||
|   aforementioned tools already.</p> | ||||
| 
 | ||||
| <p>Finally, while the first year of work focuses on USA NPO needs, | ||||
|   Conservancy seeks to lead an international effort, and welcomes | ||||
|   contributions and input from everyone in the non-profit community from | ||||
|   around the world.  Conservancy has created | ||||
|   a <a href="http://lists.sfconservancy.org/mailman/listinfo/npo-accounting">mailing | ||||
|   list for discussion of this project</a> and encourages interested parties | ||||
|   from around the world to join the mailing list and contribute to the | ||||
|   project!</p> | ||||
|    | ||||
| <h3>Why Conservancy Must Fund This Work</h3> | ||||
| 
 | ||||
| <p>As it stands, nearly all Open Source and Free Software NPOs either use | ||||
|   proprietary software, or fully outsource their bookkeeping and accounting | ||||
|   to third-parties.  Those that don't do so (such as Conservancy and the Free | ||||
|   Software Foundation) have long complained that existing Free Software in | ||||
|   this area is inadequate, and have been forced to develop customized, | ||||
|   one-off solutions in-house to make the systems work.</p> | ||||
| 
 | ||||
| <p>It's highly unlikely that the for-profit sector will adapt existing Free | ||||
|   Software accounting systems to meet the differing needs of NPOs (let alone | ||||
|   the more complex needs of fiscal sponsors; based on | ||||
|   advice from our auditors and other fiscal sponsors, Conservancy understands that <em>no existing | ||||
|   solution — proprietary or Free — meets the requirements of fiscal sponsorship accounting</em>).  Fiscal sponsors like | ||||
|   Conservancy must track a separate set of books for every project, keeping | ||||
|   in mind that a project may leave at any time for another NPO and need to take | ||||
|   their books with them.  Yet, the books of the entire organization are the | ||||
|   aggregate of the books of all these projects, and internally, they need to | ||||
|   be presented as a single set of books for those purposes.</p> | ||||
| 
 | ||||
| <p>Meanwhile, even if an organization is not a fiscal sponsor, non-profit | ||||
|   accounting is <em>just different</em> than for-profit accounting, particularly in | ||||
|   the USA.  For example, for-profit-oriented systems often make problematic | ||||
|   assumptions about the workflow of accounting tasks (often because NPOs | ||||
|   rely primarily on donations, rather than fee-for-service or widget-selling | ||||
|   income).  Also, non-profit income is categorized differently than | ||||
|   for-profit income, and the reporting requirements vary wildly from their | ||||
|   for-profit equivalents.</p> | ||||
| 
 | ||||
| <p>Conservancy's existing system is working adequately, but requires daily | ||||
|   the relatively more expensive time of a highly technical person to do the | ||||
|   job of bookkeeping.  Also, the system cannot easily be adapted in its | ||||
|   current form for another NPO, unless they also have a | ||||
|   skilled technical employee to act as bookkeeper.  This project aims to build | ||||
|   on what Conservancy has learned and produce a non-profit accounting system | ||||
|   that corrects these flaws.</p> | ||||
| 
 | ||||
| <p>Finally, Conservancy's mission (as stated | ||||
| on <a href="http://sfconservancy.org/docs/conservancy_Form-1023.pdf">our Form | ||||
| 1023 with the USA IRS</a>) includes producing Open Source and Free Software. | ||||
| Thus, this project is a great way to pursue Conservancy's mission and address a | ||||
| specific need that so many NPOs (including us) have.  If no one steps up to create Free Software to replace the widely used | ||||
| proprietary software, NPOs in aggregate will pay <em>much more</em> money for | ||||
| proprietary licensing than Conservancy will ever spend in developing a | ||||
| replacement. Please <a href="#donate-box" class="donate-now">donate | ||||
| generously</a> to help us do it!</p> | ||||
| 
 | ||||
| <a id="quotes"></a> | ||||
| <h3>Statements of Support For This Project from Others</h3> | ||||
| 
 | ||||
| <p><q>As a national fiscal sponsor with over 3,000 arts and cultural projects | ||||
| under our umbrella, Fractured Atlas is ecstatic about this effort's | ||||
| potential. After 15 years wrestling with Quickbooks and other inadequate | ||||
| options, the idea of an open source tool designed specifically for this niche | ||||
| of the field is beyond welcome. We wholeheartedly support the Conservancy's | ||||
| work on this front and look forward to seeing where it leads.</q> — | ||||
| <a href="https://www.fracturedatlas.org/site/bios/staff/1/Adam%20Forest_Huttler">Adam | ||||
|   Huttler</a>, Executive Director, <a href="https://www.fracturedatlas.org">Fractured Atlas</a></p> | ||||
| 
 | ||||
| <p><q><a href="http://QuestionCopyright.org">QuestionCopyright.org</a> is | ||||
| just one of many organizations that would benefit from a Free Software | ||||
| accounting system that is usable by non-technical people.  We | ||||
| enthusiastically support the Conservancy's campaign to create one, and look | ||||
| forward to using the result.</q> | ||||
| — <a href="http://questioncopyright.org/speakers/karl_fogel">Karl | ||||
| Fogel</a>, Executive Director, | ||||
|   <a href="http://QuestionCopyright.org">QuestionCopyright.org</a></p> | ||||
| 
 | ||||
| <p><q>As a fiscal sponsor organization with over 30 currently-associated Free | ||||
| Software projects, Software in the Public Interest shares the Conservancy's | ||||
| needs and interests in this area, and welcome the opportunity to collaborate | ||||
| on the development of a Free Software solution to our accounting needs.</q> | ||||
| — Bdale Garbee, President,  <a href="http://www.spi-inc.org/">Software | ||||
|     in the Public Interest</a></p> | ||||
| 
 | ||||
| <p><q>Open Source accounting software specifically tailored for non-profits | ||||
|     will fill a pretty large need.</q> | ||||
|     — <a href="http://wagner.nyu.edu/calabrese">Thad Calabrese</a>, | ||||
|     Assistant Professor of Public and Nonprofit Financial Management | ||||
|     at <a href="http://wagner.nyu.edu/">NYU Wagner</a>, and co-author | ||||
|     of <cite>Financial Management for Public, Health, and Not-for-Profit | ||||
|     Organizations, 4th Edition</cite>.</p> | ||||
| 
 | ||||
| <p><q>Creating free software specifically designed to address the needs of | ||||
| nonprofits is a laudable goal and one that Conservancy is extremely well | ||||
| positioned to achieve.</q>  — <a href="http://gnomg.org">Karen | ||||
| Sandler</a>, Executive | ||||
| Director, The <a href="http://www.gnome.org/foundation/">GNOME Foundation</a></p> | ||||
| 
 | ||||
| <p><q>The Open Source Initiative has shared the experiences of Software | ||||
|      Freedom Conservancy in navigating the financial management needs of | ||||
|      non-profit organisations and shares their concern. We have many NPOs as | ||||
|      members and we welcome this useful initiative by Conservancy.</q> | ||||
|      — Simon Phipps, President, <a href="http://opensource.org/node/658">Open Source | ||||
|      Initiative</a></p> | ||||
| 
 | ||||
| <p><q>The <a href="https://fsf.org/">Free Software Foundation</a> is committed to doing all of its work, | ||||
| both public-facing and internal, using only free software. We are thankful to | ||||
| the developers of SQL Ledger for providing the accounting software that has | ||||
| served us well for many years. As we have grown, so have the complexities of | ||||
| our finances.  Because of our own needs and our mission to help other | ||||
| organizations — both inside and outside of the technology sphere | ||||
| — run their operations on exclusively free software, we wholeheartedly | ||||
| support this Conservancy initiative.</q> — <a href="http://www.fsf.org/about/staff-and-board#johns">John Sullivan</a>, Executive | ||||
| Director, <a href="https://fsf.org">Free Software Foundation</a></p> | ||||
| 
 | ||||
| <p><q>Open source is a great way to solve new problems and make software that | ||||
| is more flexible and responsive to the needs of the people who use it. That's | ||||
| as true for the finance industry as it is on the web.</q> | ||||
| — <a href="http://blog.mozilla.org/press/bios/mark-surman/">Mark | ||||
| Surman</a>, Executive | ||||
| Director, <a href="https://www.mozilla.org/foundation/">Mozilla | ||||
| Foundation</a></p> | ||||
| 
 | ||||
| <p><q>As a young free software non-profit, OpenHatch is thrilled to see this | ||||
| effort; it would let us spend more of our time on programs and less on | ||||
| paperwork.  I have already personally <a href="#donate-box" class="donate-now">donated</a>.</q> — Asheesh Laroia, | ||||
| Executive Director, <a href="https://openhatch.org/">OpenHatch</a></p> | ||||
| 
 | ||||
| <h3>Some Important Details for this Fundraiser</h3> | ||||
| 
 | ||||
| <ul> | ||||
| <li>Donations made are general donations to the Software Freedom | ||||
|   Conservancy, Inc., a 501(c)(3) charity incorporated in New York. | ||||
|   Conservancy is committed to doing this work described herein, but cannot | ||||
|   promise to complete the work if the fundraising goal is not reached.  If | ||||
|   the fundraising goal is not reached, Conservancy will do its best to make | ||||
|   progress on the plan above with the resources available.  It's expected | ||||
|   that work will simply proceed, but more slowly and take more time, if the | ||||
|   fundraising goal is not reached.</li> | ||||
| 
 | ||||
| <li>The license for the project is not yet chosen, since Phase 0 might | ||||
|   prescribe contribution to particular upstream projects, and Conservancy is | ||||
|   committed to contributing to upstream projects under their chosen license, | ||||
|   where possible.  However, Conservancy promises that all software that is | ||||
|   written will be released under a license that is both approved by | ||||
|   the <a href="http://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses">FSF as a Free | ||||
|   Software license</a> <strong>and</strong> by the OSI as | ||||
|   an <a href="http://opensource.org/licenses">OSI-approved license</a>.  New | ||||
|   documentation that is written will be released under some license | ||||
|   compatible with <a href="https://creativecommons.org/licenses/by-sa/3.0/us/">CC BY-SA 3.0 USA</a>.</li> | ||||
| 
 | ||||
| <!-- end campaign text --> | ||||
| </div> | ||||
| 
 | ||||
| {% endblock %} | ||||
|  | @ -11,13 +11,20 @@ p, h1, h2, h3, h4, h5, h6, #mainContent ul, #mainContent ol { | |||
| 
 | ||||
| body { | ||||
| /*  font-family: "Lucida Grande",Verdana,Lucida,Helvetica,Arial,sans-serif; */ | ||||
|   font-family: Helvetica; | ||||
|   font-size: 95%; | ||||
|   background-color: #0000; | ||||
|   color: #ffff; | ||||
| } | ||||
| 
 | ||||
| a { text-decoration: none; color: #557733; } | ||||
| a:hover { text-decoration: underline; color: #3B6337; } | ||||
| a:hover { text-decoration: underline; color: #577632; } | ||||
| 
 | ||||
| .toggle-control  { | ||||
| cursor: pointer; | ||||
| text-decoration: none; color: #557733; | ||||
| } | ||||
| .toggle-control:hover { text-decoration: underline; color: #577632; } | ||||
| 
 | ||||
| h1 { margin-top: .75em; margin-bottom: .5em; } | ||||
| h2 { margin-top: .75em; margin-bottom: .5em; } | ||||
|  | @ -57,10 +64,20 @@ h3 { margin-top: .6em; margin-bottom: .4em; } | |||
| } | ||||
| 
 | ||||
| /* Navigation bar */ | ||||
| #navbar-outer { background: #B3D4A3; } | ||||
| #navbar-outer { background: #577632; } | ||||
| #navbar { margin-left: 104px; margin-top: 3px; float: left; display: inline; } | ||||
| #navbar ul { list-style: none; } | ||||
| #navbar-clear { clear: both; border-bottom: 1px solid #808080; } | ||||
| #navbar li.campaign a { | ||||
|   display: block; | ||||
|   background: #fafafe; | ||||
|   padding: .2em .8em; | ||||
|   margin-right: 3px; | ||||
|   border: 1px solid #808080; | ||||
|   font-size: .8em; | ||||
|   background: url(/img/nav-bg-campaign.png) bottom repeat-x; | ||||
|   border-color: #ffffff; | ||||
| } | ||||
| #navbar li a { | ||||
|   display: block; | ||||
|   background: #fafafe; | ||||
|  | @ -69,8 +86,10 @@ h3 { margin-top: .6em; margin-bottom: .4em; } | |||
|   border: 1px solid #808080; | ||||
|   font-size: .8em; | ||||
|   background: #fff url(/img/nav-bg.png) bottom repeat-x; | ||||
|   border-color: #ffffff; | ||||
| } | ||||
| #navbar li:hover a { background: #3b6337; color: #fff; } | ||||
| #navbar li:hover a { background: #577632; color: #fff; } | ||||
| #navbar li.campaign:hover a { background: #577632; color: #CE1F1F; } | ||||
| #navbar li { float: left; display: inline; margin-bottom: 3px; } | ||||
| 
 | ||||
| #mainContent { | ||||
|  | @ -101,14 +120,16 @@ h3 { margin-top: .6em; margin-bottom: .4em; } | |||
|     border: 1px solid #CCC; | ||||
|     background: #fff url(/img/nav-bg.png) bottom repeat-x; | ||||
| } | ||||
| #container #sidebar li:hover a { background: #3b6337; color: #fff; } | ||||
| #container #sidebar li:hover a { background: #577632; color: #fff; } | ||||
| 
 | ||||
| #container #sidebar.Directors ul li.Directors, | ||||
| #container #sidebar.Eval ul li.Eval, | ||||
| #container #sidebar.Contact ul li.Contact, | ||||
| #container #sidebar.Officers ul li.Officers, | ||||
| #container #sidebar.Staff ul li.Staff, | ||||
| #container #sidebar.Outside ul li.Outside, | ||||
| #container #sidebar.Filings ul li.Filings, | ||||
| #container #sidebar.License ul li.License, | ||||
| #container #sidebar.Current ul li.Current, | ||||
| #container #sidebar.Services ul li.Services, | ||||
| #container #sidebar.Applying ul li.Applying | ||||
|  | @ -231,6 +252,12 @@ body.conservancy-sponsors #navbar ul li.sponsors a /* NO COMMA HERE! */ | |||
|     font-weight: bold; | ||||
|     background: #fff url(/img/nav-bg-up.png) top repeat-x; | ||||
| } | ||||
| body.conservancy-campaign #navbar ul li.campaign a | ||||
| {  | ||||
|     color: #000033; | ||||
|     font-weight: bold; | ||||
|     background: url(/img/nav-bg-campaign-up.png) bottom repeat-x; | ||||
| } | ||||
| 
 | ||||
| #sponsor ul { | ||||
|   clear: all; | ||||
|  | @ -251,3 +278,5 @@ body.conservancy-sponsors #navbar ul li.sponsors a /* NO COMMA HERE! */ | |||
|    width: 200px; | ||||
|    font-size: 12px; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -50,11 +50,11 @@ function validateAmount(amount){ | |||
| 
 | ||||
| <h3>Donate via Flattr</h3> | ||||
| <p> | ||||
| <a href="http://www.flattr.com">Flattr</a> is a social micro-payment system that allows users to make donations via the web.  Like Google Checkout, Flattr does not charge any processing fees on donations to Conservancy.  If you are a Flattr user and you would like to "flattr" Conservancy with a donation, click on the button below: | ||||
| <a href="https://www.flattr.com">Flattr</a> is a social micro-payment system that allows users to make donations via the web.  Flattr does not charge any processing fees on donations to Conservancy.  If you are a Flattr user and you would like to "flattr" Conservancy with a donation, click on the button below: | ||||
| </p> | ||||
| 
 | ||||
| <a href="http://flattr.com/thing/922714/Donate-to-Software-Freedom-Conservancy" target="_blank"> | ||||
| <img src="http://api.flattr.com/button/flattr-badge-large.png" alt="Flattr us!" title="Flattr us!" border="0" /></a> | ||||
| <a href="https://flattr.com/thing/922714/Donate-to-Software-Freedom-Conservancy" target="_blank"> | ||||
| <img src="https://api.flattr.com/button/flattr-badge-large.png" alt="Flattr us!" title="Flattr us!" border="0" /></a> | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 12 KiB | 
							
								
								
									
										
											BIN
										
									
								
								www/conservancy/static/img/nav-bg-campaign-up.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								www/conservancy/static/img/nav-bg-campaign-up.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 224 B | 
							
								
								
									
										
											BIN
										
									
								
								www/conservancy/static/img/nav-bg-campaign.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								www/conservancy/static/img/nav-bg-campaign.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 226 B | 
							
								
								
									
										
											BIN
										
									
								
								www/conservancy/static/img/sponsors/appendTo.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								www/conservancy/static/img/sponsors/appendTo.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 7.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								www/conservancy/static/img/sponsors/mozilla.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								www/conservancy/static/img/sponsors/mozilla.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 5.6 KiB | 
							
								
								
									
										5248
									
								
								www/conservancy/static/img/sponsors/redhat.eps
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5248
									
								
								www/conservancy/static/img/sponsors/redhat.eps
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								www/conservancy/static/img/sponsors/redhat.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								www/conservancy/static/img/sponsors/redhat.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 6.5 KiB | 
							
								
								
									
										464
									
								
								www/conservancy/static/jquery-ui.css
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										464
									
								
								www/conservancy/static/jquery-ui.css
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,464 @@ | |||
| /*! jQuery UI - v1.8.24 - 2012-09-28 | ||||
| * https://github.com/jquery/jquery-ui | ||||
| * Includes: jquery.ui.core.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.progressbar.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css, jquery.ui.tabs.css, jquery.ui.theme.css | ||||
| * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ | ||||
| 
 | ||||
| /* Layout helpers | ||||
| ----------------------------------*/ | ||||
| .ui-helper-hidden { display: none; } | ||||
| .ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } | ||||
| .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } | ||||
| .ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; } | ||||
| .ui-helper-clearfix:after { clear: both; } | ||||
| .ui-helper-clearfix { zoom: 1; } | ||||
| .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } | ||||
| 
 | ||||
| 
 | ||||
| /* Interaction Cues | ||||
| ----------------------------------*/ | ||||
| .ui-state-disabled { cursor: default !important; } | ||||
| 
 | ||||
| 
 | ||||
| /* Icons | ||||
| ----------------------------------*/ | ||||
| 
 | ||||
| /* states and images */ | ||||
| .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } | ||||
| 
 | ||||
| 
 | ||||
| /* Misc visuals | ||||
| ----------------------------------*/ | ||||
| 
 | ||||
| /* Overlays */ | ||||
| .ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } | ||||
| 
 | ||||
| /* IE/Win - Fix animation bug - #4615 */ | ||||
| .ui-accordion { width: 100%; } | ||||
| .ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } | ||||
| .ui-accordion .ui-accordion-li-fix { display: inline; } | ||||
| .ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } | ||||
| .ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } | ||||
| .ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } | ||||
| .ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } | ||||
| .ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } | ||||
| .ui-accordion .ui-accordion-content-active { display: block; } | ||||
| 
 | ||||
| .ui-autocomplete { position: absolute; cursor: default; }	 | ||||
| 
 | ||||
| /* workarounds */ | ||||
| * html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ | ||||
| 
 | ||||
| /* | ||||
|  * jQuery UI Menu 1.8.24 | ||||
|  * | ||||
|  * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) | ||||
|  * Dual licensed under the MIT or GPL Version 2 licenses. | ||||
|  * http://jquery.org/license | ||||
|  * | ||||
|  * http://docs.jquery.com/UI/Menu#theming | ||||
|  */ | ||||
| .ui-menu { | ||||
| 	list-style:none; | ||||
| 	padding: 2px; | ||||
| 	margin: 0; | ||||
| 	display:block; | ||||
| 	float: left; | ||||
| } | ||||
| .ui-menu .ui-menu { | ||||
| 	margin-top: -3px; | ||||
| } | ||||
| .ui-menu .ui-menu-item { | ||||
| 	margin:0; | ||||
| 	padding: 0; | ||||
| 	zoom: 1; | ||||
| 	float: left; | ||||
| 	clear: left; | ||||
| 	width: 100%; | ||||
| } | ||||
| .ui-menu .ui-menu-item a { | ||||
| 	text-decoration:none; | ||||
| 	display:block; | ||||
| 	padding:.2em .4em; | ||||
| 	line-height:1.5; | ||||
| 	zoom:1; | ||||
| } | ||||
| .ui-menu .ui-menu-item a.ui-state-hover, | ||||
| .ui-menu .ui-menu-item a.ui-state-active { | ||||
| 	font-weight: normal; | ||||
| 	margin: -1px; | ||||
| } | ||||
| 
 | ||||
| .ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ | ||||
| .ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ | ||||
| button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ | ||||
| .ui-button-icons-only { width: 3.4em; }  | ||||
| button.ui-button-icons-only { width: 3.7em; }  | ||||
| 
 | ||||
| /*button text element */ | ||||
| .ui-button .ui-button-text { display: block; line-height: 1.4;  } | ||||
| .ui-button-text-only .ui-button-text { padding: .4em 1em; } | ||||
| .ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; } | ||||
| .ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; } | ||||
| .ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; } | ||||
| .ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; } | ||||
| /* no icon support for input elements, provide padding by default */ | ||||
| input.ui-button { padding: .4em 1em; } | ||||
| 
 | ||||
| /*button icon element(s) */ | ||||
| .ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; } | ||||
| .ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; } | ||||
| .ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; } | ||||
| .ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } | ||||
| .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } | ||||
| 
 | ||||
| /*button sets*/ | ||||
| .ui-buttonset { margin-right: 7px; } | ||||
| .ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; } | ||||
| 
 | ||||
| /* workarounds */ | ||||
| button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */ | ||||
| 
 | ||||
| .ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } | ||||
| .ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } | ||||
| .ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } | ||||
| .ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } | ||||
| .ui-datepicker .ui-datepicker-prev { left:2px; } | ||||
| .ui-datepicker .ui-datepicker-next { right:2px; } | ||||
| .ui-datepicker .ui-datepicker-prev-hover { left:1px; } | ||||
| .ui-datepicker .ui-datepicker-next-hover { right:1px; } | ||||
| .ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  } | ||||
| .ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } | ||||
| .ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } | ||||
| .ui-datepicker select.ui-datepicker-month-year {width: 100%;} | ||||
| .ui-datepicker select.ui-datepicker-month,  | ||||
| .ui-datepicker select.ui-datepicker-year { width: 49%;} | ||||
| .ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } | ||||
| .ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  } | ||||
| .ui-datepicker td { border: 0; padding: 1px; } | ||||
| .ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } | ||||
| .ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } | ||||
| .ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } | ||||
| .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } | ||||
| 
 | ||||
| /* with multiple calendars */ | ||||
| .ui-datepicker.ui-datepicker-multi { width:auto; } | ||||
| .ui-datepicker-multi .ui-datepicker-group { float:left; } | ||||
| .ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } | ||||
| .ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } | ||||
| .ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } | ||||
| .ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } | ||||
| .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } | ||||
| .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } | ||||
| .ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } | ||||
| .ui-datepicker-row-break { clear:both; width:100%; font-size:0em; } | ||||
| 
 | ||||
| /* RTL support */ | ||||
| .ui-datepicker-rtl { direction: rtl; } | ||||
| .ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } | ||||
| .ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } | ||||
| .ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } | ||||
| .ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } | ||||
| .ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } | ||||
| .ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } | ||||
| .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } | ||||
| .ui-datepicker-rtl .ui-datepicker-group { float:right; } | ||||
| .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } | ||||
| .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } | ||||
| 
 | ||||
| /* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ | ||||
| .ui-datepicker-cover { | ||||
|     position: absolute; /*must have*/ | ||||
|     z-index: -1; /*must have*/ | ||||
|     filter: mask(); /*must have*/ | ||||
|     top: -4px; /*must have*/ | ||||
|     left: -4px; /*must have*/ | ||||
|     width: 200px; /*must have*/ | ||||
|     height: 200px; /*must have*/ | ||||
| } | ||||
| .ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } | ||||
| .ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative;  } | ||||
| .ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }  | ||||
| .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } | ||||
| .ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } | ||||
| .ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } | ||||
| .ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } | ||||
| .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } | ||||
| .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } | ||||
| .ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } | ||||
| .ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } | ||||
| .ui-draggable .ui-dialog-titlebar { cursor: move; } | ||||
| 
 | ||||
| .ui-progressbar { height:2em; text-align: left; overflow: hidden; } | ||||
| .ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } | ||||
| .ui-resizable { position: relative;} | ||||
| .ui-resizable-handle { position: absolute;font-size: 0.1px; display: block; } | ||||
| .ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } | ||||
| .ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } | ||||
| .ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; } | ||||
| .ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; } | ||||
| .ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; } | ||||
| .ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } | ||||
| .ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } | ||||
| .ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } | ||||
| .ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;} | ||||
| .ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } | ||||
| 
 | ||||
| .ui-slider { position: relative; text-align: left; } | ||||
| .ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } | ||||
| .ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; } | ||||
| 
 | ||||
| .ui-slider-horizontal { height: .8em; } | ||||
| .ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } | ||||
| .ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } | ||||
| .ui-slider-horizontal .ui-slider-range-min { left: 0; } | ||||
| .ui-slider-horizontal .ui-slider-range-max { right: 0; } | ||||
| 
 | ||||
| .ui-slider-vertical { width: .8em; height: 100px; } | ||||
| .ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } | ||||
| .ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } | ||||
| .ui-slider-vertical .ui-slider-range-min { bottom: 0; } | ||||
| .ui-slider-vertical .ui-slider-range-max { top: 0; } | ||||
| .ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ | ||||
| .ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; } | ||||
| .ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; } | ||||
| .ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; } | ||||
| .ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; } | ||||
| .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } | ||||
| .ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ | ||||
| .ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; } | ||||
| .ui-tabs .ui-tabs-hide { display: none !important; } | ||||
| 
 | ||||
| /* Component containers | ||||
| ----------------------------------*/ | ||||
| .ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; } | ||||
| .ui-widget .ui-widget { font-size: 1em; } | ||||
| .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; } | ||||
| .ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_flat_75_ffffff_40x100.png)/*{bgImgUrlContent}*/ 50%/*{bgContentXPos}*/ 50%/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; } | ||||
| .ui-widget-content a { color: #222222/*{fcContent}*/; } | ||||
| .ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 50%/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; } | ||||
| .ui-widget-header a { color: #222222/*{fcHeader}*/; } | ||||
| 
 | ||||
| /* Interaction states | ||||
| ----------------------------------*/ | ||||
| .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 50%/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; } | ||||
| .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; } | ||||
| .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 50%/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; } | ||||
| .ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; } | ||||
| .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 50%/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; } | ||||
| .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; text-decoration: none; } | ||||
| .ui-widget :active { outline: none; } | ||||
| 
 | ||||
| /* Interaction Cues | ||||
| ----------------------------------*/ | ||||
| .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 50%/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; } | ||||
| .ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636/*{fcHighlight}*/; } | ||||
| .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_glass_95_fef1ec_1x400.png)/*{bgImgUrlError}*/ 50%/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; } | ||||
| .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a/*{fcError}*/; } | ||||
| .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a/*{fcError}*/; } | ||||
| .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } | ||||
| .ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } | ||||
| .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } | ||||
| 
 | ||||
| /* Icons | ||||
| ----------------------------------*/ | ||||
| 
 | ||||
| /* states and images */ | ||||
| .ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } | ||||
| .ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } | ||||
| .ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; } | ||||
| .ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; } | ||||
| .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHover}*/; } | ||||
| .ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; } | ||||
| .ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; } | ||||
| .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; } | ||||
| 
 | ||||
| /* positioning */ | ||||
| .ui-icon-carat-1-n { background-position: 0 0; } | ||||
| .ui-icon-carat-1-ne { background-position: -16px 0; } | ||||
| .ui-icon-carat-1-e { background-position: -32px 0; } | ||||
| .ui-icon-carat-1-se { background-position: -48px 0; } | ||||
| .ui-icon-carat-1-s { background-position: -64px 0; } | ||||
| .ui-icon-carat-1-sw { background-position: -80px 0; } | ||||
| .ui-icon-carat-1-w { background-position: -96px 0; } | ||||
| .ui-icon-carat-1-nw { background-position: -112px 0; } | ||||
| .ui-icon-carat-2-n-s { background-position: -128px 0; } | ||||
| .ui-icon-carat-2-e-w { background-position: -144px 0; } | ||||
| .ui-icon-triangle-1-n { background-position: 0 -16px; } | ||||
| .ui-icon-triangle-1-ne { background-position: -16px -16px; } | ||||
| .ui-icon-triangle-1-e { background-position: -32px -16px; } | ||||
| .ui-icon-triangle-1-se { background-position: -48px -16px; } | ||||
| .ui-icon-triangle-1-s { background-position: -64px -16px; } | ||||
| .ui-icon-triangle-1-sw { background-position: -80px -16px; } | ||||
| .ui-icon-triangle-1-w { background-position: -96px -16px; } | ||||
| .ui-icon-triangle-1-nw { background-position: -112px -16px; } | ||||
| .ui-icon-triangle-2-n-s { background-position: -128px -16px; } | ||||
| .ui-icon-triangle-2-e-w { background-position: -144px -16px; } | ||||
| .ui-icon-arrow-1-n { background-position: 0 -32px; } | ||||
| .ui-icon-arrow-1-ne { background-position: -16px -32px; } | ||||
| .ui-icon-arrow-1-e { background-position: -32px -32px; } | ||||
| .ui-icon-arrow-1-se { background-position: -48px -32px; } | ||||
| .ui-icon-arrow-1-s { background-position: -64px -32px; } | ||||
| .ui-icon-arrow-1-sw { background-position: -80px -32px; } | ||||
| .ui-icon-arrow-1-w { background-position: -96px -32px; } | ||||
| .ui-icon-arrow-1-nw { background-position: -112px -32px; } | ||||
| .ui-icon-arrow-2-n-s { background-position: -128px -32px; } | ||||
| .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } | ||||
| .ui-icon-arrow-2-e-w { background-position: -160px -32px; } | ||||
| .ui-icon-arrow-2-se-nw { background-position: -176px -32px; } | ||||
| .ui-icon-arrowstop-1-n { background-position: -192px -32px; } | ||||
| .ui-icon-arrowstop-1-e { background-position: -208px -32px; } | ||||
| .ui-icon-arrowstop-1-s { background-position: -224px -32px; } | ||||
| .ui-icon-arrowstop-1-w { background-position: -240px -32px; } | ||||
| .ui-icon-arrowthick-1-n { background-position: 0 -48px; } | ||||
| .ui-icon-arrowthick-1-ne { background-position: -16px -48px; } | ||||
| .ui-icon-arrowthick-1-e { background-position: -32px -48px; } | ||||
| .ui-icon-arrowthick-1-se { background-position: -48px -48px; } | ||||
| .ui-icon-arrowthick-1-s { background-position: -64px -48px; } | ||||
| .ui-icon-arrowthick-1-sw { background-position: -80px -48px; } | ||||
| .ui-icon-arrowthick-1-w { background-position: -96px -48px; } | ||||
| .ui-icon-arrowthick-1-nw { background-position: -112px -48px; } | ||||
| .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } | ||||
| .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } | ||||
| .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } | ||||
| .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } | ||||
| .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } | ||||
| .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } | ||||
| .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } | ||||
| .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } | ||||
| .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } | ||||
| .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } | ||||
| .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } | ||||
| .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } | ||||
| .ui-icon-arrowreturn-1-w { background-position: -64px -64px; } | ||||
| .ui-icon-arrowreturn-1-n { background-position: -80px -64px; } | ||||
| .ui-icon-arrowreturn-1-e { background-position: -96px -64px; } | ||||
| .ui-icon-arrowreturn-1-s { background-position: -112px -64px; } | ||||
| .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } | ||||
| .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } | ||||
| .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } | ||||
| .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } | ||||
| .ui-icon-arrow-4 { background-position: 0 -80px; } | ||||
| .ui-icon-arrow-4-diag { background-position: -16px -80px; } | ||||
| .ui-icon-extlink { background-position: -32px -80px; } | ||||
| .ui-icon-newwin { background-position: -48px -80px; } | ||||
| .ui-icon-refresh { background-position: -64px -80px; } | ||||
| .ui-icon-shuffle { background-position: -80px -80px; } | ||||
| .ui-icon-transfer-e-w { background-position: -96px -80px; } | ||||
| .ui-icon-transferthick-e-w { background-position: -112px -80px; } | ||||
| .ui-icon-folder-collapsed { background-position: 0 -96px; } | ||||
| .ui-icon-folder-open { background-position: -16px -96px; } | ||||
| .ui-icon-document { background-position: -32px -96px; } | ||||
| .ui-icon-document-b { background-position: -48px -96px; } | ||||
| .ui-icon-note { background-position: -64px -96px; } | ||||
| .ui-icon-mail-closed { background-position: -80px -96px; } | ||||
| .ui-icon-mail-open { background-position: -96px -96px; } | ||||
| .ui-icon-suitcase { background-position: -112px -96px; } | ||||
| .ui-icon-comment { background-position: -128px -96px; } | ||||
| .ui-icon-person { background-position: -144px -96px; } | ||||
| .ui-icon-print { background-position: -160px -96px; } | ||||
| .ui-icon-trash { background-position: -176px -96px; } | ||||
| .ui-icon-locked { background-position: -192px -96px; } | ||||
| .ui-icon-unlocked { background-position: -208px -96px; } | ||||
| .ui-icon-bookmark { background-position: -224px -96px; } | ||||
| .ui-icon-tag { background-position: -240px -96px; } | ||||
| .ui-icon-home { background-position: 0 -112px; } | ||||
| .ui-icon-flag { background-position: -16px -112px; } | ||||
| .ui-icon-calendar { background-position: -32px -112px; } | ||||
| .ui-icon-cart { background-position: -48px -112px; } | ||||
| .ui-icon-pencil { background-position: -64px -112px; } | ||||
| .ui-icon-clock { background-position: -80px -112px; } | ||||
| .ui-icon-disk { background-position: -96px -112px; } | ||||
| .ui-icon-calculator { background-position: -112px -112px; } | ||||
| .ui-icon-zoomin { background-position: -128px -112px; } | ||||
| .ui-icon-zoomout { background-position: -144px -112px; } | ||||
| .ui-icon-search { background-position: -160px -112px; } | ||||
| .ui-icon-wrench { background-position: -176px -112px; } | ||||
| .ui-icon-gear { background-position: -192px -112px; } | ||||
| .ui-icon-heart { background-position: -208px -112px; } | ||||
| .ui-icon-star { background-position: -224px -112px; } | ||||
| .ui-icon-link { background-position: -240px -112px; } | ||||
| .ui-icon-cancel { background-position: 0 -128px; } | ||||
| .ui-icon-plus { background-position: -16px -128px; } | ||||
| .ui-icon-plusthick { background-position: -32px -128px; } | ||||
| .ui-icon-minus { background-position: -48px -128px; } | ||||
| .ui-icon-minusthick { background-position: -64px -128px; } | ||||
| .ui-icon-close { background-position: -80px -128px; } | ||||
| .ui-icon-closethick { background-position: -96px -128px; } | ||||
| .ui-icon-key { background-position: -112px -128px; } | ||||
| .ui-icon-lightbulb { background-position: -128px -128px; } | ||||
| .ui-icon-scissors { background-position: -144px -128px; } | ||||
| .ui-icon-clipboard { background-position: -160px -128px; } | ||||
| .ui-icon-copy { background-position: -176px -128px; } | ||||
| .ui-icon-contact { background-position: -192px -128px; } | ||||
| .ui-icon-image { background-position: -208px -128px; } | ||||
| .ui-icon-video { background-position: -224px -128px; } | ||||
| .ui-icon-script { background-position: -240px -128px; } | ||||
| .ui-icon-alert { background-position: 0 -144px; } | ||||
| .ui-icon-info { background-position: -16px -144px; } | ||||
| .ui-icon-notice { background-position: -32px -144px; } | ||||
| .ui-icon-help { background-position: -48px -144px; } | ||||
| .ui-icon-check { background-position: -64px -144px; } | ||||
| .ui-icon-bullet { background-position: -80px -144px; } | ||||
| .ui-icon-radio-off { background-position: -96px -144px; } | ||||
| .ui-icon-radio-on { background-position: -112px -144px; } | ||||
| .ui-icon-pin-w { background-position: -128px -144px; } | ||||
| .ui-icon-pin-s { background-position: -144px -144px; } | ||||
| .ui-icon-play { background-position: 0 -160px; } | ||||
| .ui-icon-pause { background-position: -16px -160px; } | ||||
| .ui-icon-seek-next { background-position: -32px -160px; } | ||||
| .ui-icon-seek-prev { background-position: -48px -160px; } | ||||
| .ui-icon-seek-end { background-position: -64px -160px; } | ||||
| .ui-icon-seek-start { background-position: -80px -160px; } | ||||
| /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ | ||||
| .ui-icon-seek-first { background-position: -80px -160px; } | ||||
| .ui-icon-stop { background-position: -96px -160px; } | ||||
| .ui-icon-eject { background-position: -112px -160px; } | ||||
| .ui-icon-volume-off { background-position: -128px -160px; } | ||||
| .ui-icon-volume-on { background-position: -144px -160px; } | ||||
| .ui-icon-power { background-position: 0 -176px; } | ||||
| .ui-icon-signal-diag { background-position: -16px -176px; } | ||||
| .ui-icon-signal { background-position: -32px -176px; } | ||||
| .ui-icon-battery-0 { background-position: -48px -176px; } | ||||
| .ui-icon-battery-1 { background-position: -64px -176px; } | ||||
| .ui-icon-battery-2 { background-position: -80px -176px; } | ||||
| .ui-icon-battery-3 { background-position: -96px -176px; } | ||||
| .ui-icon-circle-plus { background-position: 0 -192px; } | ||||
| .ui-icon-circle-minus { background-position: -16px -192px; } | ||||
| .ui-icon-circle-close { background-position: -32px -192px; } | ||||
| .ui-icon-circle-triangle-e { background-position: -48px -192px; } | ||||
| .ui-icon-circle-triangle-s { background-position: -64px -192px; } | ||||
| .ui-icon-circle-triangle-w { background-position: -80px -192px; } | ||||
| .ui-icon-circle-triangle-n { background-position: -96px -192px; } | ||||
| .ui-icon-circle-arrow-e { background-position: -112px -192px; } | ||||
| .ui-icon-circle-arrow-s { background-position: -128px -192px; } | ||||
| .ui-icon-circle-arrow-w { background-position: -144px -192px; } | ||||
| .ui-icon-circle-arrow-n { background-position: -160px -192px; } | ||||
| .ui-icon-circle-zoomin { background-position: -176px -192px; } | ||||
| .ui-icon-circle-zoomout { background-position: -192px -192px; } | ||||
| .ui-icon-circle-check { background-position: -208px -192px; } | ||||
| .ui-icon-circlesmall-plus { background-position: 0 -208px; } | ||||
| .ui-icon-circlesmall-minus { background-position: -16px -208px; } | ||||
| .ui-icon-circlesmall-close { background-position: -32px -208px; } | ||||
| .ui-icon-squaresmall-plus { background-position: -48px -208px; } | ||||
| .ui-icon-squaresmall-minus { background-position: -64px -208px; } | ||||
| .ui-icon-squaresmall-close { background-position: -80px -208px; } | ||||
| .ui-icon-grip-dotted-vertical { background-position: 0 -224px; } | ||||
| .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } | ||||
| .ui-icon-grip-solid-vertical { background-position: -32px -224px; } | ||||
| .ui-icon-grip-solid-horizontal { background-position: -48px -224px; } | ||||
| .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } | ||||
| .ui-icon-grip-diagonal-se { background-position: -80px -224px; } | ||||
| 
 | ||||
| 
 | ||||
| /* Misc visuals | ||||
| ----------------------------------*/ | ||||
| 
 | ||||
| /* Corner radius */ | ||||
| .ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -khtml-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; } | ||||
| .ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -khtml-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; } | ||||
| .ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; } | ||||
| .ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; } | ||||
| 
 | ||||
| /* Overlays */ | ||||
| .ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlOverlay}*/ 50%/*{bgOverlayXPos}*/ 50%/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; } | ||||
| .ui-widget-shadow { margin: -8px/*{offsetTopShadow}*/ 0 0 -8px/*{offsetLeftShadow}*/; padding: 8px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlShadow}*/ 50%/*{bgShadowXPos}*/ 50%/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityShadow}*/; -moz-border-radius: 8px/*{cornerRadiusShadow}*/; -khtml-border-radius: 8px/*{cornerRadiusShadow}*/; -webkit-border-radius: 8px/*{cornerRadiusShadow}*/; border-radius: 8px/*{cornerRadiusShadow}*/; } | ||||
							
								
								
									
										5
									
								
								www/conservancy/static/jquery-ui.min.js
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								www/conservancy/static/jquery-ui.min.js
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										16
									
								
								www/conservancy/static/jquery.min.js
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								www/conservancy/static/jquery.min.js
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							|  | @ -31,12 +31,12 @@ | |||
| <h2>I sent in my inquiry letter and/or application a long time ago.  Why haven't you replied?</h2> | ||||
| 
 | ||||
| <p>Conservancy receives an overwhelming level of interest and we have very few | ||||
|   <a href="http://sfconservancy.org/about/staff/">staff positions</a> to | ||||
|   <a href="/about/staff/">staff positions</a> to | ||||
|   meet the interest and demand | ||||
|   for <a href="http://sfconservancy.org/members/services/">Conservancy's | ||||
|   for <a href="/members/services/">Conservancy's | ||||
|   services</a> to its member projects.  Meanwhile, Conservancy always | ||||
|   prioritizes needs of | ||||
|   its <a href="http://sfconservancy.org/members/current/">existing member | ||||
|   its <a href="/members/current/">existing member | ||||
|   projects</a> over new inquiries and applications.  Therefore, it | ||||
|   sometimes can take quite a while to finish the application process and | ||||
|   be offered membership, but please note that such delays mean that should | ||||
|  | @ -70,10 +70,10 @@ | |||
|       Source license by the Open Source Initiative</a>.  All software | ||||
|       documentation for the project should be licensed under a license on | ||||
|       the preceding lists, or under Creative | ||||
|       Commons' <a href="http://creativecommons.org/licenses/by-sa/3.0/">CC-By-SA</a> | ||||
|       or <a href="http://creativecommons.org/licenses/by/3.0/">CC-By</a> | ||||
|       Commons' <a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-By-SA</a> | ||||
|       or <a href="https://creativecommons.org/licenses/by/3.0/">CC-By</a> | ||||
|       or | ||||
|         <a href="http://creativecommons.org/choose/zero/">CC-0</a>.</li> | ||||
|         <a href="https://creativecommons.org/choose/zero/">CC-0</a>.</li> | ||||
| 
 | ||||
|    <li>The project should have an existing, vibrant, diverse community | ||||
|       that develops and documents the software.  For example, projects | ||||
|  | @ -224,7 +224,7 @@ form their own independent tax-exempt non-profit.</p> | |||
|   Conservancy processes to Conservancy's general fund, which primarily is | ||||
|   used to pay staff.  (Details on how Conservancy spends its funds, | ||||
|   including salaries of key employees, can be found | ||||
|   in <a href="http://sfconservancy.org/about/filings/">Conservancy's | ||||
|   in <a href="/about/filings/">Conservancy's | ||||
|   annual filings</a>.)</p> | ||||
| 
 | ||||
| <p>Historically, Conservancy allowed projects to give less or nothing at | ||||
|  |  | |||
|  | @ -137,7 +137,7 @@ burden on behalf of its projects.</p> | |||
| 
 | ||||
| <p>Those familiar with non-profit terminology will recognize most of these | ||||
|   services | ||||
|   as <a href="http://en.wikipedia.org/wiki/Fiscal_sponsorship">fiscal | ||||
|   as <a href="https://en.wikipedia.org/wiki/Fiscal_sponsorship">fiscal | ||||
|   sponsorship services</a>.  This term is not particularly well | ||||
|   known in the FLOSS community, and many are confused by that term. | ||||
|   However, if you are familiar with what a fiscal sponsor typically does | ||||
|  |  | |||
|  | @ -0,0 +1,3 @@ | |||
| User-agent: * | ||||
| Disallow: /admin | ||||
| 
 | ||||
|  | @ -15,10 +15,14 @@ support, but doesn't necessarily endorse nor promote any specific activity | |||
| of any of its sponsors.</p> | ||||
| 
 | ||||
| <ul id="sponsor"> | ||||
| <li id="sponsor"><a href="http://appendto.com/"><img src="/img/sponsors/appendTo.png" height="75" width="200" alt="appendTo" /></a></li> | ||||
| <li id="sponsor"><a href="http://www.blackducksoftware.com/"><img src="/img/sponsors/black-duck.jpg" height="51" width="230" alt="Black Duck" /></a></li> | ||||
| <li id="sponsor"><a href="http://gandi.net"><img src="/img/sponsors/gandi.png" height="65" width="171" alt="Gandi.Net" /></a></li> | ||||
| <li id="sponsor"><a href="http://google.com"><img src="/img/sponsors/google.png" height="76" width="238" alt="Google" /></a></li> | ||||
| <li id="sponsor"><a href="http://linuxfoundation.org"><img src="/img/sponsors/linuxfoundation.png" height="76" width="250" alt="Linux Foundation" /></a></li> | ||||
| <li id="sponsor"><a href="https://www.mozilla.org/foundation/"><img src="/img/sponsors/mozilla.png" height="101" width="250" alt="Mozilla Foundation" /></a></li> | ||||
| <li id="sponsor"><a href="https://www.redhat.com/"><img src="/img/sponsors/redhat.png" height="80" width="250" alt="Red Hat" /></a></li> | ||||
| <li id="sponsor"></a></li> | ||||
| </ul> | ||||
| 
 | ||||
| <!-- This section will be added when we have in-kind contributions --> | ||||
|  |  | |||
|  | @ -8,7 +8,8 @@ | |||
|             <li class="Directors"><a href="/about/board/">Directors</a></li> | ||||
|             <li class="Officers"><a href="/about/officers/">Officers</a></li> | ||||
|             <li class="Staff"><a href="/about/staff/">Staff</a></li> | ||||
|             <li class="Outside"><a href="/about/outside/">Outside Counsel & Contractors</a></li> | ||||
|             <li class="Eval"><a href="/about/eval-committee/">Evaluation Committee</a></li> | ||||
|             <li class="Outside"><a href="/about/outside/">Outside Counsel, et alia</a></li> | ||||
|             <li class="Filings"><a href="/about/filings/">Filings</a></li> | ||||
|             <li class="License"><a href="/about/license/">License & Sources</a></li> | ||||
|             </ul> | ||||
|  |  | |||
|  | @ -26,6 +26,7 @@ | |||
|           <li class="About"><a href="/about/">About</a></li> | ||||
| 	  <li class="sponsors"><a href="/sponsors/">Sponsors</a></li> | ||||
| 	  <li class="donate"><a href="/donate/">Support Conservancy!</a></li> | ||||
|           <li class="campaign"><a href="/campaign/">Campaign</a></li> | ||||
| 	</ul> | ||||
|       </div> | ||||
|       <div id="navbar-clear"></div> | ||||
|  | @ -34,14 +35,14 @@ | |||
|     <div id="conservancyfooter"> | ||||
|       <p><a href="/">Main Page</a> | <a href="/about/contact/">Contact</a> | <a href="/sponsors/">Sponsors</a> | <a href="/privacy-policy/">Privacy Policy</a> | <a href="/feeds/omnibus/">RSS Feed</a></p> | ||||
|       <p>Follow Conservancy | ||||
|       on <a href="http://identi.ca/conservancy">identi.ca</a> | ||||
|       and <a href="http://twitter.com/conservancy">twitter</a>. | ||||
|       <a href="http://flattr.com/thing/922714/Donate-to-Software-Freedom-Conservancy" target="_blank"> | ||||
|       <img src="http://api.flattr.com/button/flattr-badge-large.png" alt="Flattr us!" title="Flattr us!" border="0" /></a></p> | ||||
|       on <a href="https://identi.ca/conservancy">identi.ca</a> | ||||
|       and <a href="https://twitter.com/conservancy">twitter</a>. | ||||
|       <a href="https://flattr.com/thing/922714/Donate-to-Software-Freedom-Conservancy" target="_blank"> | ||||
|       <img src="https://api.flattr.com/button/flattr-badge-large.png" alt="Flattr us!" title="Flattr us!" border="0" /></a></p> | ||||
|       <p class="copyright_info"> | ||||
|       <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us"><img alt="Creative Commons License" style="border-width:0" src="/img/cc-by-sa_88x31.png" /></a>  | ||||
|       <a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/us"><img alt="Creative Commons License" style="border-width:0" src="/img/cc-by-sa_88x31.png" /></a>  | ||||
|       <br />This page is licensed under a | ||||
|       <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us">Creative | ||||
|       <a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/us">Creative | ||||
|       Commons Attribution-ShareAlike 3.0 USA License</a>.</p> | ||||
|     </div> | ||||
|   </body> | ||||
|  |  | |||
|  | @ -1,10 +1,10 @@ | |||
| {% ifequal obj.omnibus_type "news" %} | ||||
| <p><i>A <a href="http://{{ site }}/news/">news item</a> from Software Freedom Conservancy.</i></p> | ||||
| <p><i>A <a href="https://{{ site }}/news/">news item</a> from Software Freedom Conservancy.</i></p> | ||||
| {% endifequal %} | ||||
| {% ifequal obj.omnibus_type "event" %} | ||||
| <p><i>An <a href="http://{{ site }}/events/">upcoming event</a> related to the Software Freedom Conservancy.</i></p> | ||||
| <p><i>An <a href="https://{{ site }}/events/">upcoming event</a> related to the Software Freedom Conservancy.</i></p> | ||||
| {% endifequal %} | ||||
| {% ifequal obj.omnibus_type "blog" %} | ||||
| <p><i>A <a href="http://{{ site }}/blog/">blog post</a> from Software Freedom Conservancy.</i></p> | ||||
| <p><i>A <a href="https://{{ site }}/blog/">blog post</a> from Software Freedom Conservancy.</i></p> | ||||
| {% endifequal %} | ||||
| {% include obj.omnibus_feed_description_template  %} | ||||
|  |  | |||
|  | @ -38,12 +38,12 @@ | |||
|   <a href="/feeds/blog/">blog posts</a>.</p> | ||||
| 
 | ||||
| <p>You can also follow Conservancy | ||||
|  on <a href="http://identi.ca/conservancy">identi.ca</a> | ||||
|  and <a href="http://twitter.com/conservancy">twitter</a>.</p> | ||||
|  on <a href="https://identi.ca/conservancy">identi.ca</a> | ||||
|  and <a href="https://twitter.com/conservancy">twitter</a>.</p> | ||||
| 
 | ||||
| <p> | ||||
|     <span id="subbox"> | ||||
|         <form method="post" action="http://lists.sfconservancy.org/mailman/subscribe/announce"> | ||||
|         <form method="post" action="https://lists.sfconservancy.org/mailman/subscribe/announce"> | ||||
|           You can also subscribe to Conservancy's low-traffic email announce list <br/><input name="email" placeholder="joe@example.org"/><input type="submit" name="email-button" value="Subscribe"/> | ||||
|         </form> | ||||
|       </span></p> | ||||
|  |  | |||
|  | @ -1,9 +1,33 @@ | |||
| # Copyright 2005-2008, James Garrison | ||||
| # Copyright 2010, 2012 Bradley M. Kuhn | ||||
| 
 | ||||
| # This software's license gives you freedom; you can copy, convey, | ||||
| # propagate, redistribute, modify and/or redistribute modified versions of | ||||
| # this program under the terms of the GNU Affero General Public License | ||||
| # (AGPL) as published by the Free Software Foundation (FSF), either | ||||
| # version 3 of the License, or (at your option) any later version of the | ||||
| # AGPL published by the FSF. | ||||
| # | ||||
| # This program is distributed in the hope that it will be useful, but | ||||
| # WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero | ||||
| # General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU Affero General Public License | ||||
| # along with this program in a file in the toplevel directory called | ||||
| # "AGPLv3".  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| from django.conf.urls.defaults import * | ||||
| from conservancy.feeds import feed_dict | ||||
| from django.contrib import admin | ||||
| 
 | ||||
| handler404 = 'modpythoncustom.view404' | ||||
| 
 | ||||
| admin.autodiscover() | ||||
| 
 | ||||
| urlpatterns = patterns('', | ||||
|     (r'^admin/doc/', include('django.contrib.admindocs.urls')), | ||||
|     (r'^admin/(.*)', admin.site.root), | ||||
|     (r'^$', 'conservancy.frontpage.view'), | ||||
|     (r'^feeds/(?P<url>.*)/?$', 'django.contrib.syndication.views.feed', | ||||
|      {'feed_dict': feed_dict}), | ||||
|  |  | |||
|  | @ -1,32 +0,0 @@ | |||
| # Copyright 2005-2008, James Garrison | ||||
| # Copyright 2010, Bradley M. Kuhn | ||||
| 
 | ||||
| # This software's license gives you freedom; you can copy, convey, | ||||
| # propagate, redistribute, modify and/or redistribute modified versions of | ||||
| # this program under the terms of the GNU Affero General Public License | ||||
| # (AGPL) as published by the Free Software Foundation (FSF), either | ||||
| # version 3 of the License, or (at your option) any later version of the | ||||
| # AGPL published by the FSF. | ||||
| # | ||||
| # This program is distributed in the hope that it will be useful, but | ||||
| # WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero | ||||
| # General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU Affero General Public License | ||||
| # along with this program in a file in the toplevel directory called | ||||
| # "AGPLv3".  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| from django import http | ||||
| 
 | ||||
| class RedirectToNonSslSite(object): | ||||
| 
 | ||||
|     def process_request(self, request): | ||||
|         """Redirect to non-SSL site if not an admin request | ||||
|         """ | ||||
| 
 | ||||
|         if not request.path.startswith('/admin'): | ||||
|             url = 'http://www.sfconservancy.org%s' % request.path | ||||
|             return http.HttpResponseRedirect(url) | ||||
| 
 | ||||
|         return None | ||||
|  | @ -1,24 +0,0 @@ | |||
| # Copyright 2005-2008, James Garrison | ||||
| # Copyright 2010, Bradley M. Kuhn | ||||
| 
 | ||||
| # This software's license gives you freedom; you can copy, convey, | ||||
| # propagate, redistribute, modify and/or redistribute modified versions of | ||||
| # this program under the terms of the GNU Affero General Public License | ||||
| # (AGPL) as published by the Free Software Foundation (FSF), either | ||||
| # version 3 of the License, or (at your option) any later version of the | ||||
| # AGPL published by the FSF. | ||||
| # | ||||
| # This program is distributed in the hope that it will be useful, but | ||||
| # WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero | ||||
| # General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU Affero General Public License | ||||
| # along with this program in a file in the toplevel directory called | ||||
| # "AGPLv3".  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| from conservancy.settings import * | ||||
| 
 | ||||
| ROOT_URLCONF = 'conservancy_ssl.urls' | ||||
| 
 | ||||
| MIDDLEWARE_CLASSES += ('conservancy_ssl.middleware.RedirectToNonSslSite',) | ||||
|  | @ -1,33 +0,0 @@ | |||
| # Copyright 2005-2008, James Garrison | ||||
| # Copyright 2010, Bradley M. Kuhn | ||||
| 
 | ||||
| # This software's license gives you freedom; you can copy, convey, | ||||
| # propagate, redistribute, modify and/or redistribute modified versions of | ||||
| # this program under the terms of the GNU Affero General Public License | ||||
| # (AGPL) as published by the Free Software Foundation (FSF), either | ||||
| # version 3 of the License, or (at your option) any later version of the | ||||
| # AGPL published by the FSF. | ||||
| # | ||||
| # This program is distributed in the hope that it will be useful, but | ||||
| # WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero | ||||
| # General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU Affero General Public License | ||||
| # along with this program in a file in the toplevel directory called | ||||
| # "AGPLv3".  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| 
 | ||||
| # Start with typical conservancy url scheme.  The middleware will | ||||
| # intercept non-admin requests, but having the main conservancy urlconf | ||||
| # repeated here allows us to browse the automatic documentation in the | ||||
| # admin interface. | ||||
| 
 | ||||
| from conservancy.urls import * | ||||
| from django.contrib import admin | ||||
| 
 | ||||
| admin.autodiscover() | ||||
| 
 | ||||
| urlpatterns += patterns('', | ||||
|                         (r'^admin/doc/', include('django.contrib.admindocs.urls')), | ||||
|                         (r'^admin/(.*)', admin.site.root),) | ||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Martin Michlmayr
						Martin Michlmayr