From 99d0b8c37e03f0bbc993997ad04204448b09a622 Mon Sep 17 00:00:00 2001 From: admin Date: Tue, 14 Dec 2010 03:19:56 +0800 Subject: [PATCH 1/8] Adding tags --- .hgtags | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .hgtags diff --git a/.hgtags b/.hgtags new file mode 100644 index 0000000000..d2a455fe3d --- /dev/null +++ b/.hgtags @@ -0,0 +1,6 @@ +d0aba247db91d1b70c39c6397b965ca370a67497 Sprint-Juno-A +0b8f67be2ca8faf008151d87f232c698de69e735 Release-4.5.0 +5960c073250926d202861a09472f5f334da6e283 Sprint-Juno-B +f15d4ff81a8368e9d42788f7e0ae726f7a70a3b1 Release-4.0.3 +283065df4d3c27245267709dd2644a479c4f62a5 Release-4.0.4.2 +ffc34b23e1a03785e4098afa4290d8c03cf10115 Release-4.5.2 From 03de5ca7112f9c02988a44e27c13e30f3afff937 Mon Sep 17 00:00:00 2001 From: boxbinary Date: Tue, 14 Dec 2010 22:29:40 +0000 Subject: [PATCH 2/8] Adding 'Getting started' note following TFS migration --- GettingStarted.txt | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 GettingStarted.txt diff --git a/GettingStarted.txt b/GettingStarted.txt new file mode 100644 index 0000000000..3f8f2ef52c --- /dev/null +++ b/GettingStarted.txt @@ -0,0 +1,24 @@ +Hi! Thanks for grabbing the Umbraco sourcecode. + +=========================================== +NOTE - DEFAULT BRANCH EMPTY - December 2010 +=========================================== + + +- With the help of CodePlex we have migrated much of our previous changesets (as of Dec 13th 2010) from TFS to Mercurial. + +- However, not everything could be migrated to our new branching workflow. So for each nominal group of 4.x changes, we've created named branches. For upcoming 5.x changesets, we'll adhere to our new workflow which we'll describe on the Wiki for contributors. + +- FOR THE MOMENT, the 'default' branch is empty - pending the addition of the 5.0 changesets + +- To switch to the codebase on which you want to work, 'hg update' to the named branch (e.g. "4.6.0") or tag (e.g. "Release-4.5.2") and browse or work from that point. + + +Thanks to Matt Hawley at CodePlex for his help in our migration! + +Cheers, +The Umbraco Team + +http://umbraco.org +http://our.umbraco.org +http://umbraco.codeplex.com \ No newline at end of file From e21057e9c83568ebe9453ce2cb1680ab678cec36 Mon Sep 17 00:00:00 2001 From: slace Date: Tue, 14 Dec 2010 11:38:48 -1100 Subject: [PATCH 3/8] Adding readme file --- README.txt | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 README.txt diff --git a/README.txt b/README.txt new file mode 100644 index 0000000000..1177a2292e --- /dev/null +++ b/README.txt @@ -0,0 +1,6 @@ +!! Umbraco - the simple, flexible and friendly ASP.NET CMS +For the first time on the Microsoft platform a free user and developer friendly cms that makes it quick and easy to create websites - or a breeze to build complex web applications. umbraco got award-winning integration capabilities and supports your ASP.NET User and Custom Controls out of the box. It's a developers dream and your users will love it too. Used by more than 57.000 active websites including Heinz.com, Peugeot.com, NAIAS.com and Microsofts documentinteropinitiative.org website you can be sure that the technology is proven, stable and scales. +[url:More info at http://umbraco.org|http://umbraco.org] + +!! Forums +We have a forum running on [url:http://our.umbraco.org]. The discussions area on CodePlex will be for discussions on developing the core, and not on Umbraco-implementations or extensions in general. For those topics, please use [url:http://our.umbraco.org]. \ No newline at end of file From 4c0852c0e8fc2b10f6078127f8bb18a1fd9a3db8 Mon Sep 17 00:00:00 2001 From: slace Date: Tue, 14 Dec 2010 11:39:13 -1100 Subject: [PATCH 4/8] Adding section on submitting bugs --- README.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.txt b/README.txt index 1177a2292e..6fb37d5510 100644 --- a/README.txt +++ b/README.txt @@ -3,4 +3,7 @@ For the first time on the Microsoft platform a free user and developer friendly [url:More info at http://umbraco.org|http://umbraco.org] !! Forums -We have a forum running on [url:http://our.umbraco.org]. The discussions area on CodePlex will be for discussions on developing the core, and not on Umbraco-implementations or extensions in general. For those topics, please use [url:http://our.umbraco.org]. \ No newline at end of file +We have a forum running on [url:http://our.umbraco.org]. The discussions area on CodePlex will be for discussions on developing the core, and not on Umbraco-implementations or extensions in general. For those topics, please use [url:http://our.umbraco.org]. + +!! Submitting Issues +Another way you can contribute to Umbraco is by providing issue reports, for information on how to submit an issue report refer to our [url:online guide|http://our.umbraco.org/wiki/how-tos/submitting-bug-reports]. \ No newline at end of file From ddbbf5e79916dabad4a783f6145967c7ffaad106 Mon Sep 17 00:00:00 2001 From: Tim Saunders Date: Thu, 16 Dec 2010 18:31:18 +0000 Subject: [PATCH 5/8] Various bug fixes and enhancements to the installer, including: stop animation of progress bar when it reaches 100%, Fixed validtion display errors, fixed database form JQuery issues. --- umbraco/presentation/install/css/all.css | 6 +- .../presentation/install/js/jquery.main.js | 57 ++++++++++++------- .../presentation/install/steps/database.ascx | 12 ++-- .../install/steps/defaultUser.ascx | 26 ++++----- .../presentation/install/steps/skinning.ascx | 1 + 5 files changed, 57 insertions(+), 45 deletions(-) diff --git a/umbraco/presentation/install/css/all.css b/umbraco/presentation/install/css/all.css index 247e9d9293..345c2eb03e 100644 --- a/umbraco/presentation/install/css/all.css +++ b/umbraco/presentation/install/css/all.css @@ -479,7 +479,7 @@ figure{display: block;} overflow:hidden; float:left; } -.ui-progressbar-value { background-image: url(../images/pbar-ani.gif) !important; } +.ui-progressbar-value { background-image: url(../images/pbar-ani.gif) } .btn-continue span{ width:122px; height:84px; @@ -542,11 +542,11 @@ figure{display: block;} .validaing, .invalidaing, .basevalidaing{ float:left !Important; - display:inline !Important; + display:inline; margin:6px 0 0 10px !Important; padding:0 0 2px 28px !Important; line-height:13px !Important; - font-weight:normal !Important; + font-weight:bold !Important; color:#fff !Important; background-color: none !Important; } diff --git a/umbraco/presentation/install/js/jquery.main.js b/umbraco/presentation/install/js/jquery.main.js index 95c76ddf68..3824123dae 100644 --- a/umbraco/presentation/install/js/jquery.main.js +++ b/umbraco/presentation/install/js/jquery.main.js @@ -110,15 +110,15 @@ function initTabs() { var select = $(this); selectVal = select.val(); + jQuery('#database-step1').hide(); jQuery('#database-step1-2').hide(); + jQuery('#database-step2').hide(); select.change(function () { selectValNew = jQuery(this).val(); - if (selectVal != selectValNew) jQuery('#database-step1-2').show(); - else jQuery('#database-step1-2').hide(); toggleDatabaseOption(selectValNew); - }) + }); }) _links.each(function () { var _link = $(this); @@ -135,7 +135,6 @@ function initTabs() { _link.addClass('active'); _tab.show(); - jQuery('#database-step1-2').hide(); return false; }); }); @@ -146,33 +145,49 @@ function initTabs() { //add by pph function toggleDatabaseOption(selectValNew) { - if (selectValNew != '') { + var step1 = '#database-step1'; + + //Defensive if else to prevent this being executed on non database pages + if (jQuery(step1).length) { + var instructionText = jQuery(step1 + ' .instructionText'); + var buttonBox = jQuery('.btn-box'); + //hide instructions jQuery('#database-step2').hide(); - + instructionText.hide(); + buttonBox.hide(); + //hide all db options - jQuery('#database-step1-2 .row').hide(); + jQuery(step1 + ' .row').hide(); - jQuery(".btn-box").show(); - - if (selectValNew == 'SqlServer' || selectValNew == 'MySql') - jQuery('#database-step1-2 .sql').show(); - else if (selectValNew == 'Custom') - jQuery('#database-step1-2 .custom').show(); - else if (selectValNew.indexOf('SQLCE4Umbraco') > -1 && !hasEmbeddedDlls) { - jQuery('#database-step1-2 .embeddedError').show(); - jQuery(".btn-box").hide(); + if (selectValNew != '') { + if (selectValNew == 'SqlServer' || selectValNew == 'MySql') { + jQuery(step1 + ' .sql').show(); + instructionText.show(); + buttonBox.show(); + } + else if (selectValNew == 'Custom') { + jQuery(step1 + ' .custom').show(); + instructionText.show(); + buttonBox.show(); + } + else if (selectValNew.indexOf('SQLCE4Umbraco') > -1 && !hasEmbeddedDlls) { + jQuery(step1 + ' .embeddedError').show(); + } + else if (selectValNew.indexOf('SQLCE4Umbraco') > -1) { + jQuery(step1 + ' .embedded').show(); + instructionText.show(); + buttonBox.show(); + } } - else if (selectValNew.indexOf('SQLCE4Umbraco') > -1) - jQuery('#database-step1-2 .embedded').show(); - showDatabaseSettings(); } } //add by pph function showDatabaseSettings() { - jQuery('#database-step1').show(); - jQuery('#database-step1-2').show(); + var link = jQuery('.btn-yes > a'); + link.addClass('active'); + jQuery(link.attr('href')).show(); } diff --git a/umbraco/presentation/install/steps/database.ascx b/umbraco/presentation/install/steps/database.ascx index 968434670f..e3cfc191a0 100644 --- a/umbraco/presentation/install/steps/database.ascx +++ b/umbraco/presentation/install/steps/database.ascx @@ -22,7 +22,7 @@

1. Do you have a blank database already installed?

@@ -33,7 +33,7 @@

2. Now choose your database type below.

-
+
@@ -44,12 +44,9 @@
- - -
-

+

3. Instructions: Please fill out the below fields to connect to your database.

@@ -159,7 +156,7 @@
- 56% + 0%
@@ -207,6 +204,7 @@ if (data.percentage == 100) { clearInterval(intervalId); jQuery(".btn-box").show(); + jQuery('.ui-progressbar-value').css("background-image", "url(images/pbar.gif)"); } }); } diff --git a/umbraco/presentation/install/steps/defaultUser.ascx b/umbraco/presentation/install/steps/defaultUser.ascx index 99d89dd9dd..ed403d35a9 100644 --- a/umbraco/presentation/install/steps/defaultUser.ascx +++ b/umbraco/presentation/install/steps/defaultUser.ascx @@ -25,41 +25,39 @@
- Name: + Name: - +
- Email: + Email: - - +
- Username: + Username: - +
- Password: + Password: - +
Confirm Password: - - - - + + +
- Sign up for our monthly newsletter + Sign up for our monthly newsletter
diff --git a/umbraco/presentation/install/steps/skinning.ascx b/umbraco/presentation/install/steps/skinning.ascx index b92126cbfb..e6dd460934 100644 --- a/umbraco/presentation/install/steps/skinning.ascx +++ b/umbraco/presentation/install/steps/skinning.ascx @@ -64,6 +64,7 @@ if (data.percentage == 100) { clearInterval(intervalId); jQuery(".btn-box").show(); + jQuery('.ui-progressbar-value').css("background-image", "url(images/pbar.gif)"); } }); } From 5e83d590f9ebf8ce22e67ef1ea3b30a7e9413378 Mon Sep 17 00:00:00 2001 From: slace Date: Thu, 16 Dec 2010 11:09:50 -1100 Subject: [PATCH 6/8] removing (and ignoring) the .suo file --- .hgignore | 1 + umbraco.suo | Bin 228864 -> 0 bytes 2 files changed, 1 insertion(+) delete mode 100644 umbraco.suo diff --git a/.hgignore b/.hgignore index b61636dd2b..ac527b38fd 100644 --- a/.hgignore +++ b/.hgignore @@ -16,3 +16,4 @@ _ReSharper*/ [Tt]est[Rr]esult* [Bb]uild[Ll]og.* *.[Pp]ublish.xml +*.suo \ No newline at end of file diff --git a/umbraco.suo b/umbraco.suo deleted file mode 100644 index bcd5d23a232c1f538f5552f23f7e26b9c7333d04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 228864 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 From a03fe234e8d494478d3677b9428fcdff63f003c5 Mon Sep 17 00:00:00 2001 From: slace Date: Thu, 16 Dec 2010 11:13:53 -1100 Subject: [PATCH 7/8] adding hgignore to default head --- .hgignore | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .hgignore diff --git a/.hgignore b/.hgignore new file mode 100644 index 0000000000..ac527b38fd --- /dev/null +++ b/.hgignore @@ -0,0 +1,19 @@ +# use glob syntax +syntax: glob + +*.obj +*.exe +*.pdb +*.user +*.aps +*.pch +*.vspscc +[Bb]in +[Db]ebug*/ +obj/ +[Rr]elease*/ +_ReSharper*/ +[Tt]est[Rr]esult* +[Bb]uild[Ll]og.* +*.[Pp]ublish.xml +*.suo \ No newline at end of file From 94722e82dd8b3f12551438800a27c7641fdf084f Mon Sep 17 00:00:00 2001 From: hartvig Date: Thu, 16 Dec 2010 23:39:31 -0100 Subject: [PATCH 8/8] Adding support for Public Properties on Dashboard controls (simply add values as attributes on the element [case-sensitive!]) --- umbraco.sln | 1 - umbraco.suo | Bin 228864 -> 268800 bytes umbraco/presentation/config/Dashboard.config | 7 ++- .../presentation/umbraco/dashboard.aspx.cs | 53 ++++++++++++++++++ umbraco/presentation/web.config | 4 +- .../presentation/web.config.UMBRACOELISE.xslt | 2 +- 6 files changed, 62 insertions(+), 5 deletions(-) diff --git a/umbraco.sln b/umbraco.sln index 4bae3e0c38..79f29c34bc 100644 --- a/umbraco.sln +++ b/umbraco.sln @@ -229,7 +229,6 @@ Global {6AE67079-2C00-476C-81DE-2800D1AC14BC}.Release|Any CPU.ActiveCfg = Release|Any CPU {6AE67079-2C00-476C-81DE-2800D1AC14BC}.Release|Any CPU.Build.0 = Release|Any CPU {89C09045-1064-466B-B94A-DB3AFE2A5853}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {89C09045-1064-466B-B94A-DB3AFE2A5853}.Debug|Any CPU.Build.0 = Debug|Any CPU {89C09045-1064-466B-B94A-DB3AFE2A5853}.Release|Any CPU.ActiveCfg = Release|Any CPU {89C09045-1064-466B-B94A-DB3AFE2A5853}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection diff --git a/umbraco.suo b/umbraco.suo index bcd5d23a232c1f538f5552f23f7e26b9c7333d04..d1bb4d505986e521ee1c93c63d54fa11a5fbe687 100644 GIT binary patch literal 268800 zcmeHw34A0+dGD;f%NpD9fe#EeAi!W_tUffrXO2L)k`QoWAdf)86#|3=Fkm3Z3p{(@|6esVRbAaZ zmuA&nvugc5%}jUCbbVD{ef8b-r7xcSop*lViT{+aj^`y#PCR<-v5ChR=QrW~2KD)@ zMB*g8KN;}ov17;7>8tVP*MJ?k@!tWsw0^|62OdG&He$S<0O0s?yf*_*0X!CPCg4=S zX@JuKzX3P{fZ#(9NF%F2(!*f!E9M`fR}EfObF<&;jTMbOO2nJ%D~dFQ5 z3cyyta{*TZo(Fh7;01sbAPvX>1_4>X5MUeND!?${8UXugJ6?AHt_8dhFao#^uoEx} z*ag@P*aO%LxE}B#z>5Jl0CIqr0B!`_1h^TH2aEy60TX}%U=lC|*aw&f><1hG%m8Kq zbAWlk0^lH^2v`Ix0hR%W0EYob04so707n700&WAm6!0>@%K+d}%PbX<(*bFOgi)cSmoW#X%) zAMFIS_J9IALD6YYYdijT;e7|*b>eRj?`|shl5Sh+>!9tE5*zV>^RCwCv#tCN56;Jv z@X9gaIes>QJb?3Gom2Cle1Uyw1>`M{F^PX;^%&<1!a z;Aw!T11<(U1Mo}$$CUG*JR)fRlfQHTI6j>J?E7xMvw0Z45jhFYfVwUcj{i zeyt$56X)eLerwM6%`yA}@5+_#UlOyIvv>~Y<#+hh#l+GzTd)3y8(wkxHy_x3&FfOB zUz`qn(Se?$_Aba~Mn`JD+ka9XK3R`ZTx2!*2EoHBl8$RQkp*c!2j5F zoU?q@SHj;t2A4LLF7FcKb^vp0nq!0YlcQL~TFUV}U_H(Mo8-Tnahg1;*5~tn@@yWv z@U%Q=a0pbj3|g7MCq-j>L`xL)WCY!Dg`5{FvHU*xuUOCcY##D#<^O#4y`@`5L6hSp z{(cC3z*$nns$9U_xd#8aepfn(KY1&8XRXgCzfiw<&*Qin;k%FWKRNSu(eq1K85i*U zInhJ2ct4MJ~QdBB9{J8Z*g z0LmZ};>7MBXM$;|xBOksR!dVX#(xvel)C{B+j z2dBk}d~xOGt{ZMB-8i~boSvJyylr-Ie7-m{J$8B9oc`DiT$Nwk zx0D~7DKzItW@jsACG%g z|0`O12?fB-C7L}YGe5hKFBXcYklIG4Zz(`NJms!RlcF>^vIm#*Gt)~e>IZJ_Jgzh3 zC4!AVwltQBjeHZwW};bw>iOzDNCs^6zRVT5-HTuuxqbQK(xK_8+~EB9@@!#lX)(8F zdJ(7Y@ zfLiJA0^Iu;F>+jgr!m_`@Z2IOUCID#LoK|Ah(8&<$3CQ(|zqdJ?Z}T^k82{dw*9) ze@92(ApUjVcI)!&STR37pIayv7D1zVu8_IX$)tHQIlj06TD^7rirh_nBZzk2R7YoW ze14*^FjF{!H?!)iT~j^=PUu)8EsR8ffpx_N3Z- zhBAHa0|R}j_Kv=uu7U23-k!exp4)!r2!8n`2ohtNCgx*GlM{ojj$(;7m0vDMYyi8aX;mG0yrIcx@B|`rg}Zu{y`nzxm1`=6 z!NC)b+Yx*72=5#7uJ!k;?*TGi3Lc69pH9K*#yyLJg|X$S5kou}$&Vk%PeE-}igBmV zi)+%1JGv)(C;KNmJ12TO^4qvQdE|ba#A#5s!%My*)=~u zvv+!KV*c=AaxlM?-!;9km>ij&o1;E0K4hh6F*Z#lCOJYC9`eTAc;VUG#hXHr-y2<; zFBXXBX+ri~YxFk}^SS0BZJ?=8E_H}DJn)el*+oKdek`@cv-pn(<o~lJI`$%@|2(wsHsSeMhUQIcahveM&?}QGS?BgcBT$xY z+5%~v%9Zu#M%%BxM}7R|fN^0>mtL_cJcIVHHdrTVb)!bo22KA6JR5zmdgNd^p_PUf z$wj~*Tf6(Ve-K$m$2<;D?3G@fms()m0Z%O_0J)fA;1~>|Q zmVsF{JrK_q_80n~YJL6??!A_c#$n^HpTB~hr$uZ=-Wc+q`185y2)WI3+O)sg&)(EdcKOuA#V~zrO#JfrtGmk{^V~$) zJa(DHV;*-jse|Zn(j_WCcZH- zctYZBv$9~54euIk`B@O$7pYC^{6(MIU3x!gt@)#gi%)wb_3Sr%`l=6n{XJhi=bpW1 zZclvaV?V$CHBb9!_P#6rZv3tPd4#Shc-f1ezdH4-x9-2@-mksm_MMM@4jQf=|RLjMr4fAlHWy8bY>??a+hjK3U1^ydydtq6^jkzF!o zi(aoiB7)ERJo^*l56-~JivYDgpRu!dlzu1!>=|jqr%8Xi-HOtUAusTMis$m#JVI{s zoHpeTCFM{KVsxCeD-?w-f_-1`eAEA-k>@`XKXVxc261c^ag#^U`)O#yX+%)=Au2k9 z2#g{8b-)hNjyrnr+KG2taBdKv+7YWWi1F#dYd8M3h)-F3z6}0IvkR3c%QaR|8%HcrD<+0bU0n-y+aP^hUs&0B;7|1^6w% zZv%b@@VkJw0Nx7t?|`=feh=_=z}ycmVL%fWHAe2>2pEwRbg*`zQR)cLCok{oX(0^#_1|0sJfAhXC~)zWxNC ze+u{+;9F_dV_a$-5xG|O;ull+b;>Ed_|0}PvMKx$pV}vWlcV2< ztK{3HgD!EU2hShCcgfeYH9s|lxpox4)x4)RgAVF%Pd&V1{odB=f$&+dT0TH6A}eMd zWl&10UEtC(v#keb`tXVKkU4Igk(88pbr5H$e{^DYrtw-UACNP$nNMxTjBI9mRy!h; zOF06RUCD_ly^baZCeQuMqn~;5_IKSq@xHe_`Da_|vmY=UcQyUA0jWC&FS+>PAIzS7 z?I*4{y7IA=vu*%u702to@z6&GKY97k{a=4t`oib^`PbC>SDkzR4KM%D$yeX|t@Hct z`IEh62iW`X?%K31_s+o&f8>+>OG6+3vbulM#hb7H(yP9ZePixNuf6oMm+e>QfA@EO z^%vj#=zr~a#moQX({F$Bzte;-j{mq|_TjVs;$z!?=iD=2d*)Z4Diu~-89C?4h5O(9 z;lWSbT-=pSuaL+UMHOvB!bW3F^OU_}TdKcX-&(<2lBKtQL>^_I%@kla4)g@DIN7lRLh* z-zY!R8boP&2>iJVuf5>Vl&I_D$U$7E(WkD4(`*$v z|3`s?p9?nHp2j)ysThM4y!f=P9)is(1MAcj&Rq%5DD$bpe|anJ&0_teeMhd2tLc?A z@>gy8`uJt2e~=!{%%dGq#Z}pP!OYR1FP6DcwARv6I)%@STJheS6!{#%_sR@l<`lE$ z!236C{^Cnfj{s{>`9ObUXipCBf0=7aX@%NjCxF^T7rsNDGl|wP!;v{=lxxzkJZ?kv ziCtJFDb-|gUPjDq#drI$5_jUNe8=CQ6`N~{Y$Nk7mvpfLab5b(nRzMmrp<~Cv_I1l zJ}<25jCoVpExC%lG9lVr`g!4-w|}2}DCpRh-adR2F1SD^jIEl(_za^@8D%vL*@YS5 z#9^N!IM9O43~6RdGEb6GjP^N=)tDn#rGN*qV#FP@i-$2ztOlYnIp7E;_E>Oy=wqU9 ziM}nBYrAOR=F0pzg7KL_RUCR*m>XU+aCosJlSs_=tcZmP*k*9MRim(TU11g>=ijD zRx|P{IR~^)nGwkJ`AUDYQsh2_v#cq?6<_9svX+Q9nmg)tdu0yQ@-I2p^6T1I&*~^- ze0q9mJ*D-Pwp!X^X}_UvKuaw>Tl5f9BWTAxX#lP0w6W6C+W~nf4c$Q2h->z5;%9N( z7g_(3PGuDgN}w_;mvPev!3!Cq-UDj&RtLTdK^N}EB%%BMV=$&l18O%lQKH>SbnnyS8Df%YtI6IllDl; z{Coo6(RV>TS}in_3^9M!O$<9Ygrv52)RaDWA&O)C~+6S3zG%yZ8;-P5D$l zmvfYJkbNP0g1)YPag~}p`>C^LU0vZyyr|94gF{@2F>8?VslQu4I?A?QVS!eWCNp)2Da5|E^cw zx$o>BQB5t|k?Q%KGhXzEmz;A>_tmd`hfv+ud{j<5gTGcI|A?O<58-45Hnc)Z(X+ZoS)>J#OYTzL(YJ8k1U;?I%cTm9@Z_ zm5_%{N=cM*9>4MXWjW*&eEKH11?5$xTTq6!PnPa>W^oYKRHexa$sa;L0vM3 zQ|fEdXYy4CT5eMx=gT4}pIMXC)+RtlJhK35Qn=AZ`d6`|CTgToho+sG+B4@T?dsHi zRgRKfNm6>g$$iG-s{=-$Eu?g|)IY=HeXbmf|GB#gY{=%OuudMd@wAZuhB=b*H1=#JS z{-~69soK>@{yzoy!NpEw1QU8rLqU4DCT5%4i559SJnUP@h8>eZ*2X;*8gn% zkR!Vuf1=};D#f4FV>ej0KOCRS&yiM}bhQh2{B6@jcrX~L0F zqNbO_3bZ0tB1VJjYJeIWrti5h^G%w&8dy<_9Tk)|4NgFgaEqgKXJR%AJm@JRr=~w_ z&fpGtM@CB09sdWfHBr`=rd&q9A@c@yV@8;JC8}Dv-W4{9C=TUow5xly!I~m-U+CYq zuMXo$-mD8(Mlg7l)jWeK#V+uSVMqy_LuO`@D`TK#^Wa(J%Bt#}W#rh54Ut^V%-V5f z9rCZL(yl2zyo@nmZjyr8k(FrCwghtTRSV zQFomvXP|0IywMR%Rh+IGH;sWSYb|$TmU|QiueC37WF$;ZJ(%4-OiKv2`I7TR#>Q0N z1%;aYq?mP#T4Od=8?1U}MzLJsg7!LY}3`b@yG0T4g+DhQT zwqJ=?*>s_wLj&|XP&3b zQ>I^s=NQM`k8{kiBQGFNkX5SH%zs|F=hlK}D;!PC%oT)t6R+J|3FaMJk8>Mlu{Lv- z7O{e|icL^oC~2VeR?tJiNBqS*Vyfhg2!yOdeLsv+R7_RqLTcNkx||eme=hzx-KJf%ZDI5lUNbu zE?hdpZL!RI@TCZJ8zuLIjgY)+cq8CVfHwo~0yJa)hj-z3?g219>fL~Q0e=j558%Ck z`vCtF@IJtw0NxMy0N{gw{{{FE;C}<|2YeXt5x_?Q9|Qa;fQ1h}0r)e(Cjp-Vd>Zf> zz-Iw}4)_beUjjY{_$$EY0bc+-0QhUb-vAy2d=c;^z?T7k3-~{PuK@lI@Kped75_cp z9{^tmd;{=Jz_$S32K*!7JAi)zupsOA0N)4vGvEh+e*yd};D>-80e%d42=EiYPXRvz zJPi0b;1_^j0{#u~?|}aR{3qc50{#o|E5QE)Jc9VRNAUV6;23}tDB4<;k3%DZYE`Nk zAh|!A%HtG()EKDM%et2v#TEZQN|||_mbz5*ISq_m=A zja!_mtkyC=iOH0pRryY1GU3=LEddkG$sD+gd}nf(gN|WySom|uExk24z4afc6);j? zkJ@+)@$_;6<$v>f<$~(`y1&-RSQN%WQbN(AG!?^9sJ=k9St*5;ra8w7!cL%Z zx;ch8nG%&PVeQ1+nSyM^ycTz{*o_rd%2;Lw!HZ)!7W+Uks#Y||f^iG7GQSz0wH(8i zSDG10s*`nKRYWbZlhU5|ykA~$ZPpCKPO%{PnYrr3k)KtX`;2R1r5DM~GT_eKDV9+Q zniIrvC9Q-Lqr$_q#yQ7k6)O+sMJ~=&c%2h*4Wr6?TbIL2{$yj+k`=jItbcCPUaCBtYd zs$XZFbZiw5v!%v+lq%_ZSs^`Aw$$q{Yf6|I*KzbjRKjT|cmzGr%nGA!u19CdF?#dM z#DhX+$|JUF0#-+95BBE0X>8s12h!h3zaRB>{vQXVc_EQ4!Cyt~AaBgx+Z`KSuZCBP&S%;WWiF()Eov%v zO|$p+gVuJ*r@fi21;<92RrSe>^J2!T_jnYt zS!G;kyOOep#^Oi}v8cq${40<5j9!Q4AY01ax+KS#ahO8{aXnS@Opj$8b?-_PDWiO3 zHF3r=(Kf`WNsW|C=f_%+XPU7J2eW^!q44?DIF__0+|uB~T>`%_(8`>N^Jws+OEDCv=QdDd!= z0b{6U@h77_Gjpj$ujZM#cmvD@hK1N-eXh zv(yA>C)MNWS_VuorY80ZN6uu4x6XLdc(<~}`-K=`>L!c^)fmT7=B=cWNm}x>-R$6;uv23v0~H!W2qShFMWc_+UdVy z#!JjQhPm3kb`opAJhaT5&@-i-%DWeWrrNzR#L>=RU|k#2;&fvS+w7Gcy*b9$3ZI>c z!L2dGpwhaexE&)Q=y7Jgob*4MdXd-Dz9^z{nUQ5%a9TlEtcJaxkGd9#T3za-XHrR? znxn)qC#ury)Gd$W3SOz@oNtW%U`C3LPx8mQztS;ov)UDWFZyK+t3BzH7FYT%^eDR) zjXNUnm<1lp{@hvAt5N)p)vQ3-#j}=E0HKfg01-I4>J`r3HIlQ$CfMt*n}3M-6)K*1fXmSg$Mq zH?szi*3-hSXk1-gWrL#}ZjRx|d8y268z4WD`?#4hs%tp~lrOlWqp}8Q>T)ex%#3T$ z9#R==&XLlXxwaN+35RQbwF(**vB=d}>Q`b0+(iZK?WByTdZB0uHY2+}pUvo{1qc67d%1n!ksW zq1I-#mT8P!izMF-tu?Fyk83&He$6dNL)BvyN9wEOIg)D3S+e;Oy(JnCG-sBdZvT$3&sc`_+hW^dhb*Vba<5w;e)rfv8&N3LFG zjV(=YcRJ7IRn8Mfa1rx~Q8v4aX$Dac^tlDbD+i>mcYUVeWFt8mKb z71n>HXCz;eV>I4z_{#6qKXrU$x_Cxv!*A zlk%tqaOW$3ZClr55Mr|c&!MI=*X%T{F%GJNtsV#WqboC5YZ#+UOMQ?%AcgZwSbe#Z zCwYY_3A?rq`=zeo8lp@6R#Mk=O~3px3N4&*I+~JQTa&|aQoHwP++3?b@2At0h%)3n zqy<%?pd!P=Q0N5sA%v%p024cFwvQOuPhxP!*Ph3Jl9&n|i1-2pTvu2t3Z zuTR;My_Z$w3jjMl&iz%&j(VUxIVt#^to!B7m^~4^7iQ)($J`r1sHxjE=_}lO;phG@ zi6Qr|WIK@6!}Qp=whCMad5QB)W8j*lzfy*gYw^-LX3ES@&kB1YHLwEe)Jd71Yqx3R zacw>DuXtSNf~yA8q9vpMHI=q9zS_F4@pUa4!E4R;^Lf|wGFrKH?Gm};v>qMTR%EYa z!I%PO6w!7^E~9s!7|d=T=I+_M%d4`Co0$@}h1o8S@=Eb zd6NKYfOF`%0^{8Y6Lc8H#(=1y!WejFg z?6k+HBq1@e#>@t^mB52-zY?!<&!N2ny9qpnF@WT-98>ejNmM4tBJU=w1zmVbhiFAd zqCe3EV9%MYkvX1WZHbd!QppN2CVGn5^vqaY21Vq=tK6?qW)PAiv!dR(r{^z0Zy!Y; z_J9tyV8pke@3V>aL?0Fs|OU9!aMdR z`-T11i*xKDo*O{Vk`jlE-qLl1<2PT`4562Yy-2M`W)IVkABQ=7Jva|7JHc&zU`fCu%18x4Ukk=JMNUUIKA_HTuYcZ} zj;zAb#LSc*wybGuf@vvAojiP=R`Ui|m(8NoYQpgv2K{osPD=R;c&}vM890%jME zh4QELn$ivB_i@3QXw9KzAefSd*0fb>t!L|W&6DtTe(P~=-7I7ca&p$~3L876^TdgN zH(ypiA3bez`|zjWW{*zQD*TAOP&*g1d%+;%&okhC{j zy=b>79#R~+wU?%CdCzY5mH5WmX~#;=lQQRNzShd?b{k!{Qc-&Fj*9AsAlsIWeY_;` zb3<{lWp^8owWTz#ZO%_=^19tdm+V}pU?jX2Fq|m!bgoiy(oC9fS$Z6>wdD~1Q_Mc0 z#-?F3lg^BeykYh!*FFC5se^CZd(Y+{-uuCqZM={x{AealwN!(otDFz_pu42!aRICS zd}4p%?Z4jh#h2dwzy_1*(Fd6`&`H{Zb1Up@bFd7wVO;nuC20-tc-%a zmbi==2Ps|Z;j}n1oud6{SAwrS%-_5<%W2 zoqIqp<`S$^^z0Nw9a(xwwJ$mk{N&2N_BQ=maq;?}&G;&fN1W<4hmA>a%WrmI1e6S} zs3?z_xD0yI{hxCP3x9k`oFX!UsmC7y#W`-rKm}C+jnWcR>kQukjxJ*>wt=puMLftH zY|^v?vp=Q`O1s_xO7ri16Mso!I6)7ES^rS>yqf#L`9NALi|hK~jU!qSdu!2~qj^`H zqHu#}zh2LSN5O?Tp(=RkeviLZRQEe0*O-emkx&v<8k~wTaP;)kM>UTBln!rjfIrE( zx(i%aNAI!iCvJ83`13L5GA-bbIuNUO>4*|Vc`oQBTp5=T-NDRDuJBqIF`^EVgP8YQ#nR>!HLVp#vHR-0>l3Koq#VjokO z_cDrft~B?(mBU=%U#vvO{V1})g<0ABWabjNKv`;rOUhEwAKGF}4VjV7G9rCF;=R6z z_b9ysw1+C2C}p8&{h)ShqVRUwZHQC6l}j_u@6%rQy)*XU0BrS#;6tdEB_sXB)qL-3 z%R7|swmu*B+P1NN@2B>Q(MKkIV?Te%P0z?&d;PZiHr;aCz8{}-;nlw_ePi&@MCLhQ zj1Ij-)V-w?!K?;m!PDD8+TskObivhl1~R$dQ&#D2xw=bl)c(YCuej~O*7KM>1LGIu zG4tANlNEba#SP=9#8Iy&Ey@ZtjnL3Es7_YWl-6qM<1#-&)o)WWyw*Gx&@)ka*c!p{ z8ep`N*aJMJkH_};nA(ZPGRoZfMzEw6g;}9vm;*<^9VP^)SimduJ?D_^Nsl&dEVQ_o zo~|f&%xeTwT_u3uCQr-*EAmZQC0+W3)o8cI=rRgP=O<@McsWxf27&O!6kh zskl!AZF9Vm7Fs`_41QP#$7giF=i116XD&+bDlKK@*t8MCH&c$7PtHZtCqpC zE6ri03cjLojdBOLMsTH!%t+B4;MQ4WZ*zA$^Nhyq4#()$kJ(|YzhhXROxr?EXb7x& zLagPQrE>o{?{ys@-4m|aPAcmVI(jQud$`@Paj%T+2*$K1<}vk0wX>e?1L*;hc7Y|# z3q9(t^#e6SS$&tbGRmQIkUc4D(?6`QY%gD_%~lZQKBbLtxN566@h2@vsodT1Ru&J^ zKYh(!S=_!FB#{Tt|0rWQ8X0fK)v{KT#8_z?dR(K77H$Nea4o}+n`@e5IBw)o-W{PT z?fdjH=hi6lbAr!=sQ`lhPnz@d)h>)r)Xa1+PtW>FT6U6^yX$fa=q>Y*XUsxqevOm zi_c!1A-7N-t6}8m$@{pbXkV$C7r|?Jl-Z<>tbJ;yUKM?Aa>ZZ_U**{BpTMY6T4ObQ z8KFLF`L0-HlK14xajEjN`JHfomuu3x>JRU_s4%vBLeFy7e9>MhwYC-hsB^SUpPlx~ z>a|_@YiTQ{zgBv!7k!kj$JaF*Vz^{GDxwg$8;g=2DwuL#2sN&3e z^jzaYic+NyFK3NZI2Upa&&sy4*1?l;>&kDgS6aQY4hspY04p#hFHN_uaoqZCe&J*6 zn&-WmozIjVX$93efqJ}MlO8EKva+_OX}|R7zsHsq!)d@Ze#ZR()ehOZPZ&L_&j*cr z>qr;&SgOyO#$B@!R-4zA?L->yD09df(S0XMnqg&4NaN?4ZXb-FIvX@gU0aQ5z103= zS@pa&c5$_T4EWk~-XAgW@6 zYb)+y#IrDhjj!D0NpdWiab^10G_ATeM@>1uy8JI!BAqLv@pf&sWrQ)S+t7N!D0;c; z89(Jj^s%~@_FU8Wx<<*S#Zhr3wU)9*iQ-TiL)W6N!!0?Cuce*Jlq6Lj$Xdko6jJW= z@@LoVIexnZd9<{5Xzf5_PU*|W*|kVbwFU*RNyEZ(z_GsyFjMjcYZ`aWZ&1Cqn`?Zy zvfrS(m&-LTW@Z0@;=*1&)auzEDrUjt&w7r!CQ((>dQ2>7RhM!z`Lwq>kZZP^dhyng zdrA(`WA0jBTQ%IZ#B5ehbS>7*j)-1>{Gf9e?W-o8E1APT(ypz*idThWbfjhMj#_$R zw#OVsdqG56F}6zXNvmh9Yim^Hb(r|diWiDI>ly-CQ8U^Z-4?DQNx$(1E6L*Zg7H4q2NA!8M<*(*1NMrhR4t<7dW!>alcf?X@w>!6sQf zH}h)j!1O}w6unbWvb1)csC~eAaN0Y(@k*}6uh>$SmwVe+O%7fg4>)lvV!Ouu!t18k zSCpSk&wSUcCgHyEa5>yHxg^XVuFummJdeLci-);ZXFy}*Vu*^mCI_uMEOs5>vrnSr+&Y4{I`|rX?>Ix{^ zF>9xUzPwVlWy;EPdK6vLoK}F-B5<6CefCA-J$pqldg?vxQrC+`*h7yXs(H7q>4R)VVNne$-E2Tsq|cXWh8ah z)a>*;b!}y-<~Oltt6!6GjWbol*c?}S2enMBNBQNB$wal~=c~IIap}*__w#4hs_d9D zg?vw$LXWCzx=Z+aqd0PKG=pn1R&iV}AFdQr=BHKHY)jR+l=6`T>87s5Ypl+)?(Y00 zpAD)(tk0Wkk;b!iAz^)&nH*;Q z&JfcFp6h zY+G^!)h>N@g-Uf7H88&gEZCajTCGlcfmc`IA)G2)vn+*YEHYj%sNTH7UC#v9I9}s8 z2h+c6Su$b!p@i?0qQ+cF`g-hL^WZV|(p!6rd#8lur~2_dF=BRAooc`Ss&-$GpXOrk zq3T`1Xo(pUD?2SRj9TXIF*&RQ<~qm7F1fof_u;+-a5T|}y!1i*btO9RzBAFD7{L1> zKzpJ`oJr$d8h^Z#SNjuNaJ47Vi}?Kk?9S7LZ)X$alHA32`|xhO%AMjUU9In2-;18@ zM=$kbJVr&e3(nG6jD>f{XO0Ph2m3L~`UhTWBW+P~qU0zmy3-EA-HFCS=q~(zKLut5 zooxX%Z2{eo#yUZ5S-d9&c7ei%@GgbVJ@{)!KX&3=22{shB^~zT?vz1+`_O|??Nw;^ z9Q%ypT@?F&u&PVgTn)O@-&?)Fz7svt2mA*B><{)xzv!(V&{_)b*qiJZ_M4=?tT;D- zo+Tv?8NGE=xwqmsU)2oBidBvIyQD($G%qhR=go`D`0U1A?0NS1KIn3+Z+r;fCug*G z1mrz?aBUHk&Yf%9FjtrGUdB|mq1QUl%N@8&_R@a*GNo*Ok2(jXE_+9C^50o;M=)>Z zHU9`_O0?Z8=0G>bun+V;h>_!b=)|aV7Nqfiix_`WLqSy zwrx$@BG*6Ze^UCq%B$2Xp-DaYa{HpEo&`Zwq+#+9ofE3pdM~%}(^4PCsT1Q#j!8a1 z&Oq+kCupe$@5m$4pqxH&m9)dvssn%IF!EiuK}&I3l_o@=aJJ^LuFA?nK{L(nB_;1~ zFMrS9a~a^C5&g3TGl4zFS++&=7yFGfjXgI64$D4dkM-jmdzYM-95{>K)U)t;Wy)HM zS*UO{F*E6W%bK<(c&@E2FYxwy5+g^hZS!EWkH*V=wD!D!c6zQUT&?C3Z6&!~t~QLd zl{|s6K6hUsPv`$}%!4H8RDL&X>@|;z?~0#-%*h?_xCUu!mUq20$7*YNti0pgtTm2w z!qub*Zo^%{!}>OLoZI2mAQ-)w$NJ1woe>uPd8RblIPvXp?Le<=rWPB1zry%@^t#RE z!@q@_J(^al%yafaM$l(1+`;YzH|6HjfrdTuQtGzxYjvB>*?~Rbwg1?C(t4WmIRU*8 zq*>cNv9_{Eb-m;~G|H!aY^*_a%i2<#*HY-GHhJA{W1KXZ=3Ag1 z2U@h{S^raTlShNe<8xd*9*tTpNw+rUVZUYKPYqYYXeON*9eK(d-@EhBuU~)dYi`=S z?fwT3KJ?aSQZgFN#4lb?$0IT#Wlq>}SVf8YJgq%;k5s;2MlP_|<`er9uRZBi55Dy7 z2R4{92)&az1Kp?f>sw)|WJFjSC};#b_$Csk0=nR5=*9m|Kp*UxT{yQ1Fo_n;;E(bU z{k~~@V_RY?JO(@QJM`c2;9TB{@6vwUS$@agNFX(C_xlvuTUMXY8uc~Hc%FwX@(l+3a{kR!e zM#V#@+mIHht;+V1_N!qOl;i0h7WA;mnmloiJE}Goaz4wQz?U#%6@8i6GvWKsOgTq; z)$7EMIfs+1|3E()y~3IrC!E71k5!71+oq34?U3W%xJb(nqe$onc6nUr#UAtQ5~8t* zQm$`o{qc^A;&|a)?!>M9IO7}#@l$H}xVpD`k(V$|I2FUp-QGR%n11XC)SEnfa@qE77hA3$%Jd!jh`acCLEbE-m0;D6( z(>ODaGY15xuh!#@#?#SJaT4HUz(&9(z+(WL0jB^S3pf>U8sK!mZvf5!oC!D!a5ms^ zfO7!n0?q@R4|qJ_0>BdhPXt^DxCrnhz>@(_0ki?03V0ge>41v?&j36Va0%d2z_S3C z0iF%G9MBF(0-git0CWPn0NsEdKrf&V&<_{@Yyn&W*a~i|0eqkvt2-GDuSy@2ZhF9N(6a04I* zcnRP}z)gUg0eQd}U>q<3C;%n_Q-FPdX~2HK0l*Ak7BB~x2P^;%0*Zh|z!G2?a0qZ1 za0IXdxCL+&a4X<8z)Jxy1H2s2j0~J`YOg&qGK`bNA;wtgeNl20dvywrv|W$ql^RoH zar^7>ytD+--ofa59$*sU;JV)GmXGy#Ud98G zNdNzch##54f98L-!HYJHk)W2}mbesl;{im3JPWHeBUUB>%u|}fEG^)=*DuOECGtLh zTf_28yD{H;@eOZ0UIu)CPf;tgKN?rvp)ewLHPv?Wc$z)herLP!y@6g<^Mskfbt^a58LpzmiWV;?MlVJcZCD>JJAj9({=JAgBHSe}9Iq&Ao7aLDqYX7Sa`zMcxjtMMVm^kI zag}4p+8~uF^~8$3Q4uqc8k&`Z1d#xh>q~OsMX>N;t!=2KO z;?438^0}I*OQg8fxFhNqIy-xV=ky`wMu*L6B^zXUu zi_P)DTnN6c>ppDt)PvCVB^1BW<3@g8XN3rU#WMpd93Rs@%4idbCGB%X_#*i~=p60B ztT4;^(ewbAc*n`M8icpk>c~A_m{(0Kar=&Yi|)l=&@mtT4L z8YPNJ@Hy6>TB?D^#ogK$6cwh{DRU<2`()gW9?d8{)5n{a3}U3YHZ#UFUy3-=n8$w& z@bgjK`Y3CM)iQ4Eb6RbR==Vj>2!zRrQSJg<3r7CYs9jF1E=@&QQK%N|cZ-N0O8gvE z@)O2tQ`%R1;i%e3M`JD*+UtW~hL<$~^*Z6d!}}Y0R>mpXC1`DIG}@&Y^Dzycn>!Fq zA+OMqt=?B&6{6gmxt4iY52k*))s(s%^AYvVFlwZ>rpWw5&LewqBaDxgM)H#li-y9$JggJ1BA%`gxN7PK{;UDbn9|E$5lz=D$zl z7-g-xT4tShCe@}RYwY5#dsM>Cv}|gOqSS)7ix`B1utv-y5|nZDO3LPL<3-5Xc7#MS zp}s?1pIH*iWjVYJ^N|*KW;^?@a=rA%F&~II@3hC#Yr*kerM2FyZF(f;xcT`e$4pDA z%92A}nlW#TP?Nj=a^Dl4lRNu){SHx9+O386_^~D@4bvuDhm$e`x`4SlVfe=4z7~4t zmv^1e_ylQ{nzy>WT4*daMsfE>*rPUVWf<6evXyk+O1jX^F<%dcg`G6mYO1NP)$FA8 zt!}Q(y)-PQ^q_g?q#n&U<>S__^KFMTGKD{{DL8L9b)4Jb&D-(r&KuMw#mQTn8lH+?_t&pWB4)bwO3C;M&&uK6+Q)c( zEw|{k(ZzT4LhdBLQ^$H0!LU`mwkm>g;96&5Fe`C4d%WYe{+{P+zjq}v z*K8Y?xaX$@)x*oTeQWL)cU(C1r*p5qD|>I(x4(M1%*Be*%gzl<-sAB$s6w6}^VQYE zo5FLV%1&yO8l=C4wRL6YI&F+*c0rUj(nfJ&1tIPoI$WauVZ$;NrAM<-d|1<%d-Bo} z#XT>yWhTnVyGF6uC1{Pc7^xi{0A|dGQ?~7(s~X=ZE!>Uc%UrlU!ee{b@v)N@D0}SG z*@)noT62f1SqHCCq8QP4DPjdTlC}V(y8%Nx}fGhH#@k}EtFO|jfIP2GAd+6Rw#~B zeV0aOlQ+)3+OB?#cJk+sM;ZCkDBk;o#3iepYkG81?y`9V$B>bBW<*nzvEz-7kXo^K zLuZ*uY{Pg_N@hj~*D+<~Q(jY-JZ1DLD8IsbHSLTT&9$k1%3i+&a1?p_J=k|`3pC

