Changeset 1443309
- Timestamp:
- 06/25/2016 11:08:22 AM (10 years ago)
- Location:
- cactus-masonry-plus
- Files:
-
- 18 added
- 8 edited
-
assets/screenshot-1.jpg (added)
-
assets/screenshot-2.jpg (added)
-
assets/screenshot-3.jpg (added)
-
assets/screenshot-4.jpg (added)
-
assets/screenshot-5.jpg (added)
-
assets/zips/0.0.4.1.zip (added)
-
tags/0.0.4.1 (added)
-
tags/0.0.4.1/cactusBrick.js (added)
-
tags/0.0.4.1/cactusBrick.min.js (added)
-
tags/0.0.4.1/cactusGallery.js (added)
-
tags/0.0.4.1/cactusGallery.min.js (added)
-
tags/0.0.4.1/cactusMasonry.php (added)
-
tags/0.0.4.1/cactusMasonryPlus.js (added)
-
tags/0.0.4.1/cactusMasonryPlus.min.js (added)
-
tags/0.0.4.1/license.txt (added)
-
tags/0.0.4.1/readme.txt (added)
-
tags/0.0.4.1/style.css (added)
-
tags/0.0.4.1/style.scss (added)
-
trunk/cactusBrick.js (modified) (4 diffs)
-
trunk/cactusBrick.min.js (modified) (1 diff)
-
trunk/cactusMasonry.php (modified) (4 diffs)
-
trunk/cactusMasonryPlus.js (modified) (2 diffs)
-
trunk/cactusMasonryPlus.min.js (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/style.css (modified) (1 diff)
-
trunk/style.scss (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
cactus-masonry-plus/trunk/cactusBrick.js
r1443257 r1443309 211 211 212 212 if(this.hasMaxW) this.maxW = this.cssValMaxW; 213 else if(this.maxResW == 0) this.maxW = this.initialW; 213 214 else this.maxW = this.maxResW; 214 if(this.maxW == 0) this.maxW = this.w;215 215 216 216 //Process minimum widths 217 217 if(this.hasMinW) this.minW = Math.max(this.w * this.tolerance, this.cssValMinW); 218 218 else this.minW = this.w * this.tolerance; 219 219 220 220 //Apply width limits 221 221 if(this.w > this.maxW) this.w = this.maxW; … … 231 231 if(this.hasMinH) this.minH = Math.max(this.minW * this.aspect * this.tolerance, this.cssValMinH); 232 232 else this.minH = this.minW * this.tolerance; 233 if(this.minH > this.maxH) this.maxH = this.minH; 233 234 234 235 //Store initial widths and heights for a running total during iterative processes … … 240 241 if(this.h > this.maxH) this.h = this.maxH; 241 242 if(this.h < this.minH) this.h = this.minH; 242 243 243 244 244 } else {//If this has a percentage width … … 267 267 if(this.hasMinH) this.minH = Math.min(this.initialH, this.cssValMinH); 268 268 else this.minH = this.w * this.aspect; 269 if(this.minH > this.maxH) this.maxH = this.minH; 269 270 270 271 //Apply height limits -
cactus-masonry-plus/trunk/cactusBrick.min.js
r1443257 r1443309 1 1 /*!@preserve Copyright 2016 cactus.cloud - Licensed under GNU AGPLv3. See <license.txt> or <http://www.gnu.org/licenses/>.*/ 2 function CactusBrick(){this.DOM,this.meta,this.tolerance=.75,this.id,this.rendered=!1,this.evalMaxW,this.evalMaxH,this.evalMeta,this.x,this.y,this.h,this.w,this.initialW,this.initialH,this.minW,this.minH=0,this.maxH,this.maxResH,this.maxResW,this.metaH,this.aspect=1,this.cssW,this.cssH,this.cssMinW,this.cssMinH,this.cssMaxW,this.cssMaxH,this.hasH,this.hasMinW,this.hasMinH,this.hasMaxW,this.hasMaxH,this.scalable,this.scalableMinW,this.scalableMaxW,this.cssValH,this.cssValMinW,this.cssValMinH,this.cssValMaxW,this.cssValMaxH}CactusBrick.prototype.init=function(s,i,t,h,a,e,n){this.id=i,this.DOM=s,this.meta=jQuery(s).find(".meta")[0],this.evalMeta=h,this.tolerance=t;var c=e/n;isNaN(c)||(this.aspect=c),this.maxResH=e,this.maxResW=n,this.initialW=Math.floor(jQuery(s).outerWidth()),this.initialH=Math.floor(jQuery(s).outerHeight()),this.getCSS(),this.updateSizing(a)},CactusBrick.prototype.clone=function(s){this.DOM=s.DOM,this.tolerance=s.tolerance,this.id=s.id,this.rendered=s.rendered,this.evalMaxW=s.evalMaxW,this.evalMaxH=s.evalMaxH,this.evalMeta=s.evalMeta,this.x=s.x,this.y=s.y,this.h=s.h,this.w=s.w,this.initialW=s.initialW,this.initialH=s.initialH,this.maxResH=s.maxResH,this.maxResW=s.maxResW,this.minW=s.minW,this.minH=s.minH,this.maxH=s.maxH,this.metaH=s.metaH,this.aspect=s.aspect,this.cssW=s.cssW,this.cssH=s.cssH,this.cssMinW=s.cssMinW,this.cssMinH=s.cssMinH,this.cssMaxW=s.cssMaxW,this.cssMaxH=s.cssMaxH,this.hasH=s.hasH,this.hasMinW=s.hasMinW,this.hasMinH=s.hasMinH,this.hasMaxW=s.hasMaxW,this.hasMaxH=s.hasMaxH,this.scalable=s.scalable,this.scalableMinW=s.scalableMinW,this.scalableMaxW=s.scalableMaxW,this.cssValH=s.cssValH,this.cssValMinW=s.cssValMinW,this.cssValMinH=s.cssValMinH,this.cssValMaxW=s.cssValMaxW,this.cssValMaxH=s.cssValMaxH},CactusBrick.prototype.getCSS=function(){this.cssW=this.DOM.style.width,this.cssH=this.DOM.style.height,this.cssMinW=this.DOM.style.minWidth,this.cssMinH=this.DOM.style.minHeight,this.cssMaxW=this.DOM.style.maxWidth,this.cssMaxH=this.DOM.style.maxHeight,this.scalable=-1===this.cssW.indexOf("%"),this.hasH="0px"!=this.cssH&&-1!==this.cssH.indexOf("px"),this.hasMinW=""!==this.cssMinW,this.hasMinH="0px"!=this.cssMinH&&-1!==this.cssMinH.indexOf("px"),this.hasMaxW=""!==this.cssMaxW,this.hasMaxH="0px"!=this.cssMaxH&&-1!==this.cssMaxH.indexOf("px"),this.scalableMinW=this.hasMinW&&-1!==this.cssMinW.indexOf("%"),this.scalableMaxW=this.hasMaxW&&-1!==this.cssMaxW.indexOf("%")},CactusBrick.prototype.updateSizing=function(s){function i(s){var i=parseFloat(s);return jQuery.isNumeric(i)?i:0}this.rendered=!1,this.cssValMinW=this.scalableMinW?s/100*i(this.cssMinW):this.hasMinW?Math.min(i(this.cssMinW),s):0,this.hasH&&(this.cssValH=i(this.cssH)),this.cssValMinH=this.hasMinH?i(this.cssMinH):0,this.cssValMaxW=this.scalableMaxW?s/100*i(this.cssMaxW):this.hasMaxW?i(this.cssMaxW):0,this.cssValMaxH=this.hasMaxH?i(this.cssMaxH):0,this.scalable?(this.w=this.initialW,this.maxW=this.hasMaxW?this.cssValMaxW: this.maxResW,0==this.maxW&&(this.maxW=this.w),this.minW=this.hasMinW?Math.max(this.w*this.tolerance,this.cssValMinW):this.w*this.tolerance,this.w>this.maxW&&(this.w=this.maxW),this.w<this.minW&&(this.w=this.minW),this.maxH=this.hasH&&this.hasMaxH?Math.min(this.cssValH,this.cssValMaxH,this.maxW*this.aspect):this.hasMaxH?Math.min(this.initialH,this.cssValMaxH,this.maxW*this.aspect):this.hasH?this.cssValH:this.maxW*this.aspect,this.minH=this.hasMinH?Math.max(this.minW*this.aspect*this.tolerance,this.cssValMinH):this.minW*this.tolerance,this.evalMaxW=this.w,this.evalMaxH=this.initialH,this.h=this.w*this.aspect,this.h>this.maxH&&(this.h=this.maxH),this.h<this.minH&&(this.h=this.minH)):(this.w=s*i(this.cssW)/100,this.maxW=this.hasMaxW?this.cssValMaxW:this.w,this.minW=this.hasMinW?this.cssValMinW:this.w,this.w>this.maxW&&(this.w=this.maxW),this.w<this.minW&&(this.w=this.minW),this.maxH=this.hasH&&this.hasMaxH?Math.min(this.cssValH,this.cssValMaxH):this.hasMaxH?Math.min(this.maxResH,this.cssValMaxH):this.hasH?this.cssValH:this.maxResH,this.minH=this.hasMinH?Math.min(this.initialH,this.cssValMinH):this.w*this.aspect,this.h=this.w*this.aspect,this.h>this.maxH&&(this.h=this.maxH),this.h<this.minH&&(this.h=this.minH)),this.metaH=this.evalMeta?jQuery(this.meta).outerHeight():0,this.h=Math.ceil(this.h),this.w=Math.ceil(this.w),this.maxW=Math.ceil(this.maxW),this.minW=Math.ceil(this.minW),this.maxH=Math.ceil(this.maxH),this.minH=Math.ceil(this.minH),this.DOM.setAttribute("maxH",this.maxH),this.DOM.setAttribute("minH",this.minH),this.DOM.setAttribute("maxW",this.maxW),this.DOM.setAttribute("minW",this.minW),this.DOM.setAttribute("w",this.w),this.DOM.setAttribute("h",this.h),this.DOM.setAttribute("aspect",this.aspect),this.DOM.setAttribute("initH",this.initialH),this.DOM.setAttribute("initW",this.initialW),this.DOM.setAttribute("metaH",this.metaH)},CactusBrick.prototype.updateWidth=function(s){this.updateSizing(s)},CactusBrick.prototype.intersects=function(s){return s.scalable?this.scalableIntersect(s):this.nonScalableIntersect(s)},CactusBrick.prototype.scalableIntersect=function(s){var i=this.y,t=s.y,h=this.x,a=s.x,e=h+this.w,n=a+Math.max(s.initialW,s.minW),c=i+this.h+this.metaH,x=t+s.maxH+s.metaH;if(h>=n)return!1;if(h>=a+s.minW&&h>a&&(t>i&&c>t||x>i&&c>x))return s.w=Math.min(Math.max(h-a,s.minW),s.evalMaxW),s.evalMaxW=s.w,!1;if(a>=e)return!1;if(i>=x)return!1;if(i>=t+s.minH&&i>t&&(a>h&&e>a||n>h&&e>n))return s.h=Math.min(Math.max(i-t,s.minH),s.evalMaxH),s.evalMaxH=s.h,!1;if(t>=c)return!1;var M=Math.max(s.initialW,s.minW);return s.w=M,s.evalMaxW=M,M=Math.max(s.maxH,s.minH),s.h=M,s.evalMaxH=M,s.x=e,!0},CactusBrick.prototype.nonScalableIntersect=function(s){var i=this.y,t=s.y,h=this.x,a=s.x,e=h+this.w,n=a+s.w,c=i+this.h+this.metaH,x=t+s.h+s.metaH;return h>=n||a>=e?!1:i>=x||t>=c?!1:(s.x=e,!0)},CactusBrick.prototype.update=function(){jQuery(this.DOM).css(this.scalable?{top:this.y+"px",left:this.x+"px",height:this.h+"px",width:this.w+"px",minWidth:this.minW+"px",maxWidth:this.maxW+"px",minHeight:this.minH+"px",maxHeight:this.maxH+"px",visibility:"visible"}:{top:this.y+"px",left:this.x+"px",height:this.h+"px",width:this.w+"px",minWidth:this.minW+"px",maxWidth:this.maxW+"px",minHeight:this.minH+"px",maxHeight:this.maxH+"px",visibility:"visible"}),this.rendered=!0},CactusBrick.prototype.removeFromFlow=function(){this.rendered=!1};2 function CactusBrick(){this.DOM,this.meta,this.tolerance=.75,this.id,this.rendered=!1,this.evalMaxW,this.evalMaxH,this.evalMeta,this.x,this.y,this.h,this.w,this.initialW,this.initialH,this.minW,this.minH=0,this.maxH,this.maxResH,this.maxResW,this.metaH,this.aspect=1,this.cssW,this.cssH,this.cssMinW,this.cssMinH,this.cssMaxW,this.cssMaxH,this.hasH,this.hasMinW,this.hasMinH,this.hasMaxW,this.hasMaxH,this.scalable,this.scalableMinW,this.scalableMaxW,this.cssValH,this.cssValMinW,this.cssValMinH,this.cssValMaxW,this.cssValMaxH}CactusBrick.prototype.init=function(s,i,t,h,a,e,n){this.id=i,this.DOM=s,this.meta=jQuery(s).find(".meta")[0],this.evalMeta=h,this.tolerance=t;var c=e/n;isNaN(c)||(this.aspect=c),this.maxResH=e,this.maxResW=n,this.initialW=Math.floor(jQuery(s).outerWidth()),this.initialH=Math.floor(jQuery(s).outerHeight()),this.getCSS(),this.updateSizing(a)},CactusBrick.prototype.clone=function(s){this.DOM=s.DOM,this.tolerance=s.tolerance,this.id=s.id,this.rendered=s.rendered,this.evalMaxW=s.evalMaxW,this.evalMaxH=s.evalMaxH,this.evalMeta=s.evalMeta,this.x=s.x,this.y=s.y,this.h=s.h,this.w=s.w,this.initialW=s.initialW,this.initialH=s.initialH,this.maxResH=s.maxResH,this.maxResW=s.maxResW,this.minW=s.minW,this.minH=s.minH,this.maxH=s.maxH,this.metaH=s.metaH,this.aspect=s.aspect,this.cssW=s.cssW,this.cssH=s.cssH,this.cssMinW=s.cssMinW,this.cssMinH=s.cssMinH,this.cssMaxW=s.cssMaxW,this.cssMaxH=s.cssMaxH,this.hasH=s.hasH,this.hasMinW=s.hasMinW,this.hasMinH=s.hasMinH,this.hasMaxW=s.hasMaxW,this.hasMaxH=s.hasMaxH,this.scalable=s.scalable,this.scalableMinW=s.scalableMinW,this.scalableMaxW=s.scalableMaxW,this.cssValH=s.cssValH,this.cssValMinW=s.cssValMinW,this.cssValMinH=s.cssValMinH,this.cssValMaxW=s.cssValMaxW,this.cssValMaxH=s.cssValMaxH},CactusBrick.prototype.getCSS=function(){this.cssW=this.DOM.style.width,this.cssH=this.DOM.style.height,this.cssMinW=this.DOM.style.minWidth,this.cssMinH=this.DOM.style.minHeight,this.cssMaxW=this.DOM.style.maxWidth,this.cssMaxH=this.DOM.style.maxHeight,this.scalable=-1===this.cssW.indexOf("%"),this.hasH="0px"!=this.cssH&&-1!==this.cssH.indexOf("px"),this.hasMinW=""!==this.cssMinW,this.hasMinH="0px"!=this.cssMinH&&-1!==this.cssMinH.indexOf("px"),this.hasMaxW=""!==this.cssMaxW,this.hasMaxH="0px"!=this.cssMaxH&&-1!==this.cssMaxH.indexOf("px"),this.scalableMinW=this.hasMinW&&-1!==this.cssMinW.indexOf("%"),this.scalableMaxW=this.hasMaxW&&-1!==this.cssMaxW.indexOf("%")},CactusBrick.prototype.updateSizing=function(s){function i(s){var i=parseFloat(s);return jQuery.isNumeric(i)?i:0}this.rendered=!1,this.cssValMinW=this.scalableMinW?s/100*i(this.cssMinW):this.hasMinW?Math.min(i(this.cssMinW),s):0,this.hasH&&(this.cssValH=i(this.cssH)),this.cssValMinH=this.hasMinH?i(this.cssMinH):0,this.cssValMaxW=this.scalableMaxW?s/100*i(this.cssMaxW):this.hasMaxW?i(this.cssMaxW):0,this.cssValMaxH=this.hasMaxH?i(this.cssMaxH):0,this.scalable?(this.w=this.initialW,this.maxW=this.hasMaxW?this.cssValMaxW:0==this.maxResW?this.initialW:this.maxResW,this.minW=this.hasMinW?Math.max(this.w*this.tolerance,this.cssValMinW):this.w*this.tolerance,this.w>this.maxW&&(this.w=this.maxW),this.w<this.minW&&(this.w=this.minW),this.maxH=this.hasH&&this.hasMaxH?Math.min(this.cssValH,this.cssValMaxH,this.maxW*this.aspect):this.hasMaxH?Math.min(this.initialH,this.cssValMaxH,this.maxW*this.aspect):this.hasH?this.cssValH:this.maxW*this.aspect,this.minH=this.hasMinH?Math.max(this.minW*this.aspect*this.tolerance,this.cssValMinH):this.minW*this.tolerance,this.minH>this.maxH&&(this.maxH=this.minH),this.evalMaxW=this.w,this.evalMaxH=this.initialH,this.h=this.w*this.aspect,this.h>this.maxH&&(this.h=this.maxH),this.h<this.minH&&(this.h=this.minH)):(this.w=s*i(this.cssW)/100,this.maxW=this.hasMaxW?this.cssValMaxW:this.w,this.minW=this.hasMinW?this.cssValMinW:this.w,this.w>this.maxW&&(this.w=this.maxW),this.w<this.minW&&(this.w=this.minW),this.maxH=this.hasH&&this.hasMaxH?Math.min(this.cssValH,this.cssValMaxH):this.hasMaxH?Math.min(this.maxResH,this.cssValMaxH):this.hasH?this.cssValH:this.maxResH,this.minH=this.hasMinH?Math.min(this.initialH,this.cssValMinH):this.w*this.aspect,this.minH>this.maxH&&(this.maxH=this.minH),this.h=this.w*this.aspect,this.h>this.maxH&&(this.h=this.maxH),this.h<this.minH&&(this.h=this.minH)),this.metaH=this.evalMeta?jQuery(this.meta).outerHeight():0,this.h=Math.ceil(this.h),this.w=Math.ceil(this.w),this.maxW=Math.ceil(this.maxW),this.minW=Math.ceil(this.minW),this.maxH=Math.ceil(this.maxH),this.minH=Math.ceil(this.minH),this.DOM.setAttribute("maxH",this.maxH),this.DOM.setAttribute("minH",this.minH),this.DOM.setAttribute("maxW",this.maxW),this.DOM.setAttribute("minW",this.minW),this.DOM.setAttribute("w",this.w),this.DOM.setAttribute("h",this.h),this.DOM.setAttribute("aspect",this.aspect),this.DOM.setAttribute("initH",this.initialH),this.DOM.setAttribute("initW",this.initialW),this.DOM.setAttribute("metaH",this.metaH)},CactusBrick.prototype.updateWidth=function(s){this.updateSizing(s)},CactusBrick.prototype.intersects=function(s){return s.scalable?this.scalableIntersect(s):this.nonScalableIntersect(s)},CactusBrick.prototype.scalableIntersect=function(s){var i=this.y,t=s.y,h=this.x,a=s.x,e=h+this.w,n=a+Math.max(s.initialW,s.minW),c=i+this.h+this.metaH,x=t+s.maxH+s.metaH;if(h>=n)return!1;if(h>=a+s.minW&&h>a&&(t>i&&c>t||x>i&&c>x))return s.w=Math.min(Math.max(h-a,s.minW),s.evalMaxW),s.evalMaxW=s.w,!1;if(a>=e)return!1;if(i>=x)return!1;if(i>=t+s.minH&&i>t&&(a>h&&e>a||n>h&&e>n))return s.h=Math.min(Math.max(i-t,s.minH),s.evalMaxH),s.evalMaxH=s.h,!1;if(t>=c)return!1;var M=Math.max(s.initialW,s.minW);return s.w=M,s.evalMaxW=M,M=Math.max(s.maxH,s.minH),s.h=M,s.evalMaxH=M,s.x=e,!0},CactusBrick.prototype.nonScalableIntersect=function(s){var i=this.y,t=s.y,h=this.x,a=s.x,e=h+this.w,n=a+s.w,c=i+this.h+this.metaH,x=t+s.h+s.metaH;return h>=n||a>=e?!1:i>=x||t>=c?!1:(s.x=e,!0)},CactusBrick.prototype.update=function(){jQuery(this.DOM).css(this.scalable?{top:this.y+"px",left:this.x+"px",height:this.h+"px",width:this.w+"px",minWidth:this.minW+"px",maxWidth:this.maxW+"px",minHeight:this.minH+"px",maxHeight:this.maxH+"px",visibility:"visible"}:{top:this.y+"px",left:this.x+"px",height:this.h+"px",width:this.w+"px",minWidth:this.minW+"px",maxWidth:this.maxW+"px",minHeight:this.minH+"px",maxHeight:this.maxH+"px",visibility:"visible"}),this.rendered=!0},CactusBrick.prototype.removeFromFlow=function(){this.rendered=!1}; -
cactus-masonry-plus/trunk/cactusMasonry.php
r1443257 r1443309 2 2 /** 3 3 * @package Cactus Masonry Plus 4 * @version 0.0.4. 04 * @version 0.0.4.1 5 5 */ 6 6 /* … … 8 8 * Plugin URI: cactus.cloud 9 9 * Description: A highly customizable gallery of post thumbnails. 10 * Version: 0.0.4. 010 * Version: 0.0.4.1 11 11 * Author: cactus.cloud 12 12 * Author URI: http://cactus.cloud/masonryplus … … 29 29 */ 30 30 31 32 33 31 class cactus_masonry_plus { 34 32 35 33 private static $a = null; 36 private static $VERSION = "0.0.4. 0";34 private static $VERSION = "0.0.4.1"; 37 35 38 36 static public function init() { … … 56 54 $newlink = "<a href='https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=forum%40cactus%2ecloud&lc=AU&item_name=cactus%2ecloud&item_number=masonry¤cy_code=AUD&'>Donate</a>"; 57 55 array_unshift($links, $newlink); 58 $newlink = "<a href='http://cactus.cloud/masonryplus' target='_blank'>Documentation</a>"; 56 $newlink = "<a href='http://cactus.cloud/masonryplus' target='_blank'>Instructions</a>"; 57 array_unshift($links, $newlink); 58 $newlink = "<a href='http://cactus.cloud/support' target='_blank'>Help & Support</a>"; 59 59 array_unshift($links, $newlink); 60 60 return $links; -
cactus-masonry-plus/trunk/cactusMasonryPlus.js
r1443257 r1443309 150 150 } else innerArgs.backgroundImage = "url('" + this.img + "')"; 151 151 152 if(this.url != "") i.innerHTML = "<a class=\"postLink\" href=\"" + this.url + "\"></a>"; 153 152 154 jQuery(i).css(innerArgs); 153 155 154 156 var meta = ""; 155 157 if(this.title != "") meta += "<div class=\"title\">" + this.title + "</div>"; … … 161 163 if(this.date != "") meta += "<div class=\"date\">" + this.date + "</div>"; 162 164 163 if(this.url != "") meta += "<a class=\"postLink\" href=\"" + this.url + "\"></a>";164 165 165 if(this.category != "") meta += "<div class=\"category\">" + this.category + "</div>"; 166 166 167 if(meta != "") i.innerHTML = "<div class=\"meta\">" + meta + "</div>";167 if(meta != "") i.innerHTML += "<div class=\"meta\">" + meta + "</div>"; 168 168 d.appendChild(i); 169 169 -
cactus-masonry-plus/trunk/cactusMasonryPlus.min.js
r1443257 r1443309 1 1 /*!@preserve Copyright 2016 cactus.cloud - Licensed under GNU AGPLv3. See <license.txt> or <http://www.gnu.org/licenses/>.*/ 2 function CactusMasonryPlus(){this.brickH,this.brickW,this.brickMinW,this.brickMinH,this.brickMaxW,this.brickMaxH,this.defaultColor,this.gallery,this.margin,this.tolerance,this.lightbox,this.queue,this.infiniteScroll=!1,this.lazyLoad=!0,this.evalMeta}function CMBrick(){}function CactusMasonryBrick(){this.url="",this.lazyLoad=!1,this.authorUrl="",this.img="",this.w="",this.h="",this.aspect="",this.minW="",this.minH="",this.maxW="",this.maxH="",this.color,this.margin,this.title="",this.author="",this.date="",this.category=""}CactusMasonryPlus.prototype.init=function(i){this.gallery=new CactusGallery,this.gallery.infiniteScroll=this.infiniteScroll,this.gallery.lazyLoad=this.lazyLoad,this.gallery.evalMeta=this.evalMeta;var t=i.children[0],a=t.children[0];this.gallery.init(t,a,2*this.margin,parseFloat(this.tolerance)),a.style.margin=-this.margin+"px",this.queue=new Array},CactusMasonryPlus.prototype.addBrick=function(i){i.margin=this.margin,i.color=this.defaultColor,i.lazyLoad=this.lazyLoad;var t=i.w,a=i.h;"auto"!=this.brickW&&(i.w=this.brickW),"auto"!=this.brickH&&(i.h=this.brickH),"auto"!=this.brickMinW&&(i.minW=this.brickMinW),"auto"!=this.brickMinH&&(i.minH=this.brickMinH),"auto"!=this.brickMaxW&&(i.maxW=this.brickMaxW),"auto"!=this.brickMaxH&&(i.maxH=this.brickMaxH),this.gallery.addBrick(i.build(),t,a)},CMBrick.prototype.init=function(i){this.brick=i,this.img=new Image},CactusMasonryPlus.prototype.queueBrick=function(i){var t=new CMBrick;t.init(i),this.queue.push(t),this.triggerQueue()},CactusMasonryPlus.prototype.triggerQueue=function(){if(this.queue.length>0){var i=this.queue[0];""!=i.brick.img?(i.img.onload=this.loadHandler.bind(this),i.img.src=i.brick.img):this.loadHandler()}},CactusMasonryPlus.prototype.loadHandler=function(){var i=this.queue[0].brick;this.queue.shift(),this.addBrick(i),this.triggerQueue()},CactusMasonryPlus.prototype.destroy=function(){this.queue.length=0,this.gallery.destroy()},CactusMasonryBrick.prototype.build=function(){var i=document.createElement("div");i.className="brick",jQuery(i).css({width:this.w,height:this.h,minWidth:this.minW,minHeight:this.minH,maxWidth:this.maxW,maxHeight:this.maxH});var t=document.createElement("div");t.className="inner";var a={top:this.margin+"px",left:this.margin+"px",right:this.margin+"px",bottom:this.margin+"px"};i.loadPending=!1,""==this.img||null==this.img||"undefined"==typeof this.img?a.backgroundColor=this.generateColor():this.lazyLoad?(i.loadPending=!0,t.dataSource=this.img,i.setAttribute("source",t.dataSource),a.opacity=0):a.backgroundImage="url('"+this.img+"')", jQuery(t).css(a);var r="";return""!=this.title&&(r+='<div class="title">'+this.title+"</div>"),""!=this.author&&(r+='<div class="author">',r+=""!=this.authorUrl?'<a href="'+this.authorUrl+'">'+this.author+"</a></div>":this.author+"</div>"),""!=this.date&&(r+='<div class="date">'+this.date+"</div>"),""!=this.url&&(r+='<a class="postLink" href="'+this.url+'"></a>'),""!=this.category&&(r+='<div class="category">'+this.category+"</div>"),""!=r&&(t.innerHTML='<div class="meta">'+r+"</div>"),i.appendChild(t),i},CactusMasonryBrick.prototype.generateColor=function(){if("pastel"===this.color){var i=Math.floor((255*Math.random()+255)/2),t=Math.floor((255*Math.random()+255)/2),a=Math.floor((255*Math.random()+255)/2);return"rgb("+i+", "+t+", "+a+")"}if("random"===this.color){var i=Math.floor(255*Math.random()),t=Math.floor(255*Math.random()),a=Math.floor(255*Math.random());return"rgb("+i+", "+t+", "+a+")"}return this.color};2 function CactusMasonryPlus(){this.brickH,this.brickW,this.brickMinW,this.brickMinH,this.brickMaxW,this.brickMaxH,this.defaultColor,this.gallery,this.margin,this.tolerance,this.lightbox,this.queue,this.infiniteScroll=!1,this.lazyLoad=!0,this.evalMeta}function CMBrick(){}function CactusMasonryBrick(){this.url="",this.lazyLoad=!1,this.authorUrl="",this.img="",this.w="",this.h="",this.aspect="",this.minW="",this.minH="",this.maxW="",this.maxH="",this.color,this.margin,this.title="",this.author="",this.date="",this.category=""}CactusMasonryPlus.prototype.init=function(i){this.gallery=new CactusGallery,this.gallery.infiniteScroll=this.infiniteScroll,this.gallery.lazyLoad=this.lazyLoad,this.gallery.evalMeta=this.evalMeta;var t=i.children[0],a=t.children[0];this.gallery.init(t,a,2*this.margin,parseFloat(this.tolerance)),a.style.margin=-this.margin+"px",this.queue=new Array},CactusMasonryPlus.prototype.addBrick=function(i){i.margin=this.margin,i.color=this.defaultColor,i.lazyLoad=this.lazyLoad;var t=i.w,a=i.h;"auto"!=this.brickW&&(i.w=this.brickW),"auto"!=this.brickH&&(i.h=this.brickH),"auto"!=this.brickMinW&&(i.minW=this.brickMinW),"auto"!=this.brickMinH&&(i.minH=this.brickMinH),"auto"!=this.brickMaxW&&(i.maxW=this.brickMaxW),"auto"!=this.brickMaxH&&(i.maxH=this.brickMaxH),this.gallery.addBrick(i.build(),t,a)},CMBrick.prototype.init=function(i){this.brick=i,this.img=new Image},CactusMasonryPlus.prototype.queueBrick=function(i){var t=new CMBrick;t.init(i),this.queue.push(t),this.triggerQueue()},CactusMasonryPlus.prototype.triggerQueue=function(){if(this.queue.length>0){var i=this.queue[0];""!=i.brick.img?(i.img.onload=this.loadHandler.bind(this),i.img.src=i.brick.img):this.loadHandler()}},CactusMasonryPlus.prototype.loadHandler=function(){var i=this.queue[0].brick;this.queue.shift(),this.addBrick(i),this.triggerQueue()},CactusMasonryPlus.prototype.destroy=function(){this.queue.length=0,this.gallery.destroy()},CactusMasonryBrick.prototype.build=function(){var i=document.createElement("div");i.className="brick",jQuery(i).css({width:this.w,height:this.h,minWidth:this.minW,minHeight:this.minH,maxWidth:this.maxW,maxHeight:this.maxH});var t=document.createElement("div");t.className="inner";var a={top:this.margin+"px",left:this.margin+"px",right:this.margin+"px",bottom:this.margin+"px"};i.loadPending=!1,""==this.img||null==this.img||"undefined"==typeof this.img?a.backgroundColor=this.generateColor():this.lazyLoad?(i.loadPending=!0,t.dataSource=this.img,i.setAttribute("source",t.dataSource),a.opacity=0):a.backgroundImage="url('"+this.img+"')",""!=this.url&&(t.innerHTML='<a class="postLink" href="'+this.url+'"></a>'),jQuery(t).css(a);var r="";return""!=this.title&&(r+='<div class="title">'+this.title+"</div>"),""!=this.author&&(r+='<div class="author">',r+=""!=this.authorUrl?'<a href="'+this.authorUrl+'">'+this.author+"</a></div>":this.author+"</div>"),""!=this.date&&(r+='<div class="date">'+this.date+"</div>"),""!=this.category&&(r+='<div class="category">'+this.category+"</div>"),""!=r&&(t.innerHTML+='<div class="meta">'+r+"</div>"),i.appendChild(t),i},CactusMasonryBrick.prototype.generateColor=function(){if("pastel"===this.color){var i=Math.floor((255*Math.random()+255)/2),t=Math.floor((255*Math.random()+255)/2),a=Math.floor((255*Math.random()+255)/2);return"rgb("+i+", "+t+", "+a+")"}if("random"===this.color){var i=Math.floor(255*Math.random()),t=Math.floor(255*Math.random()),a=Math.floor(255*Math.random());return"rgb("+i+", "+t+", "+a+")"}return this.color}; -
cactus-masonry-plus/trunk/readme.txt
r1443257 r1443309 5 5 Requires at least: 4.4.2 6 6 Tested up to: 4.5.3 7 Stable tag: 0.0.4. 07 Stable tag: 0.0.4.1 8 8 License: GNU AGPLv3 9 9 License URI: http://cactus.cloud/licenses/agpl-3.0.txt … … 13 13 == Description == 14 14 = What is Cactus Masonry Plus = 15 Cactus Masonry Plus is an all-new upgraded version of Cactus Masonry, rebuilt completely from scratch.15 Cactus Masonry Plus allows you to build a responsive, efficient, and very highly customizable gallery on your WordPress website. With this plugin you can either build a gallery of your post thumbnails or represent a WordPress gallery from a given post using our masonry layout technology. 16 16 17 = What does it do = 18 Cactus Masonry Plus is primarily designed to take your pages and posts, and turn them into a masonry styled gallery. The plugin will automatically use your featured images to create a flexible and efficient masonry layout. 17 This plugin is designed to be lightweight, so it doesn’t unnecessarily slow down your site. As a result, Cactus Masonry Plus is shortcode powered, which means that no inbuilt design menu is available. Instead, we have provided an interactive [Shortcode Builder](cactus.cloud/masonryplus), hosted on our website. So, now we’re slowing down our site, not yours. 19 18 20 In addition, Cactus Masonry Plus can search your posts for WordPress galleries, and display them. 19 = Getting Started = 20 Cactus Masonry Plus is powered by shortcodes. Shortcodes are lines of text enclosed within square brackets. Within these brackets, you provide instructions on how the plugin should run. As this can be quite complicated, we have provided a [Shortcode Builder](cactus.cloud/masonryplus) to help you generate the shortcode you need, without any of the hard work. 21 21 22 You can filter which posts you want to include in your search by ID, category, tag, and more.22 Simply visit our [Shortcode Builder](cactus.cloud/masonryplus), select the options you want, preview the result, and copy the shortcode back onto your website. You can place your shortcode within any post, page, or anywhere else your theme allows. When you preview the page, you should see a working masonry gallery. 23 23 24 = How does Cactus Masonry Plus differ from the original=25 Cactus Masonry Plus delivers a huge performance boost over the original Cactus Masonry. The Plus version only includes libraries and scripts written in-house, thus avoiding unneeded, redundant, unmodifiable outside code. The result is a compact, simple, high performance plugin designed to do just one thing - create awesome galleries.24 = Getting Help = 25 Now, we all run into problems every now and again. You may find a bug in the plugin, have a feature request, or simply get stuck on how to set things up. If you do, check out our [Support Forum](cactus.cloud/support). Here, you can get all the help you need to build a responsive masonry gallery for your website. 26 26 27 = What does it cost?=28 Cactus Masonry Plus is licensed for free use under GNU AGPLv3 terms.27 = Pricing = 28 It’s free! Although, if you do like the product, and feel that it is worth it, any [donations](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=forum%40cactus%2ecloud&lc=AU&item_name=cactus%2ecloud&item_number=masonry¤cy_code=AUD&) would be greatly appreciated… no pressure though. 29 29 30 = Can I see it in action? =31 You sure can! Check out our [documentation site](cactus.cloud/masonryplus) to see the plugin work.32 33 = Shortcode is just the worst. I don't know the parameters! =34 We completely understand. Sometimes you get a shortcode driven plugin, and it can be a real pain, because you just don't know what the author wants you to write.35 36 However, shortcode can be really powerful too. That's why we (and so many other authors) use it.37 38 To make the process easier, we have built an interactive [Shortcode Builder](cactus.cloud/masonryplus). With the builder, you can select the settings you want, see a preview of what it gallery will look like, and simply copy and paste the generated shortcode into your site. We aim to make things as easy as possible. And if you're in doubt, just follow the links on our site to the support section, and we'll help you out!39 40 = Are any features missing from this gallery verses the original =41 Yes, currently Cactus Masonry Plus doesn't have an inbuilt lightbox - but this will change soon. Cactus Masonry Plus also adds a whole bunch of new features that are not included in the original. Check out the website for a side-by-side comparison.42 43 On a more serious note, we also have a [Support Forum](cactus.cloud/support) where you can ask for help and suggest new features. You will be in direct contact with our extensive development team (uh… just me I guess…), so any ideas, issues, and problems, will be dealt with by those who know the most about the plugin.44 30 45 31 == Changelog == 32 = 0.0.4.1 = 33 * Fixed a bug that sometimes causes one brick to flow over another brick 34 * Fixed a bug where the post data box would appear even when it had no content 35 * Fixed a bug that caused the post linking behaviour to fail or work unpredictably 36 * Updated the readme 37 * Added some screenshots 38 46 39 = 0.0.4.0 = 47 40 * Fixed numerous sizing and spacing bugs. -
cactus-masonry-plus/trunk/style.css
r1443257 r1443309 1 .cactusMasonry{overflow:hidden}.cactusMasonry .galleryOuter{width:100%;text-align:center}.cactusMasonry .gallery{position:relative;display:inline-block;width:100%}.cactusMasonry .gallery .brick{position:absolute;box-sizing:border-box}.cactusMasonry .gallery .inner{position:relative;position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-repeat:no-repeat;background-position:center}.cactusMasonry .gallery .author a{position:relative;z-index: 2}.cactusMasonry .gallery .postLink{position:absolute;top:0;left:0;right:0;bottom:0}.cactusMasonry .gallery.c1 .meta{background-color:rgba(0,0,0,0.5);position:absolute;top:0;left:0;right:0;bottom:0;display:table-cell;text-align:center;vertical-align:middle;opacity:0;-webkit-transition:opacity 250ms;-moz-transition:opacity 250ms;-ms-transition:opacity 250ms;-o-transition:opacity 250ms;transition:opacity 250ms;color:#FFF}.cactusMasonry .gallery.c1 .inner{-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-ms-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.cactusMasonry .gallery.c1 .inner:hover .meta{opacity:1}.cactusMasonry .gallery.c1 .title{position:absolute;top:50%;left:0;right:0;padding:20px 10px;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-o-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-filter:blur(0) !important;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-font-smoothing:antialiased !important}.cactusMasonry .gallery.c1 .author{position:absolute;bottom:5px;left:10px}.cactusMasonry .gallery.c1 .date{position:absolute;bottom:5px;right:10px}.cactusMasonry .gallery.c1 .category{padding:5px 0 0 10px;text-align:left}.cactusMasonry .gallery.c1 .category span+span{padding-left:10px}.cactusMasonry .gallery.metabelow .meta{position:absolute;top:100%;left:0;right:0;background-color:grey;padding:10px 10px;color:#FFF;overflow:hidden}.cactusMasonry .gallery.metabelow .meta a{color:#FFF}.cactusMasonry .gallery.metabelow .title{text-align:left;padding:0 0 10px 0}.cactusMasonry .gallery.metabelow .inner{-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-ms-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.cactusMasonry .gallery.metabelow .author{float:left}.cactusMasonry .gallery.metabelow .date{float:right}.cactusMasonry .gallery.metabelow .category{text-align:right;clear:both}.cactusMasonry .gallery.metabelow .category span+span{margin-left:10px}.cactusMasonry .gallery.metabelow .category span{display:inline-block;margin-top:10px;padding:4px 8px;background-color:#777}.cactusMasonry .pages{display:block;width:100%;text-align:center;margin:20px 0 20px 0}.cactusMasonry .pages a{display:inline-block;text-decoration:none;border:none;padding:2px;cursor:pointer}.cactusMasonry .pages span{pointer-events:none}1 .cactusMasonry{overflow:hidden}.cactusMasonry .galleryOuter{width:100%;text-align:center}.cactusMasonry .gallery{position:relative;display:inline-block;width:100%}.cactusMasonry .gallery .brick{position:absolute;box-sizing:border-box}.cactusMasonry .gallery .inner{position:relative;position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-repeat:no-repeat;background-position:center}.cactusMasonry .gallery .author a{position:relative;z-index:3}.cactusMasonry .gallery .postLink{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2}.cactusMasonry .gallery.c1 .meta{background-color:rgba(0,0,0,0.5);position:absolute;top:0;left:0;right:0;bottom:0;display:table-cell;text-align:center;vertical-align:middle;opacity:0;-webkit-transition:opacity 250ms;-moz-transition:opacity 250ms;-ms-transition:opacity 250ms;-o-transition:opacity 250ms;transition:opacity 250ms;color:#FFF}.cactusMasonry .gallery.c1 .inner{-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-ms-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.cactusMasonry .gallery.c1 .inner:hover .meta{opacity:1}.cactusMasonry .gallery.c1 .title{position:absolute;top:50%;left:0;right:0;padding:20px 10px;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-o-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-filter:blur(0) !important;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-font-smoothing:antialiased !important}.cactusMasonry .gallery.c1 .author{position:absolute;bottom:5px;left:10px}.cactusMasonry .gallery.c1 .date{position:absolute;bottom:5px;right:10px}.cactusMasonry .gallery.c1 .category{padding:5px 0 0 10px;text-align:left}.cactusMasonry .gallery.c1 .category span+span{padding-left:10px}.cactusMasonry .gallery.metabelow .meta{position:absolute;top:100%;left:0;right:0;background-color:grey;padding:10px 10px;color:#FFF;overflow:hidden}.cactusMasonry .gallery.metabelow .meta a{color:#FFF}.cactusMasonry .gallery.metabelow .title{text-align:left;padding:0 0 10px 0}.cactusMasonry .gallery.metabelow .inner{-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-ms-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.cactusMasonry .gallery.metabelow .author{float:left}.cactusMasonry .gallery.metabelow .date{float:right}.cactusMasonry .gallery.metabelow .category{text-align:right;clear:both}.cactusMasonry .gallery.metabelow .category span+span{margin-left:10px}.cactusMasonry .gallery.metabelow .category span{display:inline-block;margin-top:10px;padding:4px 8px;background-color:#777}.cactusMasonry .pages{display:block;width:100%;text-align:center;margin:20px 0 20px 0}.cactusMasonry .pages a{display:inline-block;text-decoration:none;border:none;padding:2px;cursor:pointer}.cactusMasonry .pages span{pointer-events:none} -
cactus-masonry-plus/trunk/style.scss
r1443257 r1443309 61 61 .author a { 62 62 position: relative; 63 z-index: 2;63 z-index: 3; 64 64 } 65 65 .postLink { 66 66 @include cover(); 67 z-index: 2; 67 68 } 68 69 //Theme1
Note: See TracChangeset
for help on using the changeset viewer.