From 89b3eb89477ca6e28f85e58d9d130851794a5c2b Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Mon, 2 Apr 2012 23:22:18 +0200 Subject: [PATCH 1/8] Moved snippet properties to property set. Added Lexicons (en, fr). --- _build/build.transport.php | 15 +- _build/data/transport.snippets.php | 24 ++- _packages/breadcrumbs-1.1.0-pl.transport.zip | Bin 0 -> 29048 bytes .../snippet.breadcrumbs.properties.php | 149 ++++++++++++++++++ .../breadcrumbs/lexicon/en/default.inc.php | 31 ++++ .../breadcrumbs/lexicon/en/properties.inc.php | 52 ++++++ .../breadcrumbs/lexicon/fr/default.inc.php | 31 ++++ .../breadcrumbs/lexicon/fr/properties.inc.php | 52 ++++++ .../model/breadcrumbs/breadcrumbs.class.php | 111 +------------ 9 files changed, 349 insertions(+), 116 deletions(-) create mode 100644 _packages/breadcrumbs-1.1.0-pl.transport.zip create mode 100644 core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php create mode 100644 core/components/breadcrumbs/lexicon/en/default.inc.php create mode 100644 core/components/breadcrumbs/lexicon/en/properties.inc.php create mode 100644 core/components/breadcrumbs/lexicon/fr/default.inc.php create mode 100644 core/components/breadcrumbs/lexicon/fr/properties.inc.php diff --git a/_build/build.transport.php b/_build/build.transport.php index 90559fb..3d6aa46 100644 --- a/_build/build.transport.php +++ b/_build/build.transport.php @@ -65,11 +65,12 @@ $modx= new modX(); $modx->initialize('mgr'); $modx->setLogLevel(xPDO::LOG_LEVEL_INFO); -if (!XPDO_CLI_MODE) { echo '
'; }
-$modx->setLogTarget('ECHO');
+$modx->setLogTarget(XPDO_CLI_MODE ? 'ECHO' : 'HTML');
+echo 'Packing '.PKG_NAME_LOWER.'-'.PKG_VERSION.'-'.PKG_RELEASE.'
'; flush();
 
 $modx->loadClass('transport.modPackageBuilder','',false, true);
 $builder = new modPackageBuilder($modx);
+$builder->directory = dirname(dirname(__FILE__)).'/_packages/';
 $builder->createPackage(PKG_NAME_LOWER,PKG_VERSION,PKG_RELEASE);
 $builder->registerNamespace(PKG_NAME_LOWER,false,true,'{core_path}components/'.PKG_NAME_LOWER.'/');
 
@@ -77,13 +78,14 @@
 $category= $modx->newObject('modCategory');
 $category->set('id',1);
 $category->set('category',PKG_NAME);
+$modx->log(modX::LOG_LEVEL_INFO,'Packaged in category.'); flush();
 
 /* add snippets */
 $snippets = include_once $sources['data'].'transport.snippets.php';
 if (is_array($snippets)) {
     $category->addMany($snippets);
-    $modx->log(xPDO::LOG_LEVEL_INFO,'Packaged in '.count($snippets).' Snippets.');
-} else { $modx->log(xPDO::LOG_LEVEL_ERROR,'Adding snippets failed.'); }
+    $modx->log(modX::LOG_LEVEL_INFO,'Packaged in '.count($snippets).' snippets.'); flush();
+} else { $modx->log(modX::LOG_LEVEL_FATAL,'Adding snippets failed.'); }
 
 /* create category vehicle */
 $attr = array(
@@ -99,6 +101,7 @@
         ),
     )
 );
+$modx->log(modX::LOG_LEVEL_INFO, 'Packaging in vehicle...'); flush();
 $vehicle = $builder->createVehicle($category,$attr);
 $vehicle->resolve('file',array(
     'source' => $sources['source_core'],
@@ -111,6 +114,7 @@
 ));*/
 $builder->putVehicle($vehicle);
 
+/* now pack in the license file, readme and setup options */
 $builder->setPackageAttributes(array(
     'license' => file_get_contents($sources['docs'] . 'license.txt'),
     'readme' => file_get_contents($sources['docs'] . 'readme.txt'),
@@ -118,8 +122,11 @@
 ));
 $modx->log(modX::LOG_LEVEL_INFO,'Packaged in package attributes.'); flush();
 
+/* zip up package */
+$modx->log(modX::LOG_LEVEL_INFO,'Packing...'); flush();
 $builder->pack();
 
+/* calculate build time */
 $mtime= microtime();
 $mtime= explode(" ", $mtime);
 $mtime= $mtime[1] + $mtime[0];
diff --git a/_build/data/transport.snippets.php b/_build/data/transport.snippets.php
index 4dc01ad..68deadc 100644
--- a/_build/data/transport.snippets.php
+++ b/_build/data/transport.snippets.php
@@ -8,10 +8,28 @@
 $snippets[0]= $modx->newObject('modSnippet');
 $snippets[0]->fromArray(array(
     'id' => 0,
-    'name' => 'Breadcrumbs',
-    'description' => '',
-    'snippet' => getSnippetContent($sources['source_core'].'/elements/snippets/snippet.breadcrumbs.php'),
+    'name' => PKG_NAME,
+    'description' => 'Creates a highly configurable and styleable breadcrumb navigation trail.',
+    'snippet' => getSnippetContent($sources['snippets'].'snippet.'.PKG_NAME_LOWER.'.php'),
     'properties' => '',
 ),'',true,true);
 
+$snippetProperties = array();
+$props = include $sources['snippets'].'snippet.'.PKG_NAME_LOWER.'.properties.php';
+foreach ($props as $key => $value) {
+    if (is_string($value) || is_int($value)) { $type = 'textfield'; }
+    elseif (is_bool($value)) { $type = 'combo-boolean'; }
+    else { $type = 'textfield'; }
+    $snippetProperties[] = array(
+        'name' => $key,
+        'desc' => PKG_NAME_LOWER.'.prop_desc.'.$key,
+        'type' => $type,
+        'options' => '',
+        'value' => ($value != null) ? $value : '',
+        'lexicon' => PKG_NAME_LOWER.':properties'
+    );
+}
+if (count($snippetProperties) > 0)
+    $snippets[0]->setProperties($snippetProperties);
+
 return $snippets;