;N3&1so8g$(FwA*)_0#@-+kWY-RHNJ=cd=w+pL%) zuQ!}4-g+%{uFyL2O7f8mA{sOBmh^+`4k5m=J<*BJTkyFZ{5YNH#$P*LhrpM4u0zB? zcH^!z;vxC16gYQR;x>$@ta7{_?PyCAQQFwTqY0~N7D-`yr+wa}8dFMIj~ko{>>DKk zM;SM0%OBwt<%6Y=@cR`ttgdc-tIP@ZLhUn&Jkp#&FBadv0{&{XBM~EN_CZ1{LI&hM zlT-LSh}CNx_QF}AanTQWJa#;k_4k9RL0(fM&$vP_eNkTz+QYo{B=B?~`5(75V(B zdw(mAkI(kvjsB#rh`TUZew6815S|_W+ zj~*|z%eIXjJzuk^qNMSRf0S`B{W3CmFI(r(IW2xfcHG)mTWmiq{ugkdIJe^lIuk zM9#`gU724+E-d3}^sMuK!#}(F5C_nSKI}xK04pT5BPM{+0evEZfH4G&8%V>8)hDj@ zBU*qJ7Z^#Rj69m;)%S*ZyixVgA8x%=uo}yS>qL)TGV0 zpmiT>Z4$)oV48OTUIBO|;8lP-0j~zU2Jl+Ie*?S@@Or=-0KW-%Bj8PdHv{eh{1)K1 z0lx$IUBFuaZw35!z}o=72Y5T+ZouyY{s8a}z&ind2)GyUF2Fs2KLWfP@EO1#1KtC8 zFW^4F{{*}b@F#%x13m!wAmD!iJ_PvRfcpU-27CnYQNYIle+u|G;1hr^0zL`&G~hwN zqsNXN`z&5rL**~<`j>#u0sac`dB7I{4*;Hl>wkk+-cR@v-hUbJw}Afx_zK|f0AB@s z4e0p9|A8}N^S?*RS@@Lj<70N)4vGvEh+e*yd};D>-80e%d42=EiY zPXRvzJPi0b;1_^j0{#u~AAm>Dw*SQI{{{RP;8%cO1O6Z25x}E>V}JzwEUT+CwYJ_+ zB?HJ6-|r2T*NK=q;wPt^i>7%wm%_@HY-~K%wyzuWJm-O3RCZ^tPSCg(!6+o}ZzV%D z64IF(CrW!7MlC4>(k3F-BRSbrv-Y9*4%^J&UI7S&$(kvXW#r$Ng zq+CM1^HXe;cAsY9nZjIL0`Fms>}9;8wyvo)${kFag&}u)GItSFk%wG)BtJR=yfw~I z?$_NcoJTOC^MV60r$gCbyq1|2v0Jcr_rq2g@8HpvJ;Ll3&T3URfcj%A$P>Xhhf#Qx zJ7zVD!WCE6{JB>7aX+N=sC3w7VLzHU3`$;tth~?QTv1l!Y8GZYF*_$kjM2E@T;$Pm zWT&w*EkRyas;A%=$tzaGU^Is)b1+TQqSGpcYwH`;c z9!JG$JoC^kYtMhC6DG*k+H{%cz-E!I|dNR z^DOkClo*=tgYNM8pm#z;rp72MgeOZ;(6m<0;M^^ERaVO|>|RusJ)_3X?_pOSA+@rH z;gB!m5PkiC1yBbq7IBIs(-AN68)LObCouz=g>f)+9>!tEK22%y>q+I+O~GzPy@Xs! zYb=!Z*5lUXsO`t>WX~{%ReO899#}?xF5?c;Bd8S>Qe2Y5YmfDEllPvD71bLv;^)&FaF04@wTyy4(>rdq({591$!<@wuuVeJtX2NA zd!`juvI~6uQEd&hdtq%OoK)-TizZv!HeQe2F|;n^k9d>U?S6Doi#W?iJ+{7KW2xti zyLv`5W6jQZ(H~xN&NfgD%q zs({@d0@P4k$1#^N%iJ`)o`=ijJz#6z3 zPev_JKb{gAvKhb7I-^bPpSC>4tPDeIReNpeUSPa&)G-_0(X}~Qy`yd7ENyb!8`Y2T zildyJar!f2wU(IXFt&WRg7Ibb7hVsdcQw*cMq{mRr1yhX>ESV>%w#p)WzPtQ&+M1A z?3kNW&x%0YZ8QT(m$g%*v_U(kcjZ0|iYNc(E9)Veck5V|m!1$KUWw1W z+0h<2J`$|51FCp(O({`keAG8D6bJN6vF6UYtTC{JXto8+oCT~G3*ZK74RD7C*gfON zJtJ!PanJBEV0t7V58{=M&H%q8YjXJ^U|YnRPcJ@qxt;KE`|vf;UAf2BWz61S4Jt;R z%l*uP);(9LpbMAhy}w3TLakUSI4(O%;$f3K#=nH(-ye-H1KmpjudrsS^XfR=4+?e;Kc#aLMj zl=tO?{f;{D4p?imhNR<;ZBoW|NIp%RX`RZIBK1}6m!J%zR+8nIgE0q5W*%A{_v4vI zA9!<%?r?^xy{lSfSuR|937_9ZXM3VnJC4#;mYu=0K2AoTLlDn;d5hw!IJxA}dOZu4 zP@~MnvFEP$vn`=|uhJe%t6Q+uIZCgJl&TJ5t(>CY?VU7w5LZU=E!v$q zinPVG!J{B0RIXF@)nVM>&4hKAb61nng6-|$oclIs=C@7RN;<1WLkY*<9ZQ>yzh4)X z@fFOekWsd*Pht8Jqs$<+Tkri`jf+*%&ln}bOj#KR;P)|{7#dlypCz2`qpafL9s3|Y zuVZHHtHCQ;IG!`k@;6p9C_wkP3M(7yR|Q#I+>y@gF}G)Q^;nSbF@CF~W4u~xs$2ml zK_^p?g_xrv{gc$*3yD4WOc|*F8w7jXj+Am|<*%&C*uK}j9$##@kF9m)4yEGCku~9S z$6cFkHA%R7uPB|~otaRLi>jHD!K|OL){Jl(c(tSavwHNANdxuS@!hfW*fdc|ZV0D= zS2#)ot6f94LvN6oh}vuCu54^eRl(K(#rNE`*4ubi;(H3)+a0Cw%GUZY?Kga;yBl+9 zkGjd-D@UM^22_ojC~I`mX2aUUv{_2K744N?4o*H~#}@|WNZWU*>=I_x$XX(Oko*Vn z$K7%Iu!BxJs%ms0MyE^cqr)?4v5yXS*2#*i{n%-zE75};8dA8o8}A2kh4K-zk+u&r z3rA+4NDpCj^*j6(E~pJr?=kymunIC+A@bL|_=&DRvz{C(2m zYfaxbhD z<|ohbl{-LW#km2@<}Q31GUn?|WtxxQd{r5|tft0Zqz)^+IpOs+rpoxNeby*FNaQav zOQ#Js6>3=I-`g<)+b|lL#EbALg$&0$a3Vj_QR4J-(Pwo)SYphvH+htUGU-mPrOn?%GEOp^j5?-$ zKM!lS%$N?6JM3Ok)Umz%J%7(-AVXvzOHdaWf_%{q2_%E}QVK~!E9l0#G_Iw@IqtgI zk8{)}D3?$^$wCs*TEp|ol(iOoQ{iZ0X3pa+YucLNl_bjDFuXL;$WBYj+Cq8AE9H14 zH#rl#Koz~9mR|6tAy5frS?UF(q8`voFJxWHvKi1(FW&XzeFtc%59hOZ?Eo#2wlqC$ zU(*rHmZf}hCDy67cNOUialUhqXZfGCJj^|yg6TJ& zczNY;?qjlq{XMu2zOaNNqa-Lvh4F^`7xfHtA38mUa0+BHifupXJDmB zuk=D&c~Je!R=4r9rlh|oOnVdKTD@E$o|Nz9jIHPOf>PYOipsC79N*F+JHg!dg35@4_ur z_LxU&NAQoL!oY546c&cfR!`e)O5yt2&HX{>5Pq4RoZCC!z4zH|j<25oL?0%#SP5+W zqV!1ntIIuEm`}Yf}1?{mOMVowRP?7 zPTtlwV$GLSPFdXhTS?eVWhNo*!loC_#=rHw8IKR>ol0I1vxjJ%)G(SsrR$MjfBx{; z+pg%(zUR(6zW#g9xa5&v-6*SlzXV^52PGwunay~nrGWTEbwx%@lS)KY?;C#gU<|8z zpTx1y$0>MA@5h*sP>b+(sN>kNMB+kxsHLj6?g2S_)Ncg+`bKrpdZiY7GtR|tyi=I@ z%&y^TtbOllFHeoTimcufODuMPer3e4zr}j3j+$ee^K2M?DzpBCzuocV58N%3l^AHZ z@luTBAd*jz-s9QtjE10ZX&J9mpc;R_$EQM_NiVx$`<8r+UOUn|KU0!kL_Yj9=CHIP z>3z}tn8kJOs;a^M7RQr@cB0=YhpLJs{&weL%Ow@nY!fRvtF!uBuOt8C#4&fF$64LR z-`@CmxXc-Au1PEC=OA8#jbCCY6O0JHG7GN4{rjX%-rwuHV%c_5$y5N1#B(*JZ);rW zVp8u?)uH{p9ZyOb1rJ;SFJzR|KKy6=jlb>js2gw4*{_@I=am4AR40vuCXDp(zo z>+}NNB@vyJ#pfZRi*WaV!?>>qes(#kH^_Bd&a^9G8|%US9e|XWfw~G~3jNDnWT?}y zA{J#XEpf$@#-&`M>PxPm55oHUmIyhD%ovZVMp=~pdfO7D=5MYXU#>=s@q?86=K$fd zPdqu*Alj^V^<}LrQlhQ1j73O+;p3p|J=H#!YU5q@`oj#TJ?N=Lp&!j8+Q8SB@SeK$ zJU%hIv=fjkX&bfd2yDtkN}lxhd^{!QFzbj-H}Rx-Q%h8H*x&PeV@mT{!}Yg$B9?9T z&d%B^DaTbllCq1`bc3{)c(&W-Xx%# z>0DWUW_4KZ)wG0lepblIjG7FJI17q2rwvn6iCdVexQ7(<1me#K9WDKY=dft`$1Qxl zUVPF%fd@x1%GIJ$W)8E&55WE->x9S($1?9h;&j4LSVk{MPovka zp(G{$Gn1ZYnz~3baUFh-Ru<}_)a7K&1@gAtB@I=r{C=B@+2$Z=;4txlX9z}Y@na67=!dPQEdnfZRay-=InsAoi)`P62NNHg2B+7amm*GYjZ4T#z(L*Pq8_#~wd z)=8m!!MdFT;8(m#iG)>CxUO?|LDmN(zpIaHHS?*>7?EbSXSE~JJSniAInvlurAAtd z$1N`P{BDL+Db5gJMuUQv3+!^gxMk6hab>00}4jZiK5zG0&m&l$A~b7=xPxvZEK z*7gFpf*btX%k3x?&^A8>yF(am`7&-QCWY3eec&_H%Na#atG(?@J|6Kgjpy-^b4zPh z^Xx(RNwE@4N7z4=xDM-;Q3^ebagtGJ^q46+-i@=~>$Dq&(LkJRo&Lo3k~Ge}82n`c@&1g)55rB5nOiciT35pGnk=sXuHh9_t%$Rhz=L}5A-uXM`Kma8 z;JD>leZa0pfhp{R*PdlZ$5hWm^^W6MU%h{noN$t!gGZ9yQkQ3EaFk9hT5Eh_cB;ku zd1Eqai}6#j*>Td#!sGUW^|SE%)k?}LW!~ONR)`M7&7PG>%M)>umFkxP*$cIQ%kG8a z9cv?Hnr8c2SXI&<`SqH{)Z6DFKl8udL(5;&xOJkqSz(I$M6J=^HucBTrX1`8V3j2A z6&ssY(*7<0a`owrc5lRIh0h7=8FOb=x94G_6|C1|*6H)qbpn+9&b!13z{9e12jmKfW|y+`Oky zT*MuxWaeiV^2I{&EZ&)!pD2tJ=MPO!6pE+t#OU-bg^kw~Ru&(#CqJ`XfFn+ z?a$d&%+D=O&KH^Gy!OYY&SXcjv+?KlcC>HlO!u|-^rZXS(}R5-?fqRH{T&^BgZS5d z+pU45Q97A4=_NV7xPYO(b^MClvWFTb%G7X3Qp2J_4g89rhVf83R4te&6JmaG;Rqgg z>#avqeVP8Ap432lN46)`-ZPZxYabZsOSO0O^>ht%cl7r3_4hEU%5z+h*noL4BG0LM zg^LNf6DKvZ8DUSJgUyL`O}NU0AJ0sjw1Mp7GTg$~@H_RDM~(aJ=j#fxW=r&U?RS@! zp3i6Vu&)PwuJrs-p}Q^#ORDOJpx;pEfWN?7KE3|ur|~@YIP+TPu-efF%PM#>!c09S z{I#ut=l>W#cdGu$(?3PmJdeSjZWz3x1Aj;RdONe7-SM9sB_^%shCG3(F_h}g40d;B z+qVq#r!l>|Q|(*Q1D)-i1AUzxJ=uZ5RHidzYH%G@2Xl3qr5|?qqkAVXo@Vt`M)xxE zS69Dd?VOA2W6piA_*M#<5vu_-XGEIW3#%QGK48|I`eF5qNHd?xcyYHwdfeN$Ijpp-=i=R+O-eU$Z=>wV_eIu|!L)1c zH^w{6xEMvZuC-bA^gAN!X`5!Lx%s0TB-O^hm9jVQjZJTQdp9ZMttoJXab%?_igl;8 zvUfidS?{u{;auV%=yTrECv(sbi)fc$&s5)G^#`SkN@{KeJfh~)HhqU_^+{L-mN9no zWvY*kPdCgIV-fDe*v!1Jd$K~gnvt5ON5HH3b(=F(7Mx@O1WXMNQ6p@YX ziIe~Nq>vtA9NrOOy_myFAomSq<@-vpsI6Svp4o&!loQ-fHa*d6?DFhkEP}}$=x1Yf zzjH%-#r}rfBd+ojRp&5_pUCSrwywsfDs1hlj{f*m`%b$D;+atxT&0fki1!LkcygrU zls_Ki85tASJyw@fu@Zi3p30^0*Y$cFu(fpp|5NNf$>W6NaciG9?rm))ZCLe;_Zy0z zF+BjhVyYIAZ zjPWD3ZOo>xIPshy%Zr*>m3WT-durwd@f`o%cAwBD5f#q~uUEDk7G)hv4AGo9t0l^y2e@-w93jD(O(|j_25hIeqe(s zbD@cvOVN&QOD?{8EWtyfw! zv`oJC^2%yxVHhg~?a7RVVay?`&ypI5QP^ywK%if*)R?3+N8cSD4 zZUke-+JLONAmc(bPOfq$=4^1!#R516$B;9eyCrJO_F?Y1$a9r`MA^=GYSU+B zl|=PRIdFRB190Z%z+2_+*E#gnwcxqC5c{pD<1p?kBG=$@>`o~o_NC5oCHyfxxSu;= z+VdoZey8kB4$GZhIh%BQb$+Nz+^$gaMra=&r78NOxWdRj(KzaSX_s)!ih9!A1C`Z{ zrLV0MBWGG#y<9#@O`v`*ucVj)C^jhbl>75>Rva*>Ro8QHYb3*XV3d``8XvK2;wsFv z8H}2yKUG1oHSD*Pn3dE_`RV5JS|w$Z>bn?ob(j?WLk*s@x6R_rO0Mx&RLTW#{7S2V zx$pe?enPEP7s;l?D0#fsP8A$`UyHRz$vu7xGqJq{a1@eZv-0Bbb3zBw@@CxUu%9C& z(I2`ZywY%O+876>QlgGKhF*`UqK7cNX3BW2{i+{s%`+_!w8^Xp?VGYYWi*+U!kYcG z)hMqg*UJpnf-p=^q}paS^}1cL%EU&=LaoPf&c;lv#+}#`>Y(i8Dp$$~U0cspf7Lm4 zhmG-xG>g|O6ngo+jQ{Y{idqqDT4~+2&0m>I^+DLGNUov!hn&Oh6@h*aQz}rH5ldp% z8k({{a&kS=NoLU5&jb3c9&%IwfTtK)9hUIXxIy-CPFDl04t%Z^!9r`9`@u=f}6O_`%A?bHj<3|QCa z^0z$fywCPBjB=3Aw$c8PYbt4nN4@@B9b+43+8Kq7kUkpezaU*vr_|?6TGO75C_SFF zjwYiGx5JlVVk2WYf^l-qgBGO(SNj-9i%|VO^(g(%wPWX}t(?K9&8u?mC=I`m5{W54x^T60-(ZU8;oh4Vv3Z@IY_mhO>Ei57YV&9Kg1ALwHcn6ma>Cwhrglg9ro zqQBUK831e2u`VB}s2hEx>E~w9rW+Rcbw6Qi`w8=9N{pV9QMU=ol+Y`Hz0ymGU(eJ& z@S;x4Qu1$dCGsiq`aUsJStpYmD~);CC$4g4vQ8$eWs={?ciqNJ)j5f4-#_6#B`GPl zq4kXAYJlTi?E4}(m+~UR%dp!&D+B@0^IBwZ8zmh`hIMjgZEl(J#C}W z9T!gwPW}W?My)HkS_SMm(aLfQs|M88KX$LUD&eS6R%^ZAZ>;W6s~|C_>~kVX0qZda ztBWykTWVVOqjS#l;Jnu!AGcyW?K&We60Zs;N1Z)C42Cx}$3V@rboeDS&zELLqi6&nKEtbdKS!8lTO=D432U;Ch$f3T6 zs)WG!QPwTcctx4fzgoO(tSVJ5a3QwLl;KPsVdI&`D6(3f9!1x%t1phxHC{4^80|TX z(X8+_Ukhn!!ZTW~%{jU9)*ta0Wv!$}cuSD9Xr2p}uULgK9#)k4eID@JJg!_S&ZIC{X^+-=$sV_Jt)ZbgpkMxXE zj;tPOBP(C6HcHCPXahY*)}vWz5t5Z8%{iewr>*EcA#Nsqt>Oo_@zNg5I7MrESL(fx zmdBvoXo)0@3iD-IWbLu>N|=p%usA|;ZEk*Su8xa}yQ~%ztzt^2VHDu%JgpXy>#CHk z=5DZ*eImu$gmd1w&qXgc_K&2}1Y28YT93FLhvkYkMrJtiAVu?_{HIrz=vQ9mY|yG* zL_P;A0mv%XL7H;VooZ!iG~!nGMBL|ft!r!}wW(TBuU(I#U5}#m?#(CH!u2TH^(b0h zqf)JkYGrH<$=zR#N=o)Nwr<-KxYBv0U8TQh+XKf{9h7`r9bd2i!#}?3)y60t9xO|_ t9CMC$9)MY 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 content - + + + /usercontrols/propertyTest.ascx + + + /umbraco/dashboard/startupdashboardintro.ascx diff --git a/umbraco/presentation/umbraco/dashboard.aspx.cs b/umbraco/presentation/umbraco/dashboard.aspx.cs index 815953631c..14f5cd8b62 100644 --- a/umbraco/presentation/umbraco/dashboard.aspx.cs +++ b/umbraco/presentation/umbraco/dashboard.aspx.cs @@ -3,6 +3,7 @@ using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; +using System.Reflection; using System.Web; using System.Web.SessionState; using System.Web.UI; @@ -88,6 +89,27 @@ namespace umbraco.cms.presentation { Control c = LoadControl(path); + // set properties + Type type = c.GetType(); + if (type != null) + { + foreach (XmlAttribute att in uc.Attributes) + { + string attributeName = att.Name; + string attributeValue = parseControlValues(att.Value).ToString(); // parse special type of values + + + PropertyInfo prop = type.GetProperty(attributeName); + if (prop == null) + { + continue; + } + + prop.SetValue(c, Convert.ChangeType(attributeValue, prop.PropertyType), null); + + } + } + //resolving files from dashboard config which probably does not map to a virtual fi tab.Controls.Add(AddPanel(uc, c)); } @@ -135,6 +157,37 @@ namespace umbraco.cms.presentation } } + private object parseControlValues(string value) + { + if (!String.IsNullOrEmpty(value)) + { + if (value.StartsWith("[#")) + { + value = value.Substring(2, value.Length - 3).ToLower(); + switch (value) + { + case "usertype": + return BusinessLogic.User.GetCurrent().UserType.Alias; + case "username": + return BusinessLogic.User.GetCurrent().Name; + case "userlogin": + return BusinessLogic.User.GetCurrent().LoginName; + case "usercontentstartnode": + return BusinessLogic.User.GetCurrent().StartNodeId; + break; + case "usermediastartnode": + return BusinessLogic.User.GetCurrent().StartMediaId; + break; + default: + return value; + break; + } + } + } + + return value; + } + private Control AddPanel(XmlNode node, Control c) { LiteralControl hide = AddShowOnceLink(node); diff --git a/umbraco/presentation/web.config b/umbraco/presentation/web.config index 49c948647f..3eb293a29d 100644 --- a/umbraco/presentation/web.config +++ b/umbraco/presentation/web.config @@ -33,8 +33,8 @@ - - + + diff --git a/umbraco/presentation/web.config.UMBRACOELISE.xslt b/umbraco/presentation/web.config.UMBRACOELISE.xslt index 20e07d1d59..a5b4e0831b 100644 --- a/umbraco/presentation/web.config.UMBRACOELISE.xslt +++ b/umbraco/presentation/web.config.UMBRACOELISE.xslt @@ -4,7 +4,7 @@ - server=.\sqlexpress;database=41RC;user id=DBUSER;password=DBPASSWORD + server=.\sqlexpress;database=CNUG;user id=DBUSER;password=DBPASSWORD