Added Pinegrow Design project
This commit is contained in:
parent
51d668096b
commit
cdace4810d
125 changed files with 31470 additions and 0 deletions
2114
design/js/bootstrap.js
vendored
Normal file
2114
design/js/bootstrap.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
7
design/js/bootstrap.min.js
vendored
Normal file
7
design/js/bootstrap.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
175
design/js/bskit-scripts.js
Normal file
175
design/js/bskit-scripts.js
Normal file
|
|
@ -0,0 +1,175 @@
|
|||
/* Javascript code for all elements
|
||||
/*----------------------------------------------------*/
|
||||
$(document).ready(function() {
|
||||
initMaps();
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() {
|
||||
count(".coming-soon");
|
||||
});
|
||||
|
||||
|
||||
/* -------- Owl Carousel MTCH -------- */
|
||||
$(".quote-carousel").owlCarousel({
|
||||
slideSpeed : 300,
|
||||
autoPlay : true,
|
||||
paginationSpeed : 400,
|
||||
singleItem : true,
|
||||
});
|
||||
// End Owl Carousel
|
||||
|
||||
|
||||
/* -------- Counter Up -------- */
|
||||
$('.counter').counterUp({
|
||||
delay: 10,
|
||||
time: 1000
|
||||
});
|
||||
// End Counter Up
|
||||
|
||||
|
||||
/* Count Down
|
||||
/*---------------------------------------------------- MTCH*/
|
||||
function count(elem){
|
||||
var $e = $(elem);
|
||||
if($e.length==0){
|
||||
return 0;
|
||||
};
|
||||
|
||||
//CountDown
|
||||
var dateOfBeginning = new Date(),
|
||||
dateOfEnd = $e.closest('[data-end-date]').attr('data-end-date') || new Date((new Date()).getTime() + 3*30*24*3600*1000);
|
||||
|
||||
countDown(dateOfBeginning, dateOfEnd);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* -------- Isotope Filtering -------- */
|
||||
var $container = $('.isotope-gallery-container');
|
||||
var $filter = $('.filter');
|
||||
$(window).on('load', function () {
|
||||
// Initialize Isotope
|
||||
$container.isotope({
|
||||
itemSelector: '.gallery-item-wrapper'
|
||||
});
|
||||
$('.filter a').click(function () {
|
||||
var selector = $(this).attr('data-filter');
|
||||
var $iso_container = $(this).closest('.content-block,body').find('.isotope-gallery-container');
|
||||
$iso_container.isotope({ filter: selector });
|
||||
|
||||
var $iso_filter = $(this).closest('.filter');
|
||||
$iso_filter.find('a').parent().removeClass('active');
|
||||
$(this).parent().addClass('active');
|
||||
return false;
|
||||
});
|
||||
});
|
||||
$(window).smartresize(function () {
|
||||
$container.isotope('reLayout');
|
||||
});
|
||||
// End Isotope Filtering
|
||||
|
||||
|
||||
/* -------- Gallery Popup -------- */
|
||||
$(document).ready(function(){
|
||||
$('.gallery-zoom').magnificPopup({
|
||||
type: 'image'
|
||||
// other options
|
||||
});
|
||||
});
|
||||
// End Gallery Popup
|
||||
|
||||
|
||||
/* -------- Google Map -------- MTCH */
|
||||
function initMap(elem) {
|
||||
|
||||
var $e = $(elem);
|
||||
if($e.length==0){
|
||||
return 0;
|
||||
};
|
||||
|
||||
var lat = parseFloat($e.attr('data-map-lat') || 51.5111507);
|
||||
var long = parseFloat($e.attr('data-map-long') || -0.1239844);
|
||||
var zoom = parseInt($e.attr('data-map-zoom') || 15);
|
||||
|
||||
var marker_image = $e.attr('data-marker-image') || 'images/map-pin.png';
|
||||
|
||||
//Map start init
|
||||
var mapOptions = {
|
||||
center: new google.maps.LatLng(lat, long),
|
||||
zoom: zoom,
|
||||
zoomControl: true,
|
||||
zoomControlOptions: {
|
||||
style: google.maps.ZoomControlStyle.DEFAULT,
|
||||
},
|
||||
disableDoubleClickZoom: false,
|
||||
mapTypeControl: true,
|
||||
mapTypeControlOptions: {
|
||||
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
|
||||
},
|
||||
scaleControl: true,
|
||||
scrollwheel: false,
|
||||
streetViewControl: true,
|
||||
draggable : true,
|
||||
overviewMapControl: false,
|
||||
mapTypeId: google.maps.MapTypeId.ROADMAP,
|
||||
styles: [{stylers:[{saturation:-100},{gamma:1}]},{elementType:"labels.text.stroke",stylers:[{visibility:"off"}]},{featureType:"poi.business",elementType:"labels.text",stylers:[{visibility:"off"}]},{featureType:"poi.business",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"poi.place_of_worship",elementType:"labels.text",stylers:[{visibility:"off"}]},{featureType:"poi.place_of_worship",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"road",elementType:"geometry",stylers:[{visibility:"simplified"}]},{featureType:"water",stylers:[{visibility:"on"},{saturation:50},{gamma:0},{hue:"#50a5d1"}]},{featureType:"administrative.neighborhood",elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{featureType:"road.local",elementType:"labels.text",stylers:[{weight:0.5},{color:"#333333"}]},{featureType:"transit.station",elementType:"labels.icon",stylers:[{gamma:1},{saturation:50}]}]
|
||||
}
|
||||
|
||||
var map = new google.maps.Map($e.get(0), mapOptions);
|
||||
var marker = new google.maps.Marker({
|
||||
icon: marker_image,
|
||||
map: map,
|
||||
position: map.getCenter()
|
||||
});
|
||||
}
|
||||
|
||||
function initMaps() {
|
||||
$('.map').each(function(i, e) {
|
||||
initMap(e);
|
||||
})
|
||||
}
|
||||
//end Google Map
|
||||
|
||||
|
||||
|
||||
/* -------- Header 1 Nav -------- */
|
||||
$(".headroom").headroom({
|
||||
});
|
||||
|
||||
/* Soft scroll */
|
||||
$(function() {
|
||||
$('.soft-scroll a[href^="#"], a[href^="#"].soft-scroll').bind('click', function(event) {
|
||||
var $anchor = $(this);
|
||||
var href = $anchor.attr('href');
|
||||
try {
|
||||
var elem = $(href);
|
||||
if(elem.length) {
|
||||
$('html, body').stop().animate({
|
||||
scrollTop: elem.offset().top
|
||||
}, 1000);
|
||||
|
||||
event.preventDefault();
|
||||
}
|
||||
}
|
||||
catch(err) {}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
/* -------- Header 3 Nav -------- MTCH */
|
||||
|
||||
function initHeader3() {
|
||||
$('.nav-slide-btn').click(function() {
|
||||
$('.pull').slideToggle();
|
||||
});
|
||||
|
||||
$('#nav-toggle').click(function(e) {
|
||||
$(this).toggleClass('active');
|
||||
e.preventDefault();
|
||||
})
|
||||
}
|
||||
$(function() {
|
||||
initHeader3();
|
||||
});
|
||||
|
||||
90
design/js/contact-form.php
Normal file
90
design/js/contact-form.php
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
<?php
|
||||
|
||||
if(!$_POST) exit;
|
||||
|
||||
// Email address verification, do not edit.
|
||||
function isEmail($email) {
|
||||
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i",$email));
|
||||
}
|
||||
|
||||
if (!defined("PHP_EOL")) define("PHP_EOL", "\r\n");
|
||||
|
||||
$name = $_POST['name'];
|
||||
$email = $_POST['email'];
|
||||
$phone = $_POST['phone'];
|
||||
$comments = $_POST['comments'];
|
||||
|
||||
if(trim($name) == '') {
|
||||
echo '<div class="error_message">Please enter your name.</div>';
|
||||
exit();
|
||||
} else if(trim($email) == '') {
|
||||
echo '<div class="error_message">Please enter a valid email address.</div>';
|
||||
exit();
|
||||
} else if(trim($phone) == '') {
|
||||
echo '<div class="error_message">Please enter a valid phone number.</div>';
|
||||
exit();
|
||||
} else if(!is_numeric($phone)) {
|
||||
echo '<div class="error_message">Phone number can only contain digits.</div>';
|
||||
exit();
|
||||
} else if(!isEmail($email)) {
|
||||
echo '<div class="error_message">You have entered an invalid e-mail address, try again.</div>';
|
||||
exit();
|
||||
}
|
||||
|
||||
if(trim($comments) == '') {
|
||||
echo '<div class="error_message">Please enter your message.</div>';
|
||||
exit();
|
||||
}
|
||||
|
||||
if(get_magic_quotes_gpc()) {
|
||||
$comments = stripslashes($comments);
|
||||
}
|
||||
|
||||
|
||||
// Configuration option.
|
||||
// Enter the email address that you want to emails to be sent to.
|
||||
// Example $address = "yourname@yourdomain.com";
|
||||
|
||||
$address = "support@example.com";
|
||||
|
||||
|
||||
// Configuration option.
|
||||
// i.e. The standard subject will appear as, "You've been contacted by John Doe."
|
||||
|
||||
// Example, $e_subject = '$name . ' has contacted you via Your Website.';
|
||||
|
||||
$e_subject = 'You\'ve been contacted by ' . $name . '.';
|
||||
|
||||
|
||||
// Configuration option.
|
||||
// You can change this if you feel that you need to.
|
||||
// Developers, you may wish to add more fields to the form, in which case you must be sure to add them here.
|
||||
|
||||
$e_body = "You have been contacted by $name from your website, their message is as follows." . PHP_EOL . PHP_EOL;
|
||||
$e_content = "\"$comments\"" . PHP_EOL . PHP_EOL;
|
||||
$e_reply = "You can contact $name by email, $email or by phone $phone";
|
||||
|
||||
$msg = wordwrap( $e_body . $e_content . $e_reply, 70 );
|
||||
|
||||
$headers = "From: $email" . PHP_EOL;
|
||||
$headers .= "Reply-To: $email" . PHP_EOL;
|
||||
$headers .= "MIME-Version: 1.0" . PHP_EOL;
|
||||
$headers .= "Content-type: text/plain; charset=utf-8" . PHP_EOL;
|
||||
$headers .= "Content-Transfer-Encoding: quoted-printable" . PHP_EOL;
|
||||
|
||||
if(mail($address, $e_subject, $msg, $headers)) {
|
||||
|
||||
// Email has sent successfully, echo a success page.
|
||||
|
||||
echo "<fieldset>";
|
||||
echo "<div id='success_page'>";
|
||||
echo "<h2>Email Sent Successfully.</h2>";
|
||||
echo "<p>Thank you <strong>$name</strong>, your message has been sent to us.</p>";
|
||||
echo "</div>";
|
||||
echo "</fieldset>";
|
||||
|
||||
} else {
|
||||
|
||||
echo 'ERROR!';
|
||||
|
||||
}
|
||||
8
design/js/html5shiv.js
vendored
Normal file
8
design/js/html5shiv.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
HTML5 Shiv v3.7.0 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
|
||||
*/
|
||||
(function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag();
|
||||
a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x<style>article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}</style>";
|
||||
c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="<xyz></xyz>";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode||
|
||||
"undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:"3.7.0",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);
|
||||
if(g)return a.createDocumentFragment();for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d<h;d++)c.createElement(e[d]);return c}};l.html5=e;q(f)})(this,document);
|
||||
4
design/js/jquery-1.11.1.min.js
vendored
Normal file
4
design/js/jquery-1.11.1.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1170
design/js/plugins.js
Normal file
1170
design/js/plugins.js
Normal file
File diff suppressed because one or more lines are too long
6
design/js/respond.min.js
vendored
Normal file
6
design/js/respond.min.js
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas. Dual MIT/BSD license */
|
||||
/*! NOTE: If you're already including a window.matchMedia polyfill via Modernizr or otherwise, you don't need this part */
|
||||
window.matchMedia=window.matchMedia||function(a){"use strict";var c,d=a.documentElement,e=d.firstElementChild||d.firstChild,f=a.createElement("body"),g=a.createElement("div");return g.id="mq-test-1",g.style.cssText="position:absolute;top:-100em",f.style.background="none",f.appendChild(g),function(a){return g.innerHTML='­<style media="'+a+'"> #mq-test-1 { width: 42px; }</style>',d.insertBefore(f,e),c=42===g.offsetWidth,d.removeChild(f),{matches:c,media:a}}}(document);
|
||||
|
||||
/*! Respond.js v1.3.0: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */
|
||||
(function(a){"use strict";function x(){u(!0)}var b={};if(a.respond=b,b.update=function(){},b.mediaQueriesSupported=a.matchMedia&&a.matchMedia("only all").matches,!b.mediaQueriesSupported){var q,r,t,c=a.document,d=c.documentElement,e=[],f=[],g=[],h={},i=30,j=c.getElementsByTagName("head")[0]||d,k=c.getElementsByTagName("base")[0],l=j.getElementsByTagName("link"),m=[],n=function(){for(var b=0;l.length>b;b++){var c=l[b],d=c.href,e=c.media,f=c.rel&&"stylesheet"===c.rel.toLowerCase();d&&f&&!h[d]&&(c.styleSheet&&c.styleSheet.rawCssText?(p(c.styleSheet.rawCssText,d,e),h[d]=!0):(!/^([a-zA-Z:]*\/\/)/.test(d)&&!k||d.replace(RegExp.$1,"").split("/")[0]===a.location.host)&&m.push({href:d,media:e}))}o()},o=function(){if(m.length){var b=m.shift();v(b.href,function(c){p(c,b.href,b.media),h[b.href]=!0,a.setTimeout(function(){o()},0)})}},p=function(a,b,c){var d=a.match(/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi),g=d&&d.length||0;b=b.substring(0,b.lastIndexOf("/"));var h=function(a){return a.replace(/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,"$1"+b+"$2$3")},i=!g&&c;b.length&&(b+="/"),i&&(g=1);for(var j=0;g>j;j++){var k,l,m,n;i?(k=c,f.push(h(a))):(k=d[j].match(/@media *([^\{]+)\{([\S\s]+?)$/)&&RegExp.$1,f.push(RegExp.$2&&h(RegExp.$2))),m=k.split(","),n=m.length;for(var o=0;n>o;o++)l=m[o],e.push({media:l.split("(")[0].match(/(only\s+)?([a-zA-Z]+)\s?/)&&RegExp.$2||"all",rules:f.length-1,hasquery:l.indexOf("(")>-1,minw:l.match(/\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:l.match(/\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}u()},s=function(){var a,b=c.createElement("div"),e=c.body,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",e||(e=f=c.createElement("body"),e.style.background="none"),e.appendChild(b),d.insertBefore(e,d.firstChild),a=b.offsetWidth,f?d.removeChild(e):e.removeChild(b),a=t=parseFloat(a)},u=function(b){var h="clientWidth",k=d[h],m="CSS1Compat"===c.compatMode&&k||c.body[h]||k,n={},o=l[l.length-1],p=(new Date).getTime();if(b&&q&&i>p-q)return a.clearTimeout(r),r=a.setTimeout(u,i),void 0;q=p;for(var v in e)if(e.hasOwnProperty(v)){var w=e[v],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?t||s():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?t||s():1)),w.hasquery&&(z&&A||!(z||m>=x)||!(A||y>=m))||(n[w.media]||(n[w.media]=[]),n[w.media].push(f[w.rules]))}for(var C in g)g.hasOwnProperty(C)&&g[C]&&g[C].parentNode===j&&j.removeChild(g[C]);for(var D in n)if(n.hasOwnProperty(D)){var E=c.createElement("style"),F=n[D].join("\n");E.type="text/css",E.media=D,j.insertBefore(E,o.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(c.createTextNode(F)),g.push(E)}},v=function(a,b){var c=w();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))},w=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}();n(),b.update=n,a.addEventListener?a.addEventListener("resize",x,!1):a.attachEvent&&a.attachEvent("onresize",x)}})(this);
|
||||
Loading…
Add table
Add a link
Reference in a new issue