\ No newline at end of file
diff --git a/_packages/breadcrumbs-1.1.0-pl.transport.zip b/_packages/breadcrumbs-1.1.0-pl.transport.zip
new file mode 100644
index 0000000000000000000000000000000000000000..9935455b4ef9eccb8b25d3ae8a23e22575aa6751
GIT binary patch
literal 29048
zcmc%wL$EMh(4~nU+qP}nwryMQv2EM7ZQHhO+vxAF!M#<39#-@qBX;cRipa=ZPc8*%
zU=S1l000Ppn65wpU}^uNUQ7T0A0Yq$!vB7a98C>Pj2&HUjhtv1=@{u4XdP_mZ4K=#
z%}kw~=^QK^Mzk%RuqP6J^cwgJg}M-lhzVc_rLdG5dw>)3gIOWx0Vp&ZTxC!?p#|cw
zcGmeM4E=t3r>if4!+2iPRHviC&MzygdGzt#hy3i+uyZyFr;%(Mr)^#$7C%omNfriA
zN2Lu+?ZsLl>fBrFG$$Ywf
z9z0yyxz{}08L;5aAI>?(`|d3KsgkL^(b0Qdt}O6N>6T^LqS2~{@OAKwJVs5y^%dJQ
zTfeaAqRf#seX`Le&7-V$7KKU9tJ>4QOxLnEtiU%w+K9_fmDhiMe^(dPEq3RJy!q73
z>AiXOsP{ZI<+b=`zouaMqi>-Ui+1d;+u)*xz`7({0wh}`1#?9^j={yWIAwR1h9%6X
zcFvDL(R0O~Gr&%^$VSGFI^tH#G)5XR`zzSHl@6H
zop>ggdBQHb+}g|jg|fw^M#O8R+rK|zCT^6PmZBLbrq^Cb_8z|E=SKA3MAojVYa`^M
zWK0Me1~h57vo&Nyya;oSEnLp(f`W)k8YU^kYNe7fzuSCJ{1g?PXFRg>d4`Z$7c$c~
zM8nn81`%7(>Z3#h#&pm*S;(YuAf8mpX1*3@%#eY-T{xV=OAoZNimYHgwxxLlg+S_$
zk!a@}mdMyQI%j0G`0AB3yJ%J~(tu~J&Vy8|n9?DE$dWHP+wNG8EjPGy5rho-`#se>
zZudr=W=ynxj;|Dw&{sotm1+6OO5>&n+jp%9!949MW(x;fZj!cqG&V-~f|;|gdK0@c
zX!DZddWxW!x*9e`*8;#w>;g{0vDfgBt$O>8&sGUlRY%9ctzJxDa
zFOSQ^@eJkkqU
zKQug0)%>g6R1)uoyIIO-M4+-v5+Q%pJb&^2Bak|7`${dITj@2F@;Ys1e$Q@lHlys(
zTF*z=GJH#IQbF3o+0g4X~>n0P`ZO&agFfANwwiuBSG_T
zKS)$Ep|mqQ%IML2+}Ktk;K^Ybb#+g?{x)nUgj
z=f5+~UZg{m3?Y9linePe5R+;s)+WHVIt4NMzh*@-@;-aHP{(LDma!WpMbzoXq*u
zQ9MTa0sB!qJ(U=bP0%SR6L?oS+;0REp}63$?(7@}?QzaK-lD7yzL^M0`u71O+Oc@o
zeno*n6}!qTC-Qs&f6drJwvgs54lW|w+d!L5V?(^~3f`Nl`XJaBQWK4d@mx14OO$*@
zs%bFF)P%)rsNcq|edJp&40E=?`kTW7Bzt5G0!*4NeH>{%2P
zOH6Sm?i{$WKni-^O@z|o7K5}H`W#eQRVubtvoG!1APo_#2GHfN`3FJ2W;dZWfhzrk
z!lZR4e5;7Ah1;DcP^8wyTUj1<$k{@Q2yRuaYR#d57CG8%3?f->^B}#EZ#K6$riUnp
zsMG3oq19B3lBvV}Yk~ytn=5Q#F2iySBbh#x+uVw$sB>@0x2O7EtnqAa#Vu4B6@tp1pt%@LQ#CAl3IgZ3a|^J
zhHR0kV@u$?xd*V@=wnNz$U;LBK3sT#s-Fkd0_Wv=95qq6I+?~%_9P&M54l@3bi0OY
z20Az`|E_^CY|A(m620;`i2c+;6m?kaXsp7K#_u`I^|^
zXN^@w3;^a}nIv+w)te2$6v-y*Ah5WsGI3+2Roc>#amnP7uSZ=B2E{Oihq2t}54Q(D
zCFaikw*h-u-M>XJbp%uAn*|eS1o7Aw;8yzEmv#4;MJ=kv&6PL*N$5~Be#|bYG|)v|
zg0>VncWAP=2exgzIJi>Li8&@w*n^_BV5_V*upyQ~Yc+<+lkaHnLRYYX7rX1EDUk@G
zAnY$NB!=Iq$h#G)lWb1o9x0klEC@+az6UO;b*P!8kwGKEX#BcM@++sO4sOEGyJG2r
z6(&c$iJmav=5b&kGFUCcVOE@mSf%FF%Pe+9e-a7+%2X#K)ZYe$CaYz0E{p&3ExLBg
zlH9$HvQttoycGA2--v;sngKX7q6&WZrs9VHbvQE=>JTNN&1d!CYSKYU`);MXNbo{X
zhqEnqZ9wCe_GE`GfeZGBqUAue1G~(Hu`UTh^b`k^@Y0tH68d3Mc4>bi4>?t&m6M^!tOp1?f
z^004-sT_ol&mYcwbS3VNBVU9yF*x2d<`d38H)oD(
z!9B|S+&rM5=|01C<=hQl=o++~2nfgn+211%I{Hq_`i5qLh_zHtMt~kxW^q&-Eu&*-
z@+Wz{d#;bw$zXs=o0EajLV7TV8*Q(xTLwqdag%|FNGucCY*oLzcL9O&eD)R9N4EYk
zK05hQ16Wbf61U`hPn7ieZ)op`gL69I%ZDaRQ**La
zeKQU7eQbA0OAaerSVE$n(VJcS?##LP=J
z5<|(mD?CvmvN_qjv8S;44NcE~h!1k#HS!%09@7xtE?le1qB5}#m7Sj3&
zo7kU~C3E2-VmqGV7mT&FK_Dr6`@N#8Kqz{W#B!$11MqxQmCUjG=1aL0q&5}u2(7e(
zONw*dE<41rq+^B`xNp~?_&`TSo9lbZ8vcmzDagom2iFI328--;Cs7HEmkkD)GS!{(6
zt^yTU))vH-~UJ*^+E@i~g(jlY5=TPqka)1wlmht(N9F5d0}l~V$-Q;6m48K8*EUsG$P{L%Wv^$6O5T)Pty}%I
z#o*|^A`B|*CYPtUC6u0~0u7maymGr%OQ)02!
zsI>sR$~^rJp`yjBuFI6R3)D;%EMv0mbrjo3j{*T{TG}fP&&`v6Gh*`qdxA86tKOdmaa*0I1)H`&NG1;rNhN$SktD-Lbyeg_}mORwY05uv0qEOj8IxB6Z
z?7Bq_kd(B)*$D(!$j&pRVEv}iHzX%~Z!Zsoh`8634T@B){R;sWU-u>*CPsJ!DPx{h
zHdmk&l7(VlqR`~>djkYOv3-bqE?thrkaerDU$r*Bn~Sil#x2q@Co%;loeo3I&y|Ew
z^YMj|j;DV2H&ydK1!RK)>yrire=fsui7zCEWTP_}j*cf%^Anme^GSU#f~pErvnuzdfHn9-
zEQx?15PgO4q)!-WbLuqAAz&T7?NyoqX0i;+N54Q86Lk`2$Er;_RT8&v{
zSx^3P5hcqNJo3$n@pjStgJWAKXY}vbiBm&Tdot>~m(Uy*U2|J=g+}G?NZ7!QLp_NB
zgu29kpHP~OW^&Y`<0aLtXz}Z<(bk?3(e-wY5q~X>7^il;O=&w{p95Ym%3??!1f~QW
z?rCoJZaPHsyo!uzKp$qc9Hsm>yrRm*v}PIkT2-TuEWt}|h)^#^mv1E&ensKr<_}9r
zLbjL#6)mzBN)I+EZ#b|_Jh4&0E)kp~Ozji0@PdD4+0LsW-+TQ?Grhp+dYFvgH-4==
ze4~xXDJ#;YAK#uQux|Wx9S8_9n#g%zuVXLeW_>#_DjXRBfuG<6e)B;#>3+Jimf^^x
z^A`Hu9Y_IkU%Ua@ji6PoF-@l@7W*D<^{MoUqac!-YvO#vMy#k9kOCD;A~fDUTrxrb
zi7MHVyH%Y_`!d0p=7g4Adsn?PMKY|)CU&V)>?1gvCDy{!Hxwn8Gx~4*RT#_VrCU+Z
zme`7)>{L5Ax18n47`UdW+y6?CR|(uj0QdD)&y6J*a!Z(I{UXt}iZFE<*yj(5v@EQG
z^EnC*Q;+M)^ZtBH9eZ^^!_Xcer0ih$j}2VIX|3N{^B%4oP4
zqB$s36{Q?2QI`D;o}b&d#LFIY&*B`^Qcq6kCV`16{0A
zJ@rujkk*73>x%woqL@F^N0pnosz*;6|o;)Z3
zZ}0L-{%2xLFl<#8thum*K4z1Rt-q4d5AWNB4P)kc$iR_5d!~MCMSaK5z5n#5sw<%P
z$`4Q)+^+|ZXZkr!J}3ce=~X{8-<<1e33@2umkDz=v?#8daOO!a6rX?Qx$I$Q#$Zsm
zkN?2gSCRjjyy?K8Qef=tK=w-a7+;6~~B>4RDBj=pxU>uM)@j?{U434aluw
z%*W4pCU6sxL|5GpmtX0;zvs@*BH$4^ToKrZxgA$$E;Nr&uX>nqY3wWD=*@W)rn76Q
zXn^(nM!xs*!r;-vUDjJ6X+YQy;&rL~#YCtpTKv#J&rQ;OK5@W&F<@)~cgL0KeTw+j
zNdVa*?pNFbo3V+|?Zq^FNK&Y4@a~@4T><)!dfB4-?n~da_p3@7K3)^nzpVvGO3~W<
z&q{`;9f(($3_2J=SVDyT=j(TDpt*>ObiZgvz*AfvA8bwd6Q3vSQgGF65LIJAA5Sv!
zebBb>3xQlW=6OCM+9uxF_Sgl){BH9^(­H$iVZrmWb8!(??$hVi!-YyNV=0K~U}
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�=dGnL#6$q4xi=#z(XSi;1sb}1EnLYhDcxM9TTI`>|dt~Ok@X*ln
zT9(_maX<_GtQLRr_%&IYFVFSS`$&^v>(RZ6_eSqTGjpoKUZSw--jI2FxO>B{Z>(y;
zyN@g(v@1O7V1I@y4iS*HmX^lpZVT_yFYt>eMKzL}7{Dwzn3`?2ad6bL^khu^f4{5}~XX*j!4T
zX|(22j++*?Fe
z?A}8xAyTMB6o8g+u~PY6lfAM;S@y&Z{cBI3Q;Dj|E8%|55M)x@ew5kX*mNn4O7^7F
zn@j66C&av(kYH2&)0u5+FF0(b9@vzyzwsP;!DRLt;t0aT5fbzaH4@f*^@Fe}V=Qf4
z9W9zl3@_0R4}F^l!iVf^xMJR*A84Kn5JVUzzv)YB&3u%tkGA~js8h#$Na6C?3rR8n(wjuggg*VW*TY>R*
zEB<^4)7uZfeSX_F{qvDbzc=@%vVOnX0=}K}^ylXO&LV$*<@sv~yI(vx`2P^kZw2lC
zO7qvG!Cy43EdLPAuN1<+!u&OF?iY*%>)#La-_D}@9rI6#FuyPfx&EJF{;~+ZrN#VC
z{3p-tFJfb%zn}O&ci{fc^(PPIFD^RKf0XM#hSYyY`;(>T7aHf=tnqihHvT7aPs*Tz_&x{NkdO`$xI{>znweu--4UN2R|X?Y|l1`+fZWwBPm%
w5>n@Hfc&>Q`D?d-)j_|y-7)*myZygcMIYY+HUDZG>FvAzmOkkJ>0ej>19~`JVgLXD

literal 0
HcmV?d00001

diff --git a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php
new file mode 100644
index 0000000..3b2a805
--- /dev/null
+++ b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php
@@ -0,0 +1,149 @@
+
+ *
+ * BreadCrumbs is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; either version 2 of the License, or (at your option) any
+ * later version.
+ *
+ * BreadCrumbs 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * BreadCrumbs; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package breadcrumbs
+ */
+/**
+ * @name BreadCrumbs
+ * @version 0.9f
+ * @created 2012-04-02
+ * @since 2009-05-11
+ * @author Jerome Perrin 
+ * @package breadcrumbs
+ *
+ * This snippet was designed to show the path through the various levels of site
+ * structure back to the root. It is NOT necessarily the path the user took to
+ * arrive at a given page.
+ *
+ */
+
+return array(
+
+    /**
+     * Max number of elements to have in a path. 100 is an arbitrary
+     * high number. If you make it smaller, like say 2, but you are 5
+     * levels deep, it will appear as: Home > ... > Level 4 > Level 5 It
+     * should be noted that "Home" and the current page do not count.
+     * Each of these are configured separately.
+     *
+     * @var integer $maxCrumbs
+     */
+    'maxCrumbs' => 100,
+    /**
+     * When your path includes an unpublished folder, setting this to 1
+     * will show all documents in path EXCEPT the unpublished. Example
+     * path (unpublished in caps): home > news > CURRENT > SPORTS >
+     * skiiing > article $pathThruUnPub = true would give you this: home
+     * > news > skiiing > article $pathThruUnPub = false would give you
+     * this: home > skiiing > article (assuming you have home crumb
+     * turned on)
+     *
+     * @var boolean $pathThruUnPub
+     */
+    'pathThruUnPub' => true,
+    /**
+     * Setting this to 1 will hide items in the breadcrumb list that
+     * are set to be hidden in menus.
+     *
+     * @var boolean $respectHidemenu
+     */
+    'respectHidemenu' => true,
+    /**
+     * Would you like your crumb string to start with a link to home?
+     * Some would not because a home link is usually found in the site
+     * logo or elsewhere in the navigation scheme.
+     *
+     * @var boolean $showHomeCrumb
+     */
+    'showHomeCrumb' => true,
+    /**
+     * You can use this to turn off the breadcrumbs on the home page
+     * with 1. grad: actually '1' shows and '0' hides crumbs at
+     * homepage.
+     *
+     * @var boolean $showCrumbsAtHome
+     */
+    'showCrumbsAtHome' => false,
+    /**
+     * Show the current page in path with 1 or not with 0.
+     *
+     * @var boolean $showCurrentCrumb
+     */
+    'showCurrentCrumb' => true,
+    /**
+     * If you want the current page crumb to be a link (to itself) then
+     * set to 1.
+     *
+     * @var boolean $currentAsLink
+     */
+    'currentAsLink' => true,
+    /**
+     * Define what you want between the crumbs.
+     *
+     * @var string $crumbSeparator
+     */
+    'crumbSeparator' => '»',
+    /**
+     * Just in case you want to have a home link, but want to call it
+     * something else.
+     *
+     * @var string $homeCrumbTitle
+     */
+    'homeCrumbTitle' => 'Home',
+    /**
+     * In case you want to have a custom description of the home link.
+     * Defaults to title of home link.
+     *
+     * @var string $homeCrumbDescription
+     */
+    'homeCrumbDescription' => 'Home',
+    /**
+     * To change default page field to be used as a breadcrumb title,
+     * default is pagetitle.
+     *
+     * @var string $titleField
+     */
+    'titleField' => 'pagetitle',
+    /**
+     * To change default page field to be used as a breadcrumb
+     * description, default is description (GA: falls back to pagetitle
+     * if description is empty).
+     *
+     * @var string $descField
+     */
+    'descField' => 'description',
+    /**
+     * The string that will show if the maximum number of breadcrumbs
+     * has been shown.
+     *
+     * @var string $max_delimiter
+     */
+    'maxDelimiter' => '...',
+    'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', + 'bcTplCrumbCurrentLink' => '', + 'bcTplCrumbFirst' => '
  • [[+text]]
  • ', + 'bcTplCrumbHome' => '', + 'bcTplCrumbLast' => '
  • [[+text]]
  • ', + 'bcTplCrumbMax' => '
  • [[+text]]
  • ', + 'bcTplCrumbLink' => '', + 'bcTplCrumbOuter' => '
      [[+text]]
    ', + 'bcTplCrumb' => '
  • [[+text]]
  • ', +); + +?> \ No newline at end of file diff --git a/core/components/breadcrumbs/lexicon/en/default.inc.php b/core/components/breadcrumbs/lexicon/en/default.inc.php new file mode 100644 index 0000000..d72c278 --- /dev/null +++ b/core/components/breadcrumbs/lexicon/en/default.inc.php @@ -0,0 +1,31 @@ + + * + * BreadCrumbs is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) any + * later version. + * + * BreadCrumbs 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with + * BreadCrumbs; if not, write to the Free Software Foundation, Inc., 59 Temple Place, + * Suite 330, Boston, MA 02111-1307 USA + * + * @package breadcrumbs + */ + +/** + * Default English Topic for BreadCrumbs. + * + * @author Jerome Perrin + * @package BreadCrumbs + * @subpackage lexicon + * @language en + */ +$_lang['breadcrumbs'] = 'BreadCrumbs'; diff --git a/core/components/breadcrumbs/lexicon/en/properties.inc.php b/core/components/breadcrumbs/lexicon/en/properties.inc.php new file mode 100644 index 0000000..c0f9c88 --- /dev/null +++ b/core/components/breadcrumbs/lexicon/en/properties.inc.php @@ -0,0 +1,52 @@ + + * + * BreadCrumbs is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) any + * later version. + * + * BreadCrumbs 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with + * BreadCrumbs; if not, write to the Free Software Foundation, Inc., 59 Temple Place, + * Suite 330, Boston, MA 02111-1307 USA + * + * @package breadcrumbs + */ + +/** + * Properties English Topic for breadcrumbs. + * + * @author Jerome Perrin + * @package BreadCrumbs + * @subpackage lexicon + * @language en + */ +$_lang['breadcrumbs.prop_desc.maxCrumbs'] = 'Max number of elements to have in a path. If you make it smaller, like say 2, but you are 5 levels deep, it will appear as: Home > ... > Level 4 > Level 5. "Home" and the current page do not count. Each of these are configured separately.'; +$_lang['breadcrumbs.prop_desc.pathThruUnPub'] = 'When your path includes an unpublished folder, setting this to 1 will show all documents in path EXCEPT the unpublished. Refer to the documentation for more details: http://rtfm.modx.com/display/ADDON/Breadcrumbs'; +$_lang['breadcrumbs.prop_desc.respectHidemenu'] = 'Setting this to 1 will hide items in the breadcrumb list that are set to be hidden in menus.'; +$_lang['breadcrumbs.prop_desc.showHomeCrumb'] = 'Would you like your crumb string to start with a link to home? Some would not because a home link is usually found in the site logo or elsewhere in the navigation scheme.'; +$_lang['breadcrumbs.prop_desc.showCrumbsAtHome'] = 'You can use this to turn off the breadcrumbs on the home page with 1. grad: actually \'1\' shows and \'0\' hides crumbs at homepage'; +$_lang['breadcrumbs.prop_desc.showCurrentCrumb'] = 'Show the current page in path with 1 or not with 0'; +$_lang['breadcrumbs.prop_desc.currentAsLink'] = 'If you want the current page crumb to be a link (to itself) then set to 1.'; +$_lang['breadcrumbs.prop_desc.crumbSeparator'] = 'Define what you want between the crumbs.'; +$_lang['breadcrumbs.prop_desc.homeCrumbTitle'] = 'Just in case you want to have a home link, but want to call it something else.'; +$_lang['breadcrumbs.prop_desc.homeCrumbDescription'] = 'In case you want to have a custom description of the home link. Defaults to title of home link.'; +$_lang['breadcrumbs.prop_desc.titleField'] = 'To change default page field to be used as a breadcrumb title, default is pagetitle.'; +$_lang['breadcrumbs.prop_desc.descField'] = 'To change default page field to be used as a breadcrumb description, default is description (GA: falls back to pagetitle if description is empty).'; +$_lang['breadcrumbs.prop_desc.maxDelimiter'] = 'The string that will show if the maximum number of breadcrumbs has been shown.'; +$_lang['breadcrumbs.prop_desc.bcTplCrumbCurrent'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbCurrentLink'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbFirst'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbHome'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbLast'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbMax'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbLink'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbOuter'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumb'] = ''; diff --git a/core/components/breadcrumbs/lexicon/fr/default.inc.php b/core/components/breadcrumbs/lexicon/fr/default.inc.php new file mode 100644 index 0000000..c0c7656 --- /dev/null +++ b/core/components/breadcrumbs/lexicon/fr/default.inc.php @@ -0,0 +1,31 @@ + + * + * BreadCrumbs is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) any + * later version. + * + * BreadCrumbs 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with + * BreadCrumbs; if not, write to the Free Software Foundation, Inc., 59 Temple Place, + * Suite 330, Boston, MA 02111-1307 USA + * + * @package breadcrumbs + */ + +/** + * Default French Topic for BreadCrumbs. + * + * @author Jerome Perrin + * @package BreadCrumbs + * @subpackage lexicon + * @language fr + */ +$_lang['breadcrumbs'] = 'BreadCrumbs'; diff --git a/core/components/breadcrumbs/lexicon/fr/properties.inc.php b/core/components/breadcrumbs/lexicon/fr/properties.inc.php new file mode 100644 index 0000000..5c52ecc --- /dev/null +++ b/core/components/breadcrumbs/lexicon/fr/properties.inc.php @@ -0,0 +1,52 @@ + + * + * BreadCrumbs is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) any + * later version. + * + * BreadCrumbs 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with + * BreadCrumbs; if not, write to the Free Software Foundation, Inc., 59 Temple Place, + * Suite 330, Boston, MA 02111-1307 USA + * + * @package breadcrumbs + */ + +/** + * Properties French Topic for breadcrumbs. + * + * @author Jerome Perrin + * @package BreadCrumbs + * @subpackage lexicon + * @language fr + */ +$_lang['breadcrumbs.prop_desc.maxCrumbs'] = 'Nombre maximun de liens dans le fil d\'ariane. Si vous réduisez le nombre à, disons 5, et que la page vue est à 5 niveaux de profondeur, le fil d\'ariane sera : Accueil > ... > Niveau 4 > Niveau 5. "Accueil" et la page courante ne sont pas comptés et sont configurés séparément..'; +$_lang['breadcrumbs.prop_desc.pathThruUnPub'] = 'Quand le chemin contient un dossier non-publié, mettre cette propriété à 1 montrera toutes les ressources du chemin SAUF celles qui ne sont pas publiés. Voir la documentation pour plus de détails : http://rtfm.modx.com/display/ADDON/Breadcrumbs'; +$_lang['breadcrumbs.prop_desc.respectHidemenu'] = 'Masquer les ressources qui sont masqués dans les menu?'; +$_lang['breadcrumbs.prop_desc.showHomeCrumb'] = 'Afficher la page d\'accueil dans le fil d\'ariane ? Ceci n\'est pas toujours nécessaire car un lien vers l\'accueil est habituellement disponible dans la navigation ou en cliquant sur le logo du site.'; +$_lang['breadcrumbs.prop_desc.showCrumbsAtHome'] = 'Montrer le fil d\'ariane sur la page d\'accueil ?'; +$_lang['breadcrumbs.prop_desc.showCurrentCrumb'] = 'Inclure la page courante ?'; +$_lang['breadcrumbs.prop_desc.currentAsLink'] = 'Nom de la page courante cliquable ?'; +$_lang['breadcrumbs.prop_desc.crumbSeparator'] = 'Séparateur'; +$_lang['breadcrumbs.prop_desc.homeCrumbTitle'] = 'Nom de la page d\'accueil dans le fil d\'ariane.'; +$_lang['breadcrumbs.prop_desc.homeCrumbDescription'] = 'Description du lien de la page d\'accueil.'; +$_lang['breadcrumbs.prop_desc.titleField'] = 'Champs de la ressource à utiliser pour le titre des liens. Valeur par défaut : pagetitle.'; +$_lang['breadcrumbs.prop_desc.descField'] = 'Champs de la ressource à utiliser pour la description des liens. Valeur par défaut : description (si vide, pagetitle sera utilisé).'; +$_lang['breadcrumbs.prop_desc.maxDelimiter'] = 'Le caractère à utiliser si le nombre maximum de liens est atteint.'; +$_lang['breadcrumbs.prop_desc.bcTplCrumbCurrent'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbCurrentLink'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbFirst'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbHome'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbLast'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbMax'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbLink'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbOuter'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumb'] = ''; diff --git a/core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php b/core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php index 8ec1b92..eadcd21 100644 --- a/core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php +++ b/core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php @@ -41,116 +41,9 @@ class BreadCrumbs { function __construct(modX &$modx,array $config = array()) { $this->modx =& $modx; + $basePath = $this->modx->getOption('breadcrumbs.core_path',$config,$this->modx->getOption('core_path').'components/breadcrumbs/'); $this->config = array_merge(array( - /** - * Max number of elements to have in a path. 100 is an arbitrary - * high number. If you make it smaller, like say 2, but you are 5 - * levels deep, it will appear as: Home > ... > Level 4 > Level 5 It - * should be noted that "Home" and the current page do not count. - * Each of these are configured separately. - * - * @var integer $maxCrumbs - */ - 'maxCrumbs' => 100, - /** - * When your path includes an unpublished folder, setting this to 1 - * will show all documents in path EXCEPT the unpublished. Example - * path (unpublished in caps): home > news > CURRENT > SPORTS > - * skiiing > article $pathThruUnPub = true would give you this: home - * > news > skiiing > article $pathThruUnPub = false would give you - * this: home > skiiing > article (assuming you have home crumb - * turned on) - * - * @var boolean $pathThruUnPub - */ - 'pathThruUnPub' => true, - /** - * Setting this to 1 will hide items in the breadcrumb list that - * are set to be hidden in menus. - * - * @var boolean $respectHidemenu - */ - 'respectHidemenu' => true, - /** - * Would you like your crumb string to start with a link to home? - * Some would not because a home link is usually found in the site - * logo or elsewhere in the navigation scheme. - * - * @var boolean $showHomeCrumb - */ - 'showHomeCrumb' => true, - /** - * You can use this to turn off the breadcrumbs on the home page - * with 1. grad: actually '1' shows and '0' hides crumbs at - * homepage. - * - * @var boolean $showCrumbsAtHome - */ - 'showCrumbsAtHome' => false, - /** - * Show the current page in path with 1 or not with 0. - * - * @var boolean $showCurrentCrumb - */ - 'showCurrentCrumb' => true, - /** - * If you want the current page crumb to be a link (to itself) then - * set to 1. - * - * @var boolean $currentAsLink - */ - 'currentAsLink' => true, - /** - * Define what you want between the crumbs. - * - * @var string $crumbSeparator - */ - 'crumbSeparator' => '»', - /** - * Just in case you want to have a home link, but want to call it - * something else. - * - * @var string $homeCrumbTitle - */ - 'homeCrumbTitle' => 'Home', - /** - * In case you want to have a custom description of the home link. - * Defaults to title of home link. - * - * @var string $homeCrumbDescription - */ - 'homeCrumbDescription' => 'Home', - /** - * To change default page field to be used as a breadcrumb title, - * default is pagetitle. - * - * @var string $titleField - */ - 'titleField' => 'pagetitle', - /** - * To change default page field to be used as a breadcrumb - * description, default is description (GA: falls back to pagetitle - * if description is empty). - * - * @var string $descField - */ - 'descField' => 'description', - /** - * The string that will show if the maximum number of breadcrumbs - * has been shown. - * - * @var string $max_delimiter - */ - 'maxDelimiter' => '...', - 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', - 'bcTplCrumbCurrentLink' => '', - 'bcTplCrumbFirst' => '
  • [[+text]]
  • ', - 'bcTplCrumbHome' => '', - 'bcTplCrumbLast' => '
  • [[+text]]
  • ', - 'bcTplCrumbMax' => '
  • [[+text]]
  • ', - 'bcTplCrumbLink' => '', - 'bcTplCrumbOuter' => '
      [[+text]]
    ', - 'bcTplCrumb' => '
  • [[+text]]
  • ', + 'elements_path' => $basePath.'elements/', ),$config); $this->_crumbs = array(); $this->_tpls = array(); From 322288c1f96eeddc265b943129af396d6de93842 Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Tue, 3 Apr 2012 11:00:47 +0200 Subject: [PATCH 2/8] New: error message if class instantiation fails New: crumb separator is templateable via chunk 'bcTplCrumbSeparator' Fix: pass html5 validation (move crumb separator inside
  • + remove invalid rel attributes in ) --- _packages/breadcrumbs-1.1.0-pl.transport.zip | Bin 29048 -> 29432 bytes .../elements/snippets/snippet.breadcrumbs.php | 13 ++++++++++--- .../snippet.breadcrumbs.properties.php | 7 ++++--- .../breadcrumbs/lexicon/en/default.inc.php | 2 ++ .../breadcrumbs/lexicon/en/properties.inc.php | 1 + .../breadcrumbs/lexicon/fr/default.inc.php | 1 + .../breadcrumbs/lexicon/fr/properties.inc.php | 2 ++ .../{breadcrumbs => }/breadcrumbs.class.php | 10 ++++++---- 8 files changed, 26 insertions(+), 10 deletions(-) rename core/components/breadcrumbs/model/{breadcrumbs => }/breadcrumbs.class.php (96%) diff --git a/_packages/breadcrumbs-1.1.0-pl.transport.zip b/_packages/breadcrumbs-1.1.0-pl.transport.zip index 9935455b4ef9eccb8b25d3ae8a23e22575aa6751..f8825e7b897e34bd6ecd45255665ae98aabdcee0 100644 GIT binary patch delta 20980 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 G-v0qpH8e;7 delta 20480 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 diff --git a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.php b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.php index 5bce9c9..6551b32 100644 --- a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.php +++ b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.php @@ -31,6 +31,7 @@ * @editor Shaun McCormick * @editor Shawn Wilkerson * @editor Wieger Sloot, Sterc.nl + * @editor Jerome Perrin * @tester Bob Ray * @package breadcrumbs * @@ -50,6 +51,12 @@ * hide) * .B_homeCrumb Class given to the home crumb */ -require_once $modx->getOption('breadcrumbs.core_path',null,$modx->getOption('core_path').'components/breadcrumbs/').'model/breadcrumbs/breadcrumbs.class.php'; -$bc = new BreadCrumbs($modx,$scriptProperties); -return $bc->run(); \ No newline at end of file +$path = $modx->getOption('breadcrumbs.core_path',null,$modx->getOption('core_path').'components/breadcrumbs/'); + +$p = include $path.'elements/snippets/snippet.breadcrumbs.properties.php'; +$p = array_merge($p,$scriptProperties); + +$breadcrumbs = $modx->getService('breadcrumbs','BreadCrumbs',$path.'model/',$p); +if (!($breadcrumbs instanceof BreadCrumbs)) return $modx->lexicon('breadcrumbs.error.loadingclass',array('path' => $path.'model/')); + +return $breadcrumbs->run(); \ No newline at end of file diff --git a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php index 3b2a805..5e8b2e8 100644 --- a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php +++ b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php @@ -136,14 +136,15 @@ */ 'maxDelimiter' => '...', 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', - 'bcTplCrumbCurrentLink' => '', + 'bcTplCrumbCurrentLink' => '', 'bcTplCrumbFirst' => '
  • [[+text]]
  • ', - 'bcTplCrumbHome' => '', + 'bcTplCrumbHome' => '', 'bcTplCrumbLast' => '
  • [[+text]]
  • ', 'bcTplCrumbMax' => '
  • [[+text]]
  • ', - 'bcTplCrumbLink' => '', + 'bcTplCrumbLink' => '', 'bcTplCrumbOuter' => '
      [[+text]]
    ', 'bcTplCrumb' => '
  • [[+text]]
  • ', + 'bcTplCrumbSeparator' => '[[+separator]]' ); ?> \ No newline at end of file diff --git a/core/components/breadcrumbs/lexicon/en/default.inc.php b/core/components/breadcrumbs/lexicon/en/default.inc.php index d72c278..0ba2ae3 100644 --- a/core/components/breadcrumbs/lexicon/en/default.inc.php +++ b/core/components/breadcrumbs/lexicon/en/default.inc.php @@ -29,3 +29,5 @@ * @language en */ $_lang['breadcrumbs'] = 'BreadCrumbs'; +$_lang['breadcrumbs.error.loadingclass'] = 'Error loading class BreadCrumbs from [[+path]].'; + diff --git a/core/components/breadcrumbs/lexicon/en/properties.inc.php b/core/components/breadcrumbs/lexicon/en/properties.inc.php index c0f9c88..1019895 100644 --- a/core/components/breadcrumbs/lexicon/en/properties.inc.php +++ b/core/components/breadcrumbs/lexicon/en/properties.inc.php @@ -50,3 +50,4 @@ $_lang['breadcrumbs.prop_desc.bcTplCrumbLink'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbOuter'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumb'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbSeparator'] = ''; diff --git a/core/components/breadcrumbs/lexicon/fr/default.inc.php b/core/components/breadcrumbs/lexicon/fr/default.inc.php index c0c7656..d7bef98 100644 --- a/core/components/breadcrumbs/lexicon/fr/default.inc.php +++ b/core/components/breadcrumbs/lexicon/fr/default.inc.php @@ -29,3 +29,4 @@ * @language fr */ $_lang['breadcrumbs'] = 'BreadCrumbs'; +$_lang['breadcrumbs.error.loadingclass'] = 'Erreur lors du chargement de la classe BreadCrumbs à [[+path]].'; diff --git a/core/components/breadcrumbs/lexicon/fr/properties.inc.php b/core/components/breadcrumbs/lexicon/fr/properties.inc.php index 5c52ecc..1ff7286 100644 --- a/core/components/breadcrumbs/lexicon/fr/properties.inc.php +++ b/core/components/breadcrumbs/lexicon/fr/properties.inc.php @@ -50,3 +50,5 @@ $_lang['breadcrumbs.prop_desc.bcTplCrumbLink'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbOuter'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumb'] = ''; +$_lang['breadcrumbs.prop_desc.bcTplCrumbSeparator'] = ''; + diff --git a/core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php b/core/components/breadcrumbs/model/breadcrumbs.class.php similarity index 96% rename from core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php rename to core/components/breadcrumbs/model/breadcrumbs.class.php index eadcd21..ef42b8e 100644 --- a/core/components/breadcrumbs/model/breadcrumbs/breadcrumbs.class.php +++ b/core/components/breadcrumbs/model/breadcrumbs.class.php @@ -175,20 +175,22 @@ public function run() { $o = ''; $idx = 0; $crumbCount = count($this->_crumbs)-1; + $oCrumbSeparator = ''; + if (!empty($this->config['crumbSeparator'])) { + $oCrumbSeparator = $this->getChunk('bcTplCrumbSeparator',array('separator' => $this->config['crumbSeparator'])); + } foreach ($this->_crumbs as $crumb) { if ($idx == 0) { $o .= $this->getChunk('bcTplCrumbFirst',array( 'text' => $crumb, ))."\n"; } else if ($idx == $crumbCount) { - $o .= ' '.$this->config['crumbSeparator'].' '; $o .= $this->getChunk('bcTplCrumbLast',array( - 'text' => $crumb, + 'text' => $oCrumbSeparator.$crumb, ))."\n"; } else { - $o .= ' '.$this->config['crumbSeparator'].' '; $o .= $this->getChunk('bcTplCrumb',array( - 'text' => $crumb, + 'text' => $oCrumbSeparator.$crumb, ))."\n"; } $idx++; From e26182cd63560f72a07f3f9d857d1ca4c7b5611f Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Tue, 3 Apr 2012 11:36:44 +0200 Subject: [PATCH 3/8] Fix: [#6] malformed html with currentAsLink set to false --- _packages/breadcrumbs-1.1.0-pl.transport.zip | Bin 29432 -> 29868 bytes .../breadcrumbs/model/breadcrumbs.class.php | 4 +--- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/_packages/breadcrumbs-1.1.0-pl.transport.zip b/_packages/breadcrumbs-1.1.0-pl.transport.zip index f8825e7b897e34bd6ecd45255665ae98aabdcee0..112d48608ad2c64e3ff823ce8f295a432d7b8125 100644 GIT binary patch delta 13588 zcma*OWl$YK|E;@mcbDMq?(P=co#5^+8@J#P+}TKQcefDS9fG^NbMyYIZk={t*Fpw#Ldk&JEvTU z-?oLhD`F?@R4k&nbSykxB&^?E?31iaZg&=vCvIrI8lDJ$$o8DM`!e%a{VJiUw=%@$ zI>hqQbPRTP#$2Xoxq0|CQ}n@ui$wL#4}8D!a_8<`eDY+;M7FxNUU-L*D(qXsOF0!6LhzQHF?2? z)30{-;&$L`GjnWol>zTBl|?nPo%vyp{#8?xzFnIYo2Lz)y26UDa!9@34d7=B^?{Cd z&2iEF;q5Z+0J%n4u`g0>rV+!dyov^M10x4?21nn*aK1>pr9m7@V*Xrl`2s>jG#Fd2~10Dgw7? zXzkEPRmNt`pz|1si-B&Kf@--3S~az1U)>HUQ)dbm+?^n+_P+4lmOc|9D_?tYz6gO*bo5>r6TRn##o9u(+lnrw2?MqMLB3 zwMP2dE2nWlCOYlL_H}8o>mi%3*#QTnjCI-gAhJb8DM&m%vT&TqE_KGe7mT_O`DgK} z84ocxq3P>x%0A5K5@tEA3?p!UR3Ivn;AEzjh&2=9ZMu|sP8evt} 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 Z(MMSx3i>~tLHTM)2_=$jkkR%)1k|zpc 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 RG?4!8i_jn-$Tt5;{Xf2BCocd1 diff --git a/core/components/breadcrumbs/model/breadcrumbs.class.php b/core/components/breadcrumbs/model/breadcrumbs.class.php index ef42b8e..b097dbe 100644 --- a/core/components/breadcrumbs/model/breadcrumbs.class.php +++ b/core/components/breadcrumbs/model/breadcrumbs.class.php @@ -78,9 +78,7 @@ public function showCurrentPage($resourceId) { 'text' => $titleToShow, )); } else { - $this->_crumbs[] = $this->getChunk('bcTplCrumbCurrent',array( - 'text' => $titleToShow, - )); + $this->_crumbs[] = $titleToShow; } } } From 61fbe2798e47b43e5819e6b23664e1e87d754f39 Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Wed, 4 Apr 2012 11:25:33 +0200 Subject: [PATCH 4/8] Simplify and modernize css classes --- _packages/breadcrumbs-1.1.0-pl.transport.zip | Bin 29868 -> 29582 bytes .../elements/snippets/snippet.breadcrumbs.php | 11 +++-------- .../snippet.breadcrumbs.properties.php | 18 +++++++++--------- 3 files changed, 12 insertions(+), 17 deletions(-) diff --git a/_packages/breadcrumbs-1.1.0-pl.transport.zip b/_packages/breadcrumbs-1.1.0-pl.transport.zip index 112d48608ad2c64e3ff823ce8f295a432d7b8125..b2f97be68f4fe3a0c452a88538da09c334ed9d59 100644 GIT binary patch delta 14286 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 z!heTgetOption('breadcrumbs.core_path',null,$modx->getOption('core_path').'components/breadcrumbs/'); diff --git a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php index 5e8b2e8..085599b 100644 --- a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php +++ b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php @@ -135,15 +135,15 @@ * @var string $max_delimiter */ 'maxDelimiter' => '...', - 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', - 'bcTplCrumbCurrentLink' => '', - 'bcTplCrumbFirst' => '
  • [[+text]]
  • ', - 'bcTplCrumbHome' => '', - 'bcTplCrumbLast' => '
  • [[+text]]
  • ', - 'bcTplCrumbMax' => '
  • [[+text]]
  • ', - 'bcTplCrumbLink' => '', - 'bcTplCrumbOuter' => '
      [[+text]]
    ', - 'bcTplCrumb' => '
  • [[+text]]
  • ', + 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', + 'bcTplCrumbCurrentLink' => '', + 'bcTplCrumbFirst' => '
  • [[+text]]
  • ', + 'bcTplCrumbHome' => '', + 'bcTplCrumbLast' => '
  • [[+text]]
  • ', + 'bcTplCrumbMax' => '
  • [[+text]]
  • ', + 'bcTplCrumbLink' => '', + 'bcTplCrumbOuter' => '', + 'bcTplCrumb' => '
  • [[+text]]
  • ', 'bcTplCrumbSeparator' => '[[+separator]]' ); From 7c59e32255b729cf1a1a99eefe0ed560a672cbcb Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Mon, 9 Apr 2012 22:43:33 +0200 Subject: [PATCH 5/8] Move current crumb class to bcTplCrumbCurrent --- .../snippet.breadcrumbs.properties.php | 6 +-- .../breadcrumbs/model/breadcrumbs.class.php | 42 ++++++++----------- 2 files changed, 19 insertions(+), 29 deletions(-) diff --git a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php index 085599b..dcaf5d2 100644 --- a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php +++ b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php @@ -135,11 +135,9 @@ * @var string $max_delimiter */ 'maxDelimiter' => '...', - 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', - 'bcTplCrumbCurrentLink' => '', - 'bcTplCrumbFirst' => '
  • [[+text]]
  • ', + 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', + 'bcTplCrumbCurrentLink' => '', 'bcTplCrumbHome' => '', - 'bcTplCrumbLast' => '
  • [[+text]]
  • ', 'bcTplCrumbMax' => '
  • [[+text]]
  • ', 'bcTplCrumbLink' => '', 'bcTplCrumbOuter' => '', diff --git a/core/components/breadcrumbs/model/breadcrumbs.class.php b/core/components/breadcrumbs/model/breadcrumbs.class.php index b097dbe..810681e 100644 --- a/core/components/breadcrumbs/model/breadcrumbs.class.php +++ b/core/components/breadcrumbs/model/breadcrumbs.class.php @@ -72,14 +72,15 @@ public function showCurrentPage($resourceId) { ? $resource->get($this->config['descField']) : $resource->get('pagetitle'); - $this->_crumbs[] = $this->getChunk('bcTplCrumbCurrentLink',array( + $crumb = $this->getChunk('bcTplCrumbCurrentLink',array( 'resource' => $this->modx->resource->get('id'), 'description' => $descriptionToUse, 'text' => $titleToShow, )); } else { - $this->_crumbs[] = $titleToShow; + $crumb = $titleToShow; } + $this->_crumbs[] = $this->getChunk('bcTplCrumbCurrent',array('text' => $crumb)); } } @@ -110,11 +111,12 @@ public function getMiddleCrumbs($resourceId,&$count) { $descriptionToUse = $parent->get($this->config['descField']) ? $parent->get($this->config['descField']) : $parent->get('pagetitle'); - $this->_crumbs[] = $this->getChunk('bcTplCrumbLink',array( + $crumb = $this->getChunk('bcTplCrumbLink',array( 'resource' => $parent->get('id'), 'description' => $descriptionToUse, 'text' => $titleToShow, )); + $this->_crumbs[] = $this->getChunk('bcTplCrumb',array('text' => $crumb)); } } } /* end if */ @@ -162,37 +164,27 @@ public function run() { /* add home link if desired */ if ($this->config['showHomeCrumb'] && ($resource->get('id') != $this->modx->config['site_start'])) { - $this->_crumbs[] = $this->getChunk('bcTplCrumbHome',array( + $crumb = $this->getChunk('bcTplCrumbHome',array( 'description' => $this->config['homeCrumbDescription'], 'text' => $this->config['homeCrumbTitle'], )); + $this->_crumbs[] = $this->getChunk('bcTplCrumb',array('text' => $crumb)); } $this->_crumbs = array_reverse($this->_crumbs); - $o = ''; - $idx = 0; - $crumbCount = count($this->_crumbs)-1; - $oCrumbSeparator = ''; - if (!empty($this->config['crumbSeparator'])) { - $oCrumbSeparator = $this->getChunk('bcTplCrumbSeparator',array('separator' => $this->config['crumbSeparator'])); - } - foreach ($this->_crumbs as $crumb) { - if ($idx == 0) { - $o .= $this->getChunk('bcTplCrumbFirst',array( - 'text' => $crumb, - ))."\n"; - } else if ($idx == $crumbCount) { - $o .= $this->getChunk('bcTplCrumbLast',array( - 'text' => $oCrumbSeparator.$crumb, - ))."\n"; - } else { - $o .= $this->getChunk('bcTplCrumb',array( - 'text' => $oCrumbSeparator.$crumb, - ))."\n"; + /* add crumb separator to each crumb except the first one */ + $crumbsCount = count($this->_crumbs); + if ($crumbsCount > 1 && !empty($this->config['crumbSeparator'])) { + $crumbSeparator = $this->getChunk('bcTplCrumbSeparator', array('separator' => $this->config['crumbSeparator'])); + for ($i=1; $i < $crumbsCount; $i++) { + $this->_crumbs[$i] = preg_replace('/>/', '$0'.$crumbSeparator, $this->_crumbs[$i], $limit = 1); } - $idx++; } + + /* assemble all crumbs */ + $o = implode("", $this->_crumbs); + return $this->getChunk('bcTplCrumbOuter',array('text' => $o)); } From 1cc3e884d77ec25e53a2a4cf0d65d0a9b40c22ce Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Mon, 9 Apr 2012 22:52:51 +0200 Subject: [PATCH 6/8] Move common classes to properties --- .../snippets/snippet.breadcrumbs.properties.php | 16 ++++++++++++++-- .../breadcrumbs/model/breadcrumbs.class.php | 4 ++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php index dcaf5d2..6e8aa64 100644 --- a/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php +++ b/core/components/breadcrumbs/elements/snippets/snippet.breadcrumbs.properties.php @@ -128,6 +128,18 @@ * @var string $descField */ 'descField' => 'description', + /** + * The class of the outer container + * + * @var string $outerClass + */ + 'outerClass' => 'breadcrumb', + /** + * The class of the current crumb + * + * @var string $currentCrumbClass + */ + 'currentCrumbClass' => 'active', /** * The string that will show if the maximum number of breadcrumbs * has been shown. @@ -135,12 +147,12 @@ * @var string $max_delimiter */ 'maxDelimiter' => '...', - 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', + 'bcTplCrumbCurrent' => '
  • [[+text]]
  • ', 'bcTplCrumbCurrentLink' => '', 'bcTplCrumbHome' => '', 'bcTplCrumbMax' => '
  • [[+text]]
  • ', 'bcTplCrumbLink' => '', - 'bcTplCrumbOuter' => '', + 'bcTplCrumbOuter' => '
      [[+text]]
    ', 'bcTplCrumb' => '
  • [[+text]]
  • ', 'bcTplCrumbSeparator' => '[[+separator]]' ); diff --git a/core/components/breadcrumbs/model/breadcrumbs.class.php b/core/components/breadcrumbs/model/breadcrumbs.class.php index 810681e..62dadfb 100644 --- a/core/components/breadcrumbs/model/breadcrumbs.class.php +++ b/core/components/breadcrumbs/model/breadcrumbs.class.php @@ -80,7 +80,7 @@ public function showCurrentPage($resourceId) { } else { $crumb = $titleToShow; } - $this->_crumbs[] = $this->getChunk('bcTplCrumbCurrent',array('text' => $crumb)); + $this->_crumbs[] = $this->getChunk('bcTplCrumbCurrent',array('text' => $crumb, 'class' => $this->config['currentCrumbClass'])); } } @@ -185,7 +185,7 @@ public function run() { /* assemble all crumbs */ $o = implode("", $this->_crumbs); - return $this->getChunk('bcTplCrumbOuter',array('text' => $o)); + return $this->getChunk('bcTplCrumbOuter',array('text' => $o, 'class' => $this->config['outerClass'])); } /** From 7f6b3dbfda97110e16c7f8725223409c9398fb8c Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Mon, 9 Apr 2012 23:01:39 +0200 Subject: [PATCH 7/8] Polishing French translation + Cleaning up unused keys in all languages --- .../breadcrumbs/lexicon/en/properties.inc.php | 2 -- .../breadcrumbs/lexicon/fr/properties.inc.php | 14 ++++++-------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/core/components/breadcrumbs/lexicon/en/properties.inc.php b/core/components/breadcrumbs/lexicon/en/properties.inc.php index 1019895..4304cba 100644 --- a/core/components/breadcrumbs/lexicon/en/properties.inc.php +++ b/core/components/breadcrumbs/lexicon/en/properties.inc.php @@ -43,9 +43,7 @@ $_lang['breadcrumbs.prop_desc.maxDelimiter'] = 'The string that will show if the maximum number of breadcrumbs has been shown.'; $_lang['breadcrumbs.prop_desc.bcTplCrumbCurrent'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbCurrentLink'] = ''; -$_lang['breadcrumbs.prop_desc.bcTplCrumbFirst'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbHome'] = ''; -$_lang['breadcrumbs.prop_desc.bcTplCrumbLast'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbMax'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbLink'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbOuter'] = ''; diff --git a/core/components/breadcrumbs/lexicon/fr/properties.inc.php b/core/components/breadcrumbs/lexicon/fr/properties.inc.php index 1ff7286..ff80f56 100644 --- a/core/components/breadcrumbs/lexicon/fr/properties.inc.php +++ b/core/components/breadcrumbs/lexicon/fr/properties.inc.php @@ -28,24 +28,22 @@ * @subpackage lexicon * @language fr */ -$_lang['breadcrumbs.prop_desc.maxCrumbs'] = 'Nombre maximun de liens dans le fil d\'ariane. Si vous réduisez le nombre à, disons 5, et que la page vue est à 5 niveaux de profondeur, le fil d\'ariane sera : Accueil > ... > Niveau 4 > Niveau 5. "Accueil" et la page courante ne sont pas comptés et sont configurés séparément..'; +$_lang['breadcrumbs.prop_desc.maxCrumbs'] = 'Nombre maximun de liens dans le fil d\'ariane. Si vous réduisez le nombre à, disons 5, et que la page vue est au 5ème niveaux de profondeur, le fil d\'ariane sera : Accueil > ... > Niveau 4 > Niveau 5. "Accueil" et la page courante ne sont pas comptés et sont configurés séparément.'; $_lang['breadcrumbs.prop_desc.pathThruUnPub'] = 'Quand le chemin contient un dossier non-publié, mettre cette propriété à 1 montrera toutes les ressources du chemin SAUF celles qui ne sont pas publiés. Voir la documentation pour plus de détails : http://rtfm.modx.com/display/ADDON/Breadcrumbs'; -$_lang['breadcrumbs.prop_desc.respectHidemenu'] = 'Masquer les ressources qui sont masqués dans les menu?'; -$_lang['breadcrumbs.prop_desc.showHomeCrumb'] = 'Afficher la page d\'accueil dans le fil d\'ariane ? Ceci n\'est pas toujours nécessaire car un lien vers l\'accueil est habituellement disponible dans la navigation ou en cliquant sur le logo du site.'; +$_lang['breadcrumbs.prop_desc.respectHidemenu'] = 'Masquer les ressources qui sont masqués dans les menus ?'; +$_lang['breadcrumbs.prop_desc.showHomeCrumb'] = 'Afficher un lien vers la page d\'accueil dans le fil d\'ariane ? Ceci n\'est pas toujours nécessaire car ce lien est habituellement disponible dans la navigation ou en cliquant sur le logo du site.'; $_lang['breadcrumbs.prop_desc.showCrumbsAtHome'] = 'Montrer le fil d\'ariane sur la page d\'accueil ?'; $_lang['breadcrumbs.prop_desc.showCurrentCrumb'] = 'Inclure la page courante ?'; $_lang['breadcrumbs.prop_desc.currentAsLink'] = 'Nom de la page courante cliquable ?'; -$_lang['breadcrumbs.prop_desc.crumbSeparator'] = 'Séparateur'; +$_lang['breadcrumbs.prop_desc.crumbSeparator'] = 'Caractère de séparation'; $_lang['breadcrumbs.prop_desc.homeCrumbTitle'] = 'Nom de la page d\'accueil dans le fil d\'ariane.'; $_lang['breadcrumbs.prop_desc.homeCrumbDescription'] = 'Description du lien de la page d\'accueil.'; -$_lang['breadcrumbs.prop_desc.titleField'] = 'Champs de la ressource à utiliser pour le titre des liens. Valeur par défaut : pagetitle.'; -$_lang['breadcrumbs.prop_desc.descField'] = 'Champs de la ressource à utiliser pour la description des liens. Valeur par défaut : description (si vide, pagetitle sera utilisé).'; +$_lang['breadcrumbs.prop_desc.titleField'] = 'Champ de la ressource à utiliser pour le titre des liens. Valeur par défaut : pagetitle.'; +$_lang['breadcrumbs.prop_desc.descField'] = 'Champ de la ressource à utiliser pour la description des liens. Valeur par défaut : description (si vide, pagetitle sera utilisé).'; $_lang['breadcrumbs.prop_desc.maxDelimiter'] = 'Le caractère à utiliser si le nombre maximum de liens est atteint.'; $_lang['breadcrumbs.prop_desc.bcTplCrumbCurrent'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbCurrentLink'] = ''; -$_lang['breadcrumbs.prop_desc.bcTplCrumbFirst'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbHome'] = ''; -$_lang['breadcrumbs.prop_desc.bcTplCrumbLast'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbMax'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbLink'] = ''; $_lang['breadcrumbs.prop_desc.bcTplCrumbOuter'] = ''; From 04e95b104deea9f1d1fb886bf0c8dd32f1524d05 Mon Sep 17 00:00:00 2001 From: Jerome Perrin Date: Mon, 9 Apr 2012 23:06:43 +0200 Subject: [PATCH 8/8] update .gitignore --- .gitignore | 1 + _packages/breadcrumbs-1.1.0-pl.transport.zip | Bin 29582 -> 29686 bytes 2 files changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 210bd35..d323f7d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ _build/build.config.php +_packages config.core.php nbproject .idea diff --git a/_packages/breadcrumbs-1.1.0-pl.transport.zip b/_packages/breadcrumbs-1.1.0-pl.transport.zip index b2f97be68f4fe3a0c452a88538da09c334ed9d59..aa85f7c8a682745ae2a2cb7ca18d911eb005ae89 100644 GIT binary patch delta 18374 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 delta 18304 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