+ We will keep this information strictly confidential
+
+
+
+
+
Help us understand your needs by completing this survey
+
+
+ jOOQ has been the leading Java Open Source SQL building tool for the last three years. Feedback on social media such as Facebook, Twitter, reddit, Stack Overflow has been overwhelmingly positive.
+
+
+ You can influence jOOQ's future in the professional OSS world. By completing this survey, you help us take the right decisions to provide you with an even better Java / SQL integration in the future. All of the provided information will be kept strictly confidential.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/jOOQ-website/frame.php b/jOOQ-website/frame.php
index 4589015b01..3bc13117d7 100644
--- a/jOOQ-website/frame.php
+++ b/jOOQ-website/frame.php
@@ -37,8 +37,11 @@ function manualHeader($isSingle, $forVersion) {
+
+
+
@@ -60,7 +63,82 @@ function manualHeader($isSingle, $forVersion) {
@@ -193,9 +271,11 @@ function manualHeader($isSingle, $forVersion) {
+
diff --git a/jOOQ-website/js/jquery.cookie.js b/jOOQ-website/js/jquery.cookie.js
new file mode 100644
index 0000000000..32badc56d7
--- /dev/null
+++ b/jOOQ-website/js/jquery.cookie.js
@@ -0,0 +1,95 @@
+/*!
+ * jQuery Cookie Plugin v1.3.1
+ * https://github.com/carhartl/jquery-cookie
+ *
+ * Copyright 2013 Klaus Hartl
+ * Released under the MIT license
+ */
+(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD. Register as anonymous module.
+ define(['jquery'], factory);
+ } else {
+ // Browser globals.
+ factory(jQuery);
+ }
+}(function ($) {
+
+ var pluses = /\+/g;
+
+ function raw(s) {
+ return s;
+ }
+
+ function decoded(s) {
+ return decodeURIComponent(s.replace(pluses, ' '));
+ }
+
+ function converted(s) {
+ if (s.indexOf('"') === 0) {
+ // This is a quoted cookie as according to RFC2068, unescape
+ s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
+ }
+ try {
+ return config.json ? JSON.parse(s) : s;
+ } catch(er) {}
+ }
+
+ var config = $.cookie = function (key, value, options) {
+
+ // write
+ if (value !== undefined) {
+ options = $.extend({}, config.defaults, options);
+
+ if (typeof options.expires === 'number') {
+ var days = options.expires, t = options.expires = new Date();
+ t.setDate(t.getDate() + days);
+ }
+
+ value = config.json ? JSON.stringify(value) : String(value);
+
+ return (document.cookie = [
+ config.raw ? key : encodeURIComponent(key),
+ '=',
+ config.raw ? value : encodeURIComponent(value),
+ options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
+ options.path ? '; path=' + options.path : '',
+ options.domain ? '; domain=' + options.domain : '',
+ options.secure ? '; secure' : ''
+ ].join(''));
+ }
+
+ // read
+ var decode = config.raw ? raw : decoded;
+ var cookies = document.cookie.split('; ');
+ var result = key ? undefined : {};
+ for (var i = 0, l = cookies.length; i < l; i++) {
+ var parts = cookies[i].split('=');
+ var name = decode(parts.shift());
+ var cookie = decode(parts.join('='));
+
+ if (key && key === name) {
+ result = converted(cookie);
+ break;
+ }
+
+ if (!key) {
+ result[name] = converted(cookie);
+ }
+ }
+
+ return result;
+ };
+
+ config.defaults = {};
+
+ $.removeCookie = function (key, options) {
+ if ($.cookie(key) !== undefined) {
+ // Must not alter options, thus extending a fresh object...
+ $.cookie(key, '', $.extend({}, options, { expires: -1 }));
+ return true;
+ }
+ return false;
+ };
+
+}));
\ No newline at end of file
diff --git a/jOOQ-website/js/jquery.modal.js b/jOOQ-website/js/jquery.modal.js
new file mode 100644
index 0000000000..130cc65efd
--- /dev/null
+++ b/jOOQ-website/js/jquery.modal.js
@@ -0,0 +1,187 @@
+/*
+ A simple jQuery modal (http://github.com/kylefox/jquery-modal)
+ Version 0.5.3
+*/
+(function($) {
+
+ var current = null;
+
+ $.modal = function(el, options) {
+ $.modal.close(); // Close any open modals.
+ var remove, target;
+ this.$body = $('body');
+ this.options = $.extend({}, $.modal.defaults, options);
+ if (el.is('a')) {
+ target = el.attr('href');
+ //Select element by id from href
+ if (/^#/.test(target)) {
+ this.$elm = $(target);
+ if (this.$elm.length !== 1) return null;
+ this.open();
+ //AJAX
+ } else {
+ this.$elm = $('