Page MenuHomeIn-Portal Phabricator

modern-store
No OneTemporary

File Metadata

Created
Sun, Feb 2, 10:46 PM

modern-store

Index: branches/1.0.x/login/register.tpl
===================================================================
--- branches/1.0.x/login/register.tpl (nonexistent)
+++ branches/1.0.x/login/register.tpl (revision 14759)
@@ -0,0 +1,81 @@
+<link rel="stylesheet" type="text/css" href="<inp2:m_Compress files='inc/profile.css'/>" charset="<inp2:lang.current_Field name='Charset'/>"/>
+
+<script type="text/javascript">
+ FormManager.resetFields('u.register');
+</script>
+
+<inp2:m_Include template="elements/forms.elm" strip_nl="2"/>
+<inp2:u.register_FormName name="registration"/>
+
+<div class="profile registerpage">
+ <div class="profile-title">
+ <h1>Registration</h1>
+ <p class="req">Required fields are marked by <span class="star">*</span></p>
+ <div class="clear"></div>
+ </div>
+
+ <form method="post" action="<inp2:m_FormAction/>" id="register_form" class="form profile-form">
+ <div class="halfcol">
+ <inp2:m_RenderElement name="inp_edit_box" prefix="u.register" field="FirstName"/>
+ <inp2:m_RenderElement name="inp_edit_box" prefix="u.register" field="LastName"/>
+ <inp2:m_RenderElement name="inp_edit_box" prefix="u.register" field="Company"/>
+ <inp2:m_RenderElement name="inp_edit_box" prefix="u.register" field="Email"/>
+ <inp2:m_RenderElement name="inp_edit_radio" prefix="u.register" field="SubscribeToMailing"/>
+ <inp2:m_RenderElement name="inp_edit_password" prefix="u.register" field="Password"/>
+ </div>
+
+ <div class="halfcol halfcol-last">
+ <inp2:m_RenderElement name="inp_edit_address" prefix="u.register" field="Street" field2="Street2" title="lu_fld_Address"/>
+ <inp2:m_RenderElement name="inp_edit_options" prefix="u.register" field="Country" has_empty="1" empty_label="lu_opt_SelectCountry"/>
+ <inp2:m_RenderElement name="inp_edit_options" prefix="u.register" field="State" has_empty="1"/>
+
+ <!-- TODO: preload states by country -->
+
+ <inp2:m_RenderElement name="inp_edit_box" prefix="u.register" field="Zip" row_class="alt2"/>
+ <inp2:m_RenderElement name="inp_edit_box" prefix="u.register" field="Phone"/>
+ </div>
+ <div class="clear"></div>
+
+ <div class="terms">
+ <label><input type="checkbox" id="terms" name="terms" value="yes" checked="true" />&nbsp;I Agree to Terms and Conditions</label>
+ </div>
+
+ <inp2:m_RenderElement design="inp_edit_buttons">
+ <input type="submit" value="Register" class="green-button" />&nbsp;&nbsp;&nbsp;
+ <input type="reset" value="Cancel" class="grey-button" />
+ </inp2:m_RenderElement>
+
+ <input type="hidden" name="forms[u.register]" value="<inp2:u.register_FormName/>"/>
+ </form>
+</div>
+
+<script type="text/javascript">
+ $(document).ready(
+ function () {
+ FormManager.registerForm(
+ {
+ prefix: 'u.register',
+ save_event: 'OnRegisterAjax',
+ id: '<inp2:u.register_Field name="PortalUserId"/>',
+ form_id: 'register_form'
+ }
+ );
+
+ $('#register_form').submit(
+ function ($e) {
+ FormManager.submitForm('u.register');
+
+ return false;
+ }
+ );
+
+ $('input[type=reset]', '#register_form').click(
+ function ($e) {
+ FormManager.closeForm('u.register');
+
+ return false;
+ }
+ );
+ }
+ );
+</script>
Property changes on: branches/1.0.x/login/register.tpl
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Index: branches/1.0.x/login
===================================================================
--- branches/1.0.x/login (nonexistent)
+++ branches/1.0.x/login (revision 14759)
Property changes on: branches/1.0.x/login
___________________________________________________________________
Added: bugtraq:logregex
## -0,0 +1,2 ##
+(?:[Bb]ugs?|[Ii]ssues?|[Rr]eports?|[Ff]ixe?s?|[Rr]esolves?)+\s+(?:#?(?:\d+)[,\.\s]*)+
+(\d+)
\ No newline at end of property
Added: bugtraq:number
## -0,0 +1 ##
+true
\ No newline at end of property
Added: bugtraq:url
## -0,0 +1 ##
+http://tracker.in-portal.org/view.php?id=%BUGID%
\ No newline at end of property
Added: tsvn:autoprops
## -0,0 +1,19 ##
+*.php = svn:eol-style=LF;svn:keywords=Id
+*.tpl = svn:eol-style=LF
+*.sql = svn:eol-style=LF
+*.lang = svn:eol-style=LF
+*.sh = svn:eol-style=LF;svn:executable
+*.txt = svn:eol-style=LF
+*.html = svn:eol-style=LF
+*.htm = svn:eol-style=LF
+*.css = svn:eol-style=LF
+*.js = svn:eol-style=LF
+*.xml = svn:eol-style=LF
+.htaccess = svn:eol-style=LF
+.smsignore = svn:eol-style=LF
+COPYRIGHT = svn:eol-style=LF
+CREDITS = svn:eol-style=LF
+INSTALL = svn:eol-style=LF
+LICENSE = svn:eol-style=LF
+LICENSES = svn:eol-style=LF
+README = svn:eol-style=LF
\ No newline at end of property
Index: branches/1.0.x/inc/cart.css
===================================================================
--- branches/1.0.x/inc/cart.css (revision 14758)
+++ branches/1.0.x/inc/cart.css (revision 14759)
@@ -1,448 +1,448 @@
@charset "UTF-8";
/* Cart Blocks
*******************************************************************************/
.steps {
margin: 0 auto;
width: 535px;
}
.steps li {
background: url(@templates_base@/img/icon-step.png) no-repeat 100% 40%;
color: #bdbdbd;
float: left;
font-size: 9pt;
font-weight: bold;
padding: 0 85px 0 38px;
text-transform: uppercase;
}
.steps li:first-child {
padding-left: 0;
}
.steps li:last-child {
background: none;
padding-right: 0;
}
.steps li i {
display: block;
height: 36px;
margin: 0 auto 5px;
width: 40px;
}
.steps li.step1 i { background: url(@templates_base@/img/cart-steps.png) no-repeat 0 0; }
.steps li.step2 i { background: url(@templates_base@/img/cart-steps.png) no-repeat 0 -36px; }
.steps li.step3 i { background: url(@templates_base@/img/cart-steps.png) no-repeat 0 -72px; }
.steps li a {
color: #bdbdbd;
text-decoration: none;
}
.steps li.step1.active i { background: url(@templates_base@/img/cart-steps.png) no-repeat -40px 0; }
.steps li.step2.active i { background: url(@templates_base@/img/cart-steps.png) no-repeat -40px -36px; }
.steps li.step3.active i { background: url(@templates_base@/img/cart-steps.png) no-repeat -40px -72px; }
.steps li.active a { color: #878787; }
.cart-detail {
background-color: #fff;
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
margin-top: 10px;
padding: 15px 30px 50px 30px;
width: 100%;
}
.cart-detail h1 {
color: #525252;
font: 1.538em Verdana,Arial,Tahoma,Sans-Serif;
padding: 0 0 20px 0;
}
.cart-detail .halfcol {
border-right: 1px dotted #aeaeae;
float: left;
margin: 0 14px 0 0;
padding: 0 14px 0 0;
width: 465px;
}
.cart-detail .halfcol-last {
border-right: none;
margin: 0;
padding: 0;
position: relative;
}
.cart-detail .halfcol-last .badge-optional {
background: url(@templates_base@/img/badge-optional.png) no-repeat 0 0;
height: 40px;
position: absolute;
top: -44px; left: -20px;
width: 102px;
}
.cart-detail .fieldset {
background: url(@templates_base@/img/bg-form-fieldset.jpg) repeat-x 0 0;
color: #000;
font-weight: bold;
height: 26px;
line-height: 26px;
padding: 0 0 10px 50px;
position: relative;
}
.cart-detail.receipt .fieldset { padding-left: 16px; }
.cart-detail .fieldset .link {
font-weight: normal;
position: absolute;
right: 15px;
}
fieldset { padding: 0 0 15px; }
.firstline { min-height: 140px; padding: 20px 0 0; position: relative; }
.firstline .login-alt {
color: #66c133;
font-size: 1.154em;
font-weight: bold;
padding: 5px 0 20px 50px;
}
.firstline .login-alt .plashka {
right: 194px;
}
.firstline .login-alt .plashka-sel {
margin: -6px 0 0 5px;
}
.checkout-form label {
display: block;
font-weight: bold;
padding-bottom: 3px;
}
.checkout-form p {
clear: both !important;
float: left;
padding: 5px 0 5px 50px;
}
.checkout-form p.alt1 {
clear: none !important;
padding: 5px 10px 5px 50px;
width: 170px;
}
.checkout-form p.alt2 {
clear: none !important;
padding: 5px 0;
width: 120px;
}
.checkout-form .field { width: 300px; }
.checkout-form select.field { width: 311px; }
.field.statusSuccess {
background: url(@templates_base@/img/bg-field-success.jpg) repeat-x 0 0;
border: 1px solid #80d04d;
}
.field.statusError {
background: url(@templates_base@/img/bg-field-error.jpg) repeat-x 0 0;
border: 1px solid #d80000;
}
.checkout-form p.alt1 .field,
.checkout-form p.alt2 .field,
.checkout-form p.pasfield1 .field,
.checkout-form p.pasfield2 .field {
width: 100%;
}
.checkout-form .creditcard .field { width: 250px; }
.checkout-form .creditcard p.alt1.expdate .field { width: 78px; }
.checkout-form .creditcard p.alt2 .field { width: 70px; }
.creditcards { padding: 0 0 0 50px; }
.creditcards span {
display: inline-block;
height: 45px;
}
.creditcards span:first-child {
border-right: 1px solid #d3d3d3;
margin-right: 10px;
padding-right: 15px;
}
.password-block {
border: 1px solid #e3e3e3;
float: right;
padding: 12px 20px;
width: 390px;
}
.password-block p {
clear: none !important;
padding: 0 30px 0 0;
}
.password-block p.pasfield1 {
width: 150px;
}
-#result-password { display: none; font-weight: bold; }
.colorbar {
display: inline-block;
height: 8px;
width: 29px;
}
-#result-password .meterDefault { color: #aaa; }
-#result-password .meterFail { color: #daa; }
-#result-password .meterWarn { color: #fd6; }
-#result-password .meterGood { color: #ada; }
-#result-password .meterExcel { color: #66c133; }
-#result-password .colorbar.meterDefault { background-color: #ddd; }
-#result-password .colorbar.meterFail { background-color: #fdd; }
-#result-password .colorbar.meterWarn { background-color: #feb; }
-#result-password .colorbar.meterGood { background-color: #dfd; }
-#result-password .colorbar.meterExcel { background-color: #66c133; }
+.password-strength { display: none; font-weight: bold; }
+.password-strength .meterDefault { color: #aaa; }
+.password-strength .meterFail { color: #daa; }
+.password-strength .meterWarn { color: #fd6; }
+.password-strength .meterGood { color: #ada; }
+.password-strength .meterExcel { color: #66c133; }
+.password-strength .colorbar.meterDefault { background-color: #ddd; }
+.password-strength .colorbar.meterFail { background-color: #fdd; }
+.password-strength .colorbar.meterWarn { background-color: #feb; }
+.password-strength .colorbar.meterGood { background-color: #dfd; }
+.password-strength .colorbar.meterExcel { background-color: #66c133; }
.checkout-form .safe-shop {
background: url(@templates_base@/img/safe-shop.jpg) no-repeat 0 40px;
min-height: 160px;
margin: 115px 0 115px 50px;
}
.checkout-form .safe-shop .title {
color: #389901;
font: bold 1.462em Verdana,Arial,Tahoma,Sans-Serif;
padding-left: 18px;
}
.checkout-form .safe-shop ul.list {
float: left;
padding: 10px 0 0 130px;
}
.checkout-form .safe-shop ul.list li {
background: url(@templates_base@/img/icon-galka.png) no-repeat 0 50%;
color: #313030;
font-weight: bold;
padding: 6px 0 6px 25px;
}
dl.total { padding: 20px 0 0; width: 240px; }
dl.total dt,
dl.total dd {
float: left;
font-weight: bold;
padding: 0 0 10px;
text-align: right;
width: 120px;
}
dl.total dt.discount { color: #bf0000; }
dl.total dd { font-size: 1.385em; }
dl.total dd span { font-size: 15px; }
dl.total dd.price1 { color: #333; font-size: 1.538em; }
dl.total dd.price2 { color: #bf0000; }
dl.total dd.price3 { font-weight: normal; }
dl.total dd.price4 { color: #3f911f; font-size: 1.538em; }
.cart-detail .terms {
text-align: right;
width: 240px;
}
.place-button,
.place-grey-button,
.checkout-button,
.checkout-grey-button {
background: url(@templates_base@/img/order-left.jpg) no-repeat 0 0;
color: #faffed;
display: inline-block;
font-size: 1.385em;
font-weight: bold;
text-shadow: #000 0px 1px 1px;
text-decoration: none;
}
.place-button span,
.place-grey-button span,
.checkout-button span,
.checkout-grey-button span {
background: url(@templates_base@/img/order-right.jpg) no-repeat 100% 0;
display: inline-block;
height: 37px;
line-height: 37px;
padding: 0 50px 0 30px;
}
.place-button:hover,
.place-grey-button:hover,
.checkout-button:hover,
.checkout-grey-button:hover { color: #faffed; }
.checkout-button span {
background: url(@templates_base@/img/checkout-right.jpg) no-repeat 100% 0;
padding: 0 30px 0 20px;
}
.place-grey-button {
background: url(@templates_base@/img/checkout-grey-left.jpg) no-repeat 0 0;
}
.place-grey-button span {
background: url(@templates_base@/img/order-grey-right.jpg) no-repeat 100% 0;
}
.checkout-grey-button {
background: url(@templates_base@/img/checkout-grey-left.jpg) no-repeat 0 0;
margin-top: 20px;
}
.checkout-grey-button span {
background: url(@templates_base@/img/checkout-grey-right.jpg) no-repeat 100% 0;
padding: 0 30px 0 20px;
}
.continue-button {
background: url(@templates_base@/img/bg-button-continue-right.jpg) no-repeat 100% 0;
color: #3c3c3c;
display: inline-block;
font-weight: bold;
margin-right: 20px;
text-decoration: none;
}
.continue-button span {
background: url(@templates_base@/img/bg-button-continue-left.jpg) no-repeat 0 0;
display: inline-block;
height: 26px;
line-height: 26px;
padding: 0 20px 0 25px;
}
.continue-button:hover {
color: #3c3c3c;
}
.cart-detail.receipt .success-order {
background: url(@templates_base@/img/success.png) no-repeat 30px 30px;
border-bottom: 1px solid #d0d0d0;
margin-bottom: 25px;
padding: 0 0 25px 130px;
}
.cart-detail.receipt .success-order .links {
float: right;
padding: 0;
}
.cart-detail.receipt .success-order .links a.link-print {
background: url(@templates_base@/img/icon-print.jpg) no-repeat 0 0;
display: inline-block;
font-weight: bold;
height: 32px;
line-height: 32px;
padding: 0 20px 0 40px;
}
.cart-detail.receipt .success-order .links a.link-download {
background: url(@templates_base@/img/icon-download.jpg) no-repeat 0 0;
display: inline-block;
font-weight: bold;
height: 32px;
line-height: 32px;
padding: 0 0 0 40px;
}
.cart-detail.receipt .success-order .green {
color: #009f00;
font: 1.538em Tahoma,Verdana,Arial,Sans-Serif;
}
.cart-detail.receipt .success-order p {
padding: 5px 0;
}
.cart-detail.receipt p { padding-left: 16px; }
.cart-detail.receipt dl.info {
padding-left: 16px;
}
.cart-detail.receipt dl.info dt {
clear: both !important;
float: left;
font-weight: bold;
padding: 5px 15px 5px 0;
width: 90px;
}
.cart-detail.receipt dl.info dd {
float: left;
padding: 5px 15px 5px 0;
}
.cart-detail.receipt .items {
border-bottom: 1px solid #d1d1d1;
margin-top: 30px;
width: 100%;
}
.cart-detail.shoppingcart .items {
margin-top: 0;
}
.cart-detail.receipt .items thead {
background: url(@templates_base@/img/bg-form-fieldset.jpg) repeat-x 0 0;
border: 1px solid #adadad;
}
.cart-detail.receipt .items th {
color: #000;
font-weight: bold;
padding: 5px 10px;
}
.cart-detail.receipt .items td {
border-top: 1px solid #d1d1d1;
color: #000;
padding: 10px;
text-align: center;
vertical-align: middle;
}
.cart-detail.receipt .items tr:first-child td {
border-top: none;
}
.cart-detail.receipt .items td.options-td {
background-color: #f7f7f7;
border-top: none;
color: #686767;
text-align: left;
}
.cart-detail.receipt .items td.options-td .sel-options { float: left; padding: 0 20px 0 0; }
.cart-detail.receipt .items .item-img { width: 70px; }
.cart-detail.receipt .items .item-total { font-weight: bold; }
.cart-detail.receipt .items .item-title {
color: #333;
font-weight: bold;
text-align: left;
}
.cart-detail.receipt .items .item-quantity { position: relative; }
.cart-detail.receipt .items .item-quantity .field { text-align: center; width: 30px; }
.formStatus {
position: absolute;
top: 37px;
left: 15px;
display: block;
z-index: 5000;
cursor: pointer;
}
.formStatus .formContent {
width: 100%;
position:relative;
z-index:5001;
color: #fff;
white-space: nowrap;
font-family: Arial;
font-size: 12px;
box-shadow: 0 0 3px #444;
-moz-box-shadow: 0 0 3px #444;
-webkit-box-shadow: 0 0 3px #444;
padding: 4px 10px 4px 10px;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
.formStatus .formArrow {
height: 11px;
margin: -34px 0 0 22px;
position: relative;
width: 21px;
z-index: 5006;
}
.formStatus.formSuccess .formContent { background: #398d1d url(@templates_base@/img/validate/con-success.png) repeat-x 0 0; }
.formStatus.formSuccess .formArrow { background: url(@templates_base@/img/validate/con-success-arrow.png) no-repeat 0 0; }
.formStatus.formError .formContent { background: #990000 url(@templates_base@/img/validate/con-error.png) repeat-x 0 0; }
.formStatus.formError .formArrow { background: url(@templates_base@/img/validate/con-error-arrow.png) no-repeat 0 0; }
.cart-detail.receipt dl.total { float: right; padding-right: 30px; }
.cart-detail.receipt .discount-block {
float: left;
padding: 20px 0 0;
width: 300px;
}
.cart-detail.receipt .discount-block p { padding: 5px 0; }
.cart-detail.receipt .discount-block .field { width: 170px; }
.cart-detail.receipt .discount-block .num-discount { position: relative; }
.cart-detail.receipt .discount-block .formStatus { left: -15px; }
.cart-detail.shoppingcart h1 { float: left; }
.cart-detail.shoppingcart .buttons-right { float: right; text-align: right; }
.cart-detail.shoppingcart .buttons-right dl.total { float: none; padding-right: 0; }
Index: branches/1.0.x/inc/profile.css
===================================================================
--- branches/1.0.x/inc/profile.css (revision 14758)
+++ branches/1.0.x/inc/profile.css (revision 14759)
@@ -1,111 +1,118 @@
@charset "UTF-8";
/* Profile Blocks
*******************************************************************************/
.profile {
background-color: #fff;
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
padding: 20px 30px;
width: auto;
}
.profile.registerpage {
border: none;
padding: 0 30px;
width: 680px;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
}
.profile-title {
border-bottom: 1px solid #d0d0d0;
margin-bottom: 15px;
padding-bottom: 15px;
}
.profile h1 {
color: #525252;
float: left;
font: 1.538em Verdana,Arial,Tahoma,Sans-Serif;
}
.profile p.req {
color: #3e85d2;
float: right;
font-size: 1em;
font-weight: bold;
padding-top: 10px;
}
.profile .halfcol {
float: left;
padding: 0 15px 0 0;
width: 315px;
}
.profile .halfcol-last {
padding: 0;
position: relative;
}
.profile-form label {
display: block;
font-weight: bold;
padding-bottom: 3px;
}
+.field-content label {
+ display: inline;
+ font-weight: normal;
+ padding: 0;
+}
.red {
color: #cd0000;
font-weight: normal;
padding: 0 0 0 5px;
}
.profile-form p {
clear: both !important;
float: left;
padding: 5px 0;
}
.profile-form .field { width: 270px; }
.profile-form .alt2 .field { width: 150px; }
.field.statusSuccess {
background: url(@templates_base@/img/bg-field-success.jpg) repeat-x 0 0;
border: 1px solid #80d04d;
}
-.field.statusError {
+.field.statusError, .error .field {
background: url(@templates_base@/img/bg-field-error.jpg) repeat-x 0 0;
- border: 1px solid #d80000;
+ border: 1px solid #d80000 !important;
}
.terms {
text-align: center;
width: 100%;
}
.password-block {
display: none;
float: left;
padding: 5px 0;
position: relative;
width: 100%;
}
.registerpage .password-block { display: block; }
.password-block p {
clear: none !important;
padding: 0 15px 0 0;
}
.password-block p.pasfield2 { padding: 0; }
.password-block .field { width: 121px; }
#change-password { color: #267bd1; }
-#result-password { display: none; font-weight: bold; }
+
+
.colorbar {
display: inline-block;
height: 8px;
width: 29px;
}
-#result-password .meterDefault { color: #aaa; }
-#result-password .meterFail { color: #daa; }
-#result-password .meterWarn { color: #fd6; }
-#result-password .meterGood { color: #ada; }
-#result-password .meterExcel { color: #66c133; }
-#result-password .colorbar.meterDefault { background-color: #ddd; }
-#result-password .colorbar.meterFail { background-color: #fdd; }
-#result-password .colorbar.meterWarn { background-color: #feb; }
-#result-password .colorbar.meterGood { background-color: #dfd; }
-#result-password .colorbar.meterExcel { background-color: #66c133; }
+.password-strength { display: none; font-weight: bold; }
+.password-strength .meterDefault { color: #aaa; }
+.password-strength .meterFail { color: #daa; }
+.password-strength .meterWarn { color: #fd6; }
+.password-strength .meterGood { color: #ada; }
+.password-strength .meterExcel { color: #66c133; }
+.password-strength .colorbar.meterDefault { background-color: #ddd; }
+.password-strength .colorbar.meterFail { background-color: #fdd; }
+.password-strength .colorbar.meterWarn { background-color: #feb; }
+.password-strength .colorbar.meterGood { background-color: #dfd; }
+.password-strength .colorbar.meterExcel { background-color: #66c133; }
Index: branches/1.0.x/inc/js/jquery.scripts.js
===================================================================
--- branches/1.0.x/inc/js/jquery.scripts.js (revision 14758)
+++ branches/1.0.x/inc/js/jquery.scripts.js (revision 14759)
@@ -1,86 +1,80 @@
+function jq($selector) {
+ return $selector.replace(/(\[|\]|\.)/g, '\\$1');
+}
+
function DBlocks() {
var $me = this;
this.selectors = ['#lang', '#currency', '#login', '#login-alt'];
$(document).ready(
function () {
$me.init();
}
);
}
DBlocks.prototype.init = function () {
var $manager = this;
$( this.selectors.join(', ') ).click(
function($e, $now) {
var $me = $(this),
$parent = $me.parent();
if ( $parent.is('.plashka-sel') ) {
$parent.removeClass('plashka-sel');
if ( $now === undefined || $now === false ) {
$('#' + $me.attr('id') + '-sel').fadeOut();
}
else {
$('#' + $me.attr('id') + '-sel').hide();
}
}
else {
$manager.hideOthers($me);
$parent.addClass('plashka-sel');
$('#' + $me.attr('id') + '-sel').fadeIn();
}
return false;
}
);
$('.icon-close').click(
function() {
$('#login,#login-alt').parent().removeClass('plashka-sel');
$('#login-sel, #login-alt-sel').fadeOut();
return false;
}
);
}
DBlocks.prototype.hideOthers = function ($current) {
$( this.selectors.join(', ') ).not($current).each(
function () {
var $me = $(this),
$parent = $me.parent();
if ( $parent.is('.plashka-sel') ) {
$me.trigger('click', [true]);
}
}
);
}
$(document).ready(function()
{
$('#change-password').click(
function($e) {
$('#password-show').hide();
$('#password-block').fadeIn();
return false;
}
);
-
- $('#password').keyup(
- function($e) {
- var $password = $('#password').val();
-
- $('#result-password')
- .html( passwordStrength($password) )
- .show();
- }
- );
});
new DBlocks();
\ No newline at end of file
Index: branches/1.0.x/inc/js/form_manager.js
===================================================================
--- branches/1.0.x/inc/js/form_manager.js (nonexistent)
+++ branches/1.0.x/inc/js/form_manager.js (revision 14759)
@@ -0,0 +1,507 @@
+function FormManager() { }
+
+FormManager.init = function ($settings) {
+ $.ajaxSetup( {cache: false} );
+
+ this.url = '';
+ this.fieldMask = '#PREFIX#[#ID#][#FIELD_NAME#]';
+
+ this.noErrorsHTML = ''
+ this.checkTimeout = 1000;
+ this.pendingChecks = {};
+
+ this.fields = {};
+ this.fieldTypes = {};
+ this.forms = {};
+ this.fieldWatermarks = {};
+
+ this.xhrRequests = [];
+
+ $.extend(this, $settings);
+}
+
+FormManager.resetFields = function ($prefix) {
+ this.fields[$prefix] = [];
+}
+
+FormManager.registerField = function ($prefix, $field, $watermark, $field_type) {
+ // fields are registered before form -> store them in separate array
+ if (!this.fields[$prefix]) {
+ this.fields[$prefix] = [];
+ }
+
+ if ($watermark === undefined) {
+ $watermark = '';
+ }
+
+ this.fieldWatermarks[$prefix + '_' + $field] = $watermark;
+
+ this.fields[$prefix].push($field);
+
+ if ($field_type !== undefined) {
+ this.fieldTypes[$prefix + '_' + $field] = $field_type;
+ }
+}
+
+FormManager.getFieldMask = function ($prefix) {
+ return this.fieldMask.replace('#PREFIX#', $prefix).replace('#ID#', this.form_param($prefix, 'id'));
+}
+
+FormManager.getField = function ($prefix, $field, $prepend, $append) {
+ if ($prepend === undefined) {
+ $prepend = '';
+ }
+
+ if ($append === undefined) {
+ $append = '';
+ }
+
+ var $control_id = this.getFieldMask($prefix).replace('#FIELD_NAME#', $field);
+
+ return document.getElementById($prepend + $control_id + $append);
+}
+
+FormManager.getBlurFields = function ($prefix, $field) {
+ var $field_mask = this.getFieldMask($prefix);
+
+ switch ( this.fieldTypes[$prefix + '_' + $field] ) {
+ case 'swf_upload':
+ return this.getField($prefix, $field, undefined, '[tmp_names]');
+ break;
+
+ case 'date':
+ $field += '_date';
+ break;
+
+ case 'radio':
+ return $("input[name='" + jq($field_mask.replace('#FIELD_NAME#', $field)) + "']");
+ break;
+
+ case 'checkbox':
+ return get_control($field_mask, $field, undefined, '_cb');
+ break;
+
+ case 'checkboxes':
+ return $("input[id^='" + jq($field_mask.replace('#FIELD_NAME#', $field)) + "_']");
+ break;
+ }
+
+ return this.getField($prefix, $field);
+}
+
+FormManager.registerForm = function ($settings) {
+ var $defaults = {
+ url: false, // url for form submission
+ prefix: '', // unit prefix, used in the form
+ enabled: true, // form submit enabled
+ enabledTimer: null, // timer that performs form-resubmit countdown
+ save_event: '', // event to use for form data processing
+ id: 0, // id of item being add/edited on a form
+ form_id: '', // form id to work with
+ before_close: '', // before window close callback
+ validation_failure: '', // on validate failure callback
+ immediate_validation: true // perfom validation on blur
+ }
+
+ this.forms[$settings.prefix] = {};
+ $.extend(this.forms[$settings.prefix], $defaults, $settings);
+
+ // when form is registred, then all it's fields should also be registred
+
+ if ( !this.form_param($settings.prefix, 'immediate_validation') ) {
+ return ;
+ }
+
+ var $me = this;
+
+ $( this.fields[$settings.prefix] ).each(
+ function () {
+ $( $me.getBlurFields($settings.prefix, this) ).blur(
+ function ($e) {
+ $me.checkField(this);
+ }
+ );
+ }
+ );
+
+ $('input[title], select[title], textarea[title]', '#' + this.forms[$settings.prefix].form_id).qtip(
+ {
+ style: {
+ classes: 'ui-tooltip-light ui-tooltip-shadow'
+ },
+ position: {
+ my: 'left center',
+ at: 'right center'
+ },
+ show: {
+ event: 'focus'
+ }
+ }
+ );
+
+ $('img.help-icon', '#' + this.forms[$settings.prefix].form_id ).qtip(
+ {
+ style: {
+ classes: 'ui-tooltip-light ui-tooltip-shadow'
+ },
+ position: {
+ my: 'bottom left',
+ at: 'top center'
+ }
+ }
+ );
+}
+
+FormManager.getURL = function ($prefix, $template, $event, $params) {
+ var $url = this.form_param($prefix, 'url');
+
+ if (!$url) {
+ $url = this.url;
+ }
+
+ if ($template === undefined) {
+ $template = '';
+ }
+
+ $url = $url.replace('#TEMPLATE#', $template);
+
+ if ($event !== undefined) {
+ $url += ($url.indexOf('?') == -1 ? '?' : '&') + 'events[' + $prefix + ']=' + $event;
+ }
+
+ if ( typeof($params) == 'object' ) {
+ for (key in $params) {
+ $url += ($url.indexOf('?') == -1 ? '?' : '&') + key + '=' + $params[key];
+ }
+ }
+
+ return $url;
+}
+
+FormManager.processResponse = function ($prefix, $data, $add_params) {
+ // enable form back
+// alert('enabling for for [' + $prefix + '] in processResponse');
+
+ if ( $add_params !== undefined ) {
+ $add_params.response = $data;
+ }
+ else {
+ $add_params = {response: $data};
+ }
+
+ this.clearErrors($prefix);
+
+ if ($data.status == 'OK') {
+ var $next_template = this.getNextTemplate($prefix, $data);
+
+ if ( $next_template || $data.do_refresh ) {
+ var $before_close = this.getFormParamOverride($prefix, 'before_close', $add_params);
+
+ if ( $.isFunction($before_close) ) {
+ $before_close.call(this, $data, $add_params);
+ }
+
+ if ( $next_template ) {
+ // load another template instead of current form
+ $('#TB_ajaxContent').html('').load( this.getURL($prefix, $next_template, undefined, $data.params) );
+ }
+ else if ( $data.do_refresh ) {
+ // refresh whole page
+ window.location.href = window.location.href;
+ }
+ }
+ else {
+ // close form without refreshing the page
+ this.closeForm($prefix, $data, $add_params);
+ }
+ }
+ else {
+ // set new errors
+ for ($field in $data.field_errors) {
+ this.setFieldStatus($prefix, $field, $data.field_errors[$field]);
+ }
+
+ var $validation_failure = this.form_param($prefix, 'validation_failure');
+
+ if ( $.isFunction($validation_failure) ) {
+ $validation_failure.call(this, $data, $add_params);
+ }
+ }
+
+ this.enableForm($prefix, true);
+
+// var $me = this;
+// setTimeout(function () { $me.enableForm($prefix, true); }, 1000);
+}
+
+/**
+ * Clear errors from all from fields
+ *
+ * @param $prefix
+ */
+FormManager.clearErrors = function ($prefix) {
+ var $fields = this.fields[$prefix];
+
+ if (typeof($fields) == 'undefined') {
+ $fields = [];
+ }
+
+ for (var $i = 0; $i < $fields.length; $i++) {
+ this.setFieldStatus($prefix, $fields[$i]);
+ }
+}
+
+FormManager.getNextTemplate = function ($prefix, $responce) {
+ if ( $responce.next_template && $responce.next_template != '' ) {
+ return $responce.next_template;
+ }
+ else if ( this.form_param($prefix, 'next_template') ) {
+ return this.form_param($prefix, 'next_template');
+ }
+
+ return false;
+}
+
+FormManager.setFieldStatus = function ($prefix, $field_name, $error_msg) {
+ var field_cell = this.getField($prefix, $field_name, undefined, '_field_cell');
+ var status_cell = this.getField($prefix, $field_name, undefined, '_status_cell');
+
+ if (!field_cell) {
+ alert('Error field "' + $field_name + '" missing.');
+ return ;
+ }
+
+ if ($error_msg === undefined || !$error_msg) {
+ // show OK
+ $(field_cell).parents('p:first').removeClass('error'); //.addClass('ok');
+ $(status_cell)/*.removeClass('field-error')*/.html(this.noErrorsHTML);
+
+ var $fields = this.fields[$prefix];
+
+ for (var $i = 0; $i < $fields.length; $i++) {
+ if ( this.fieldHasError($prefix, $fields[$i]) ) {
+ return ;
+ }
+ }
+ }
+ else {
+ // show error message
+ $(field_cell).parents('p:first')/*.removeClass('ok')*/.addClass('error');
+ $(status_cell)/*.addClass('field-error')*/.html($error_msg);
+ }
+}
+
+FormManager.fieldHasError = function ($prefix, $field) {
+ var status_cell = this.getField($prefix, $field, undefined, '_status_cell');
+
+ return $.trim( $(status_cell).html() ) != $.trim( this.noErrorsHTML );
+}
+
+FormManager.checkField = function ($input, $delayed) {
+ if ( !$input.id.match(/^(.*?)\[.*?\]\[(.*?)\].*?$/) ) {
+ return ;
+ }
+
+ var $prefix = RegExp.$1;
+ var $field = RegExp.$2.replace(/(_date|_time)$/, '');
+
+ if ( this.pendingChecks[$field] ) {
+ clearTimeout( this.pendingChecks[$field] );
+ delete this.pendingChecks[$field];
+ }
+
+ var $me = this;
+
+ this.pendingChecks[$field] = setTimeout(
+ function () {
+ $me.validateField($prefix, $field, $input)
+ },
+ ($delayed === true ? this.checkTimeout : 0)
+ );
+}
+
+FormManager.validateField = function ($prefix, $field, $input) {
+ var $me = this;
+ var form = document.getElementById( this.form_param($prefix, 'form_id') );
+
+ var $request = $.post(
+ this.getURL($prefix, undefined, 'OnValidateField') + '&field=' + encodeURIComponent($field) + '&' + $input.name + '=' + encodeURIComponent($input.value),
+ $(form).serialize(),
+ function ($data) {
+ $data = eval('(' + $data + ')');
+ $me.setFieldStatus($prefix, $field, $data.status == 'OK' ? undefined : $data.status);
+ }
+ );
+
+ this.xhrRequests.push($request);
+};
+
+FormManager.form_param = function ($prefix, $param, $value) {
+ if ($value === undefined) {
+ return this.forms[$prefix][$param];
+ }
+
+ this.forms[$prefix][$param] = $value;
+}
+
+FormManager.getFormParamOverride = function ($prefix, $param, $overrides) {
+ if ( $overrides[$param] !== undefined ) {
+ return $overrides[$param];
+ }
+
+ return this.form_param($prefix, $param);
+}
+
+/* === related to form opening/closing/submitting === */
+FormManager.openForm = function ($prefix, $template, $width, $height, $source_form, $params) {
+ var $url = this.getURL($prefix, $template, undefined, $params);
+
+ $url += ($url.indexOf('?') == -1 ? '?' : '&') + 'width=' + $width + '&height=' + $height + '&modal=true';
+
+ var $tb_settings = {url: $url};
+
+ if ($source_form !== undefined) {
+ $tb_settings.postParams = $($source_form).serialize();
+ }
+
+ TB.show($tb_settings);
+}
+
+FormManager.validateAll = function ($prefix, $status) {
+ var $fields = this.fields[$prefix];
+
+ for (var $i = 0; $i < $fields.length; $i++) {
+ this.setFieldStatus($prefix, $fields[$i], $status);
+ }
+}
+
+FormManager.closeForm = function ($prefix, $data, $add_params) {
+ if ( $data === undefined ) {
+ $data = {};
+ }
+
+ if ( $add_params === undefined ) {
+ $add_params = {};
+ }
+
+ var $before_close = this.getFormParamOverride($prefix, 'before_close', $add_params);
+
+ this.cancelXHRRequests();
+ this.validateAll($prefix);
+
+ if ( $.isFunction($before_close) ) {
+ var $result = $before_close.call(this, $data, $add_params);
+
+ if ($result === false) {
+ return;
+ }
+ }
+
+ TB.remove();
+}
+
+FormManager._getFormFields = function ($prefix) {
+ var $fields = this.fields[$prefix];
+
+ if (typeof($fields) == 'undefined') {
+ $fields = [];
+ }
+
+ // remove watermakrs from input fields
+ for (var $i = 0; $i < $fields.length; $i++) {
+ var $control = this.getField($prefix, $fields[$i]);
+ var $watermark = this.fieldWatermarks[ $prefix + '_' + $fields[$i] ];
+
+ if ($control && $watermark !== undefined && $control.value == $watermark) {
+ $control.value = '';
+ }
+ }
+
+ var form = document.getElementById( this.form_param($prefix, 'form_id') );
+ var $form_fields = $(form).serialize();
+
+ // restore watermarks in input fields
+ for (var $i = 0; $i < $fields.length; $i++) {
+ var $control = this.getField($prefix, $fields[$i]);
+ var $watermark = this.fieldWatermarks[$prefix + '_' + $fields[$i]];
+
+ if ($control && $watermark !== undefined && !$control.value) {
+ $control.value = $watermark;
+ }
+ }
+
+ return $form_fields;
+}
+
+FormManager.enableForm = function ($prefix, $enabled) {
+ if ($enabled === undefined) {
+ $enabled = true;
+ }
+
+ if ($enabled) {
+ clearTimeout( this.form_param($prefix, 'enabledTimer') );
+ this.form_param($prefix, 'enabledTimer', null);
+ }
+ else {
+ var $me = this;
+
+ // set timer for 10 seconds to enable form back (just in case if ajax responce fails)
+ var $timer = setTimeout(
+ function () {
+// alert('enabling for for [' + $prefix + '] in setTimeout');
+ $me.enableForm($prefix, true);
+ }
+ , 10000
+ );
+
+ this.form_param($prefix, 'enabledTimer', $timer);
+ }
+
+ this.form_param($prefix, 'enabled', $enabled);
+}
+
+FormManager.cancelXHRRequests = function () {
+ while ( this.xhrRequests.length > 0 ) {
+ this.xhrRequests.shift().abort();
+ }
+}
+
+FormManager.submitForm = function ($prefix, $add_params) {
+ if ( !this.form_param($prefix, 'enabled') ) {
+ return ;
+ }
+
+ // disable form
+ this.enableForm($prefix, false);
+
+ var $me = this;
+ this.cancelXHRRequests();
+
+ $.post(
+ this.getURL( $prefix, '', this.form_param($prefix, 'save_event') ),
+ this._getFormFields($prefix),
+ function ($data) {
+ var $redirect = TB.parseRedirect($data);
+
+ if ( $redirect !== false ) {
+ window.location.href = $redirect;
+
+ return ;
+ }
+
+ $me.processResponse($prefix, eval('(' + $data + ')'), $add_params);
+ }
+ )
+}
+
+FormManager.beforeClose = function () {
+ this.cancelXHRRequests();
+
+ for (var $prefix in this.forms) {
+ var $before_close = this.form_param($prefix, 'before_close');
+
+ if ( $.isFunction($before_close) ) {
+ $before_close.call(this, {}, {});
+ }
+ }
+}
\ No newline at end of file
Property changes on: branches/1.0.x/inc/js/form_manager.js
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Index: branches/1.0.x/inc/js/passwordStrengthMeter.js
===================================================================
--- branches/1.0.x/inc/js/passwordStrengthMeter.js (revision 14758)
+++ branches/1.0.x/inc/js/passwordStrengthMeter.js (revision 14759)
@@ -1,70 +1,138 @@
-var shortPass = '<span class="colorbar meterFail"></span> <span class="meterFail">Too Short Password</span>'
-var badPass = '<span class="colorbar meterWarn"></span> <span class="meterWarn">Week; Use letters & numbers</span>'
-var goodPass = '<span class="colorbar meterGood"></span> <span class="meterGood">Medium; Use special charecters</span>'
-var strongPass = '<span class="colorbar meterExcel"></span> <span class="meterExcel">Strong Password</span>'
-
-function passwordStrength(password)
-{
- score = 0
-
- //password < 4
- if (password.length < 4 ) { return shortPass }
-
- //password length
- score += password.length * 4
- score += ( checkRepetition(1,password).length - password.length ) * 1
- score += ( checkRepetition(2,password).length - password.length ) * 1
- score += ( checkRepetition(3,password).length - password.length ) * 1
- score += ( checkRepetition(4,password).length - password.length ) * 1
-
- //password has 3 numbers
- if (password.match(/(.*[0-9].*[0-9].*[0-9])/)) score += 5
-
- //password has 2 sybols
- if (password.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/)) score += 5
-
- //password has Upper and Lower chars
- if (password.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)) score += 10
-
- //password has number and chars
- if (password.match(/([a-zA-Z])/) && password.match(/([0-9])/)) score += 15
- //
- //password has number and symbol
- if (password.match(/([!,@,#,$,%,^,&,*,?,_,~])/) && password.match(/([0-9])/)) score += 15
-
- //password has char and symbol
- if (password.match(/([!,@,#,$,%,^,&,*,?,_,~])/) && password.match(/([a-zA-Z])/)) score += 15
-
- //password is just a nubers or chars
- if (password.match(/^\w+$/) || password.match(/^\d+$/) ) score -= 10
-
- //verifing 0 < score < 100
- if ( score < 0 ) score = 0
- if ( score > 100 ) score = 100
-
- if (score < 34 ) return badPass
- if (score < 68 ) return goodPass
- return strongPass
+function PasswordStrengthMeter($settings) {
+ this.inputSelector = '';
+
+ this.phrases = {
+ 'short': 'Too Short Password',
+ 'bad': 'Week; Use letters & numbers',
+ 'good': 'Medium; Use special characters',
+ 'strong': 'Strong Password'
+ };
+
+ this.cssClasses = {
+ 'short': 'meterFail',
+ 'bad': 'meterWarn',
+ 'good': 'meterGood',
+ 'strong': 'meterExcel'
+ };
+
+ $.extend(true, this, $settings);
+
+ var $me = this;
+
+ $(document).ready(
+ function() {
+ $($me.inputSelector).keyup(
+ function($e) {
+ $($me.inputSelector + '_strength')
+ .html( $me.getStrengthHTML( $(this).val() ) )
+ .show();
+ }
+ );
+ }
+ );
+}
+
+PasswordStrengthMeter.prototype.getStrength = function (password) {
+ var score = 0;
+
+ // password < 4
+ if (password.length < 4) {
+ return 'short';
+ }
+
+ // password length
+ score += password.length * 4;
+ score += parseInt( this.checkRepetition(1, password).length - password.length );
+ score += parseInt( this.checkRepetition(2, password).length - password.length );
+ score += parseInt( this.checkRepetition(3, password).length - password.length );
+ score += parseInt( this.checkRepetition(4, password).length - password.length );
+
+ // password has 3 numbers
+ if (password.match(/(.*[0-9].*[0-9].*[0-9])/)) {
+ score += 5;
+ }
+
+ // password has 2 symbols
+ if (password.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/)) {
+ score += 5;
+ }
+
+ // password has Upper and Lower chars
+ if (password.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)) {
+ score += 10;
+ }
+
+ // password has number and chars
+ if (password.match(/([a-zA-Z])/) && password.match(/([0-9])/)) {
+ score += 15;
+ }
+ //
+ // password has number and symbol
+ if (password.match(/([!,@,#,$,%,^,&,*,?,_,~])/) && password.match(/([0-9])/)) {
+ score += 15;
+ }
+
+ // password has char and symbol
+ if (password.match(/([!,@,#,$,%,^,&,*,?,_,~])/) && password.match(/([a-zA-Z])/)) {
+ score += 15;
+ }
+
+ // password is just a nubers or chars
+ if (password.match(/^\w+$/) || password.match(/^\d+$/)) {
+ score -= 10;
+ }
+
+ // verifying 0 < score < 100
+ if (score < 0) {
+ score = 0;
+ }
+
+ if (score > 100) {
+ score = 100;
+ }
+
+ if (score < 34) {
+ return 'bad';
+ }
+
+ if (score < 68) {
+ return 'good';
+ }
+
+ return 'strong';
+}
+
+PasswordStrengthMeter.prototype.getStrengthHTML = function (password) {
+ var $strength = this.getStrength(password),
+ $css_class = this.cssClasses[$strength],
+ $phrase = this.phrases[$strength];
+
+ return '<span class="colorbar ' + $css_class + '"></span> <span class="' + $css_class + '">' + $phrase + '</span>';
}
-// checkRepetition(1,'aaaaaaabcbc') = 'abcbc'
-// checkRepetition(2,'aaaaaaabcbc') = 'aabc'
-// checkRepetition(2,'aaaaaaabcdbcd') = 'aabcd'
-
-function checkRepetition(pLen,str) {
- res = ""
- for ( i=0; i<str.length ; i++ ) {
- repeated=true
- for (j=0;j < pLen && (j+i+pLen) < str.length;j++)
- repeated=repeated && (str.charAt(j+i)==str.charAt(j+i+pLen))
- if (j<pLen) repeated=false
- if (repeated) {
- i+=pLen-1
- repeated=false
- }
- else {
- res+=str.charAt(i)
- }
- }
- return res
+PasswordStrengthMeter.prototype.checkRepetition = function(pLen, str) {
+ var res = "",
+ repeated = true;
+
+ for (i = 0; i < str.length; i++) {
+ repeated = true;
+
+ for (j = 0; j < pLen && (j + i + pLen) < str.length; j++) {
+ repeated = repeated && (str.charAt(j + i) == str.charAt(j + i + pLen));
+ }
+
+ if (j < pLen) {
+ repeated = false;
+ }
+
+ if (repeated) {
+ i += pLen - 1;
+ repeated = false;
+ }
+ else {
+ res += str.charAt(i);
+ }
+ }
+
+ return res;
}
\ No newline at end of file
Index: branches/1.0.x/inc/js/thickbox/loadingAnimation.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/1.0.x/inc/js/thickbox/loadingAnimation.gif
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/1.0.x/inc/js/thickbox/thickbox.css
===================================================================
--- branches/1.0.x/inc/js/thickbox/thickbox.css (nonexistent)
+++ branches/1.0.x/inc/js/thickbox/thickbox.css (revision 14759)
@@ -0,0 +1,176 @@
+/* ----------------------------------------------------------------------------------------------------------------*/
+/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/
+/* ----------------------------------------------------------------------------------------------------------------*/
+*{padding: 0; margin: 0;}
+
+/* ----------------------------------------------------------------------------------------------------------------*/
+/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
+/* ----------------------------------------------------------------------------------------------------------------*/
+/*#TB_window {
+ font: 12px Arial, Helvetica, sans-serif;
+ color: #333333;
+}*/
+
+#TB_secondLine {
+ font: 10px Arial, Helvetica, sans-serif;
+ color:#666666;
+}
+
+#TB_window a:link {color: #666666;}
+#TB_window a:visited {color: #666666;}
+#TB_window a:hover {color: #000;}
+#TB_window a:active {color: #666666;}
+#TB_window a:focus{color: #666666;}
+
+/* ----------------------------------------------------------------------------------------------------------------*/
+/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
+/* ----------------------------------------------------------------------------------------------------------------*/
+#TB_overlay {
+ position: fixed;
+ z-index:100;
+ top: 0px;
+ left: 0px;
+ height:100%;
+ width:100%;
+}
+
+.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;}
+.TB_overlayBG {
+ background-color:#000;
+ filter:alpha(opacity=75);
+ -moz-opacity: 0.75;
+ opacity: 0.75;
+}
+
+* html #TB_overlay { /* ie6 hack */
+ position: absolute;
+ height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
+}
+
+#TB_window {
+ /*position: fixed;*/
+ position: absolute;
+ background-color: #ffffff;
+ z-index: 102;
+ display: none;
+ border: 1px solid #404040;
+ border-radius: 3px;
+ text-align: left;
+ top: 50%;
+ left: 50%;
+ padding: 14px 17px;
+ font-size: 1em;
+}
+
+* html #TB_window { /* ie6 hack */
+position: absolute;
+margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
+}
+
+#TB_window img#TB_Image {
+ display:block;
+ margin: 15px 0 0 15px;
+ border-right: 1px solid #ccc;
+ border-bottom: 1px solid #ccc;
+ border-top: 1px solid #666;
+ border-left: 1px solid #666;
+}
+
+#TB_caption{
+ height:25px;
+ padding:7px 30px 10px 25px;
+ float:left;
+}
+
+#TB_closeWindow{
+ height:25px;
+ padding:11px 25px 10px 0;
+ float:right;
+}
+
+#TB_closeAjaxWindow{
+ background: url("@templates_base@/img/modal/close.png") no-repeat scroll 100% 0 transparent;
+ color: #5A5A5A;
+ cursor: pointer;
+ font: bold 11px Arial;
+ height: 15px;
+ padding-right: 20px;
+ position: absolute;
+ right: 30px;
+ text-align: right;
+ top: 30px;
+ width: 100px;
+
+}
+
+#TB_ajaxWindowTitle{
+ float:left;
+ padding:7px 0 5px 10px;
+ margin-bottom:1px;
+ font-weight: bold;
+}
+
+#TB_title{
+ background-color:#e8e8e8;
+ height:27px;
+}
+
+#TB_ajaxContent{
+ clear: both;
+ border: 9px solid #E6E6E6;
+ padding: 40px 50px;
+ overflow: auto;
+ text-align: left;
+ line-height: 1.4em;
+}
+
+#TB_ajaxContent.TB_modal{
+ padding:15px;
+}
+
+/*#TB_ajaxContent p{
+ padding:5px 0px 5px 0px;
+}*/
+
+#TB_load{
+ position: fixed;
+ display:none;
+ height:13px;
+ width:208px;
+ z-index:103;
+ top: 50%;
+ left: 50%;
+ margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
+}
+
+* html #TB_load { /* ie6 hack */
+position: absolute;
+margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
+}
+
+#TB_HideSelect{
+ z-index:99;
+ position:fixed;
+ top: 0;
+ left: 0;
+ background-color:#fff;
+ border:none;
+ filter:alpha(opacity=0);
+ -moz-opacity: 0;
+ opacity: 0;
+ height:100%;
+ width:100%;
+}
+
+* html #TB_HideSelect { /* ie6 hack */
+ position: absolute;
+ height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
+}
+
+#TB_iframeContent{
+ clear:both;
+ border:none;
+ margin-bottom:-1px;
+ margin-top:1px;
+ _margin-bottom:1px;
+}
Property changes on: branches/1.0.x/inc/js/thickbox/thickbox.css
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Index: branches/1.0.x/inc/js/thickbox/thickbox.js
===================================================================
--- branches/1.0.x/inc/js/thickbox/thickbox.js (nonexistent)
+++ branches/1.0.x/inc/js/thickbox/thickbox.js (revision 14759)
@@ -0,0 +1,474 @@
+/*
+ * Thickbox 3.1 - One Box To Rule Them All.
+ * By Cody Lindley (http://www.codylindley.com)
+ * Copyright (c) 2007 cody lindley
+ * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
+*/
+
+// on page load call TB.init
+$(document).ready(
+ function() {
+ // pass where to apply thickbox
+ TB.init('a.thickbox, area.thickbox, input.thickbox');
+
+ // preload image
+ TB.imgLoader = new Image();
+ TB.imgLoader.src = $base_url + 'inc/js/thickbox/loadingAnimation.gif';
+ }
+);
+
+function TB () {
+ this.imgLoader = null;
+ this.pathToImage = $base_url + 'inc/js/thickbox/loadingAnimation.gif';
+
+ this.Width = null;
+ this.Height = null;
+}
+
+//add thickbox to href & area elements that have a class of .thickbox
+TB.init = function (domChunk) {
+ $(domChunk).click(
+ function() {
+ var t = this.title || this.name || null;
+ var a = this.href || this.alt;
+ var g = this.rel || false;
+
+ TB.show( {caption: t, url: a, imageGroup: g} );
+ this.blur();
+ return false;
+ }
+ );
+}
+
+// function called when the user clicks on a thickbox link
+TB.show = function (params) {
+
+// caption, url, imageGroup, onDataReceived, onAfterShow, postParams
+
+ try {
+ if (typeof document.body.style.maxHeight === 'undefined') {
+ // if IE 6
+ $('body', 'html').css( {height: '100%', width: '100%'} );
+ $('html').css('overflow', 'hidden');
+
+ if (document.getElementById('TB_HideSelect') === null) {
+ // iframe to hide select elements in ie6
+ $('body').append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>");
+ $('#TB_overlay').click(TB.remove);
+ }
+ } else {
+ // all others
+ if (document.getElementById('TB_overlay') === null) {
+ $('body').append("<div id='TB_overlay'></div><div id='TB_window'></div>");
+ $('#TB_overlay').click(TB.remove);
+ }
+ }
+
+ if (TB.detectMacXFF()) {
+ $('#TB_overlay').addClass('TB_overlayMacFFBGHack'); // use png overlay so hide flash
+ } else {
+ $('#TB_overlay').addClass('TB_overlayBG'); // use background and opacity
+ }
+
+ if (params.caption === null) {
+ params.caption = '';
+ }
+
+ $('body').append("<div id='TB_load'><img src='" + TB.imgLoader.src + "' /></div>"); // add loader to the page
+ $('#TB_load').show(); // show loader
+
+ var baseURL;
+ if (params.url.indexOf('?') !== -1) {
+ // ff there is a query string involved
+ baseURL = params.url.substr(0, params.url.indexOf('?'));
+ } else {
+ baseURL = params.url;
+ }
+
+ var urlString = /\.jpg$|\.jpeg$|\.png$|\.gif$|\.bmp$/;
+ var url_params = {};
+
+ if ( baseURL.toLowerCase().match(urlString) ) {
+ TB.processImages(params, urlString);
+ } else {
+ var queryString = params.url.replace(/^[^\?]+\??/,'');
+ url_params = TB.parseQuery(queryString);
+
+ TB.processDialog(params, url_params);
+ }
+
+ if (url_params['modal'] != 'true') {
+ $(document).bind(
+ 'keyup',
+ function(e){
+ if (e.which == 27){
+ // close
+ TB.remove();
+ }
+ }
+ );
+ }
+ } catch(e) {
+ //nothing here
+ }
+}
+
+// helper functions below
+TB.processImages = function (params, urlString) {
+ // code to show images
+ var TB_PrevCaption = '';
+ var TB_PrevURL = '';
+ var TB_PrevHTML = '';
+ var TB_NextCaption = '';
+ var TB_NextURL = '';
+ var TB_NextHTML = '';
+ var TB_imageCount = '';
+ var TB_FoundURL = false;
+
+ if (params.imageGroup) {
+ // scan images in group to create Prev/Next links
+ var TB_TempArray = $('a[rel=' + params.imageGroup + ']').get();
+ for (var TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML === '')); TB_Counter++) {
+ var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString);
+ if (!(TB_TempArray[TB_Counter].href == params.url)) {
+ if (TB_FoundURL) {
+ TB_NextCaption = TB_TempArray[TB_Counter].title;
+ TB_NextURL = TB_TempArray[TB_Counter].href;
+ TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Next &gt;</a></span>";
+ } else {
+ TB_PrevCaption = TB_TempArray[TB_Counter].title;
+ TB_PrevURL = TB_TempArray[TB_Counter].href;
+ TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; Prev</a></span>";
+ }
+ } else {
+ TB_FoundURL = true;
+ TB_imageCount = 'Image ' + (TB_Counter + 1) + ' of ' + TB_TempArray.length;
+ }
+ }
+ }
+
+ var imgPreloader = new Image();
+ $(imgPreloader).bind(
+ 'load',
+ function() {
+ $(this).unbind('load');
+ var $image_size = TB.scaleImage.call(TB, this);
+
+ TB.Width = $image_size.width + 30;
+ TB.Height = $image_size.height + 60;
+ $('#TB_window').append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='" + params.url + "' width='" + $image_size.width + "' height='" + $image_size.height + "' alt='" + params.caption + "'/></a>" + "<div id='TB_caption'>" + params.caption + "<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div>");
+ $('#TB_closeWindowButton').click(TB.remove);
+
+ if (TB_PrevHTML !== '') {
+ function goPrev() {
+ $('#TB_window').remove();
+ $('body').append("<div id='TB_window'></div>");
+ TB.show( {caption: TB_PrevCaption, url: TB_PrevURL, imageGroup: params.imageGroup} );
+ return false;
+ }
+
+ $('#TB_prev').click(goPrev);
+ }
+
+ if (TB_NextHTML !== '') {
+ function goNext() {
+ $('#TB_window').remove();
+ $('body').append("<div id='TB_window'></div>");
+ TB.show( {caption: TB_NextCaption, url: TB_NextURL, imageGroup: params.imageGroup} );
+ return false;
+ }
+
+ $('#TB_next').click(goNext);
+
+ }
+
+ $(document).bind(
+ 'keydown',
+ function(e) {
+ var keycode = e.which;
+
+ if (keycode == 27) { // close
+ TB.remove();
+ } else if (keycode == 190) {
+ // display previous image
+ if (TB_NextHTML != '') {
+ $(this).unbind('keydown');
+ goNext();
+ }
+ } else if (keycode == 188) {
+ // display next image
+ if(TB_PrevHTML != ''){
+ $(this).unbind('keydown');
+ goPrev();
+ }
+ }
+ }
+ );
+
+ // show image after it's loaded
+ TB.position();
+ $('#TB_load').remove();
+ $('#TB_ImageOff').click(TB.remove);
+ $('#TB_window').css('display', 'block'); // for safari using css instead of show
+ }
+ );
+
+ imgPreloader.src = params.url;
+}
+
+TB.scaleImage = function ($image) {
+ // resizing large images - orginal by Christian Montoya edited by me
+ var pagesize = TB.getPageSize();
+ var x = pagesize[0] - 150;
+ var y = pagesize[1] - 150;
+
+ var imageWidth = $image.width;
+ var imageHeight = $image.height;
+
+ if (imageWidth > x) {
+ imageHeight = imageHeight * (x / imageWidth);
+ imageWidth = x;
+ if (imageHeight > y) {
+ imageWidth = imageWidth * (y / imageHeight);
+ imageHeight = y;
+ }
+ } else if (imageHeight > y) {
+ imageWidth = imageWidth * (y / imageHeight);
+ imageHeight = y;
+ if (imageWidth > x) {
+ imageHeight = imageHeight * (x / imageWidth);
+ imageWidth = x;
+ }
+ }
+
+ return {width: imageWidth, height: imageHeight};
+}
+
+TB.processDialog = function (params, url_params) {
+ // code to show html
+
+ // window size is global
+ TB.Width = (url_params['width'] * 1) || 630; // 17 - #TB_Window left&right padding
+ TB.Height = (url_params['height'] * 1) || 440; // 14 - #TB_Window top&bottom padding
+
+ var ajaxContentW = TB.Width /*+ 17*2*/ - (50*2 + 9*2); // #TB_ajaxContent left&right padding - left&right border
+ var ajaxContentH = TB.Height /*+ 14*2*/ - (40*2 /*+ 9*2*/); // #TB_ajaxContent top&bottom padding
+
+ var $window_title = '';
+
+ if (params.url.indexOf('TB_iframe') != -1) {
+ // either iframe or ajax window
+ urlNoQuery = params.url.split('TB_');
+ $('#TB_iframeContent').remove();
+
+ if (url_params['modal'] != 'true') {
+ // iframe no modal
+ $window_title = "<div id='TB_title'><div id='TB_ajaxWindowTitle'>" + params.caption + "</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div></div>";
+
+ $('#TB_window').append($window_title + "<iframe frameborder='0' hspace='0' src='" + urlNoQuery[0] + "' id='TB_iframeContent' name='TB_iframeContent" + Math.round(Math.random() * 1000) + "' onload='TB.showIframe()' style='width:" + (ajaxContentW + 29) + "px;height:" + (ajaxContentH + 17) + "px;' > </iframe>");
+ }else{
+ // iframe modal
+ $('#TB_overlay').unbind();
+ $('#TB_window').append("<iframe frameborder='0' hspace='0' src='" + urlNoQuery[0] + "' id='TB_iframeContent' name='TB_iframeContent" + Math.round(Math.random() * 1000) + "' onload='TB.showIframe()' style='width:" + (ajaxContentW + 29) + "px;height:" + (ajaxContentH + 17) + "px;'> </iframe>");
+ }
+ } else {
+ // not an iframe, ajax
+ if ($('#TB_window').css('display') != 'block') {
+ if (url_params['modal'] != 'true') {
+ // ajax no modal
+// $window_title = "<div id='TB_title'><div id='TB_ajaxWindowTitle'>" + params.caption + "</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a> or Esc Key</div></div>";
+ $window_title = "<div id='TB_closeAjaxWindow'><span id='TB_closeWindowButton'>close [Esc]</span></div>";
+
+ $('#TB_window').append($window_title + "<div id='TB_ajaxContent' style='width:" + ajaxContentW + "px;height:" + ajaxContentH + "px'></div>");
+ } else {
+ // ajax modal
+ $('#TB_overlay').unbind();
+ $('#TB_window').append("<div id='TB_ajaxContent' class='TB_modal' style='width:" + ajaxContentW + "px;height:" + ajaxContentH + "px;'></div>");
+ }
+ } else {
+ // this means the window is already up, we are just loading new content via ajax
+ $('#TB_ajaxContent')[0].style.width = ajaxContentW + 'px';
+ $('#TB_ajaxContent')[0].style.height = ajaxContentH + 'px';
+ $('#TB_ajaxContent')[0].scrollTop = 0;
+ $('#TB_ajaxWindowTitle').html(params.caption);
+ }
+ }
+
+ $('#TB_closeWindowButton').click(TB.remove);
+
+ if (params.url.indexOf('TB_inline') != -1) {
+ $('#TB_ajaxContent').html( $('#' + url_params['inlineId']).html() );
+ $('#TB_window').unload(
+ function () {
+ // move elements back when you're finished
+ $('#' + url_params['inlineId']).html( $('#TB_ajaxContent').html() );
+ }
+ );
+
+ TB.position();
+ $('#TB_load').remove();
+ $('#TB_window').css('display', 'block');
+ } else if (params.url.indexOf('TB_iframe') != -1) {
+ TB.position();
+
+ if ($.browser.safari) {
+ // safari needs help because it will not fire iframe onload
+ $('#TB_load').remove();
+ $('#TB_window').css('display', 'block');
+ }
+ } else {
+ var $content_url = params.url + '&random=' + (new Date().getTime());
+
+ if (params.postParams === undefined) {
+ $.get(
+ $content_url,
+ function ($data) {
+ TB.onDataReceived($data, params);
+ }
+ );
+ }
+ else {
+ $.post(
+ $content_url,
+ params.postParams,
+ function ($data) {
+ TB.onDataReceived($data, params);
+ }
+ );
+ }
+
+ /*$('#TB_ajaxContent').load(
+ params.url += '&random=' + (new Date().getTime()),
+ params.postParams,
+ function() {
+ //to do a post change this load method
+ TB.position();
+ $('#TB_load').remove();
+ TB.init('#TB_ajaxContent a.thickbox');
+ $('#TB_window').css('display', 'block');
+
+ if ( $.isFunction(params.showCallback) ) {
+ params.showCallback();
+ }
+ }
+ );*/
+ }
+}
+
+TB.parseRedirect = function ($data) {
+ var $match_redirect = new RegExp('^#redirect#(.*?)($|\\s.*)').exec($data);
+ if ($match_redirect != null) {
+ // redirect to external template requested
+ return $match_redirect[1];
+ }
+
+ return false;
+}
+
+TB.onDataReceived = function ($data, $params) {
+ if ( $.isFunction($params.onDataReceived) ) {
+ $data = $params.onDataReceived($data);
+ if ($data === false) {
+ // this callback even could prevent redirect action
+ // callback requested to stop processing
+ return ;
+ }
+ }
+
+ var $redirect = TB.parseRedirect($data);
+ if ($redirect !== false) {
+ window.location.href = $redirect;
+ return ;
+ }
+
+ $('#TB_ajaxContent').html($data);
+
+ TB.position();
+ $('#TB_load').remove();
+ TB.init('#TB_ajaxContent a.thickbox');
+ $('#TB_window').css('display', 'block');
+
+ if ( $.isFunction($params.onAfterShow) ) {
+ $params.onAfterShow();
+ }
+}
+
+TB.showIframe = function () {
+ $('#TB_load').remove();
+ $('#TB_window').css('display', 'block');
+}
+
+TB.remove = function () {
+ $('#TB_imageOff').unbind('click');
+ $('#TB_closeWindowButton').unbind('click');
+
+ $('#TB_window').fadeOut(
+ 'fast',
+ function(){
+ $('#TB_window,#TB_overlay,#TB_HideSelect').trigger('unload').unbind().remove();
+ }
+ );
+
+ $('#TB_load').remove();
+ if (typeof document.body.style.maxHeight == 'undefined') {
+ // if IE 6
+ $('body','html').css( {height: 'auto', width: 'auto'} );
+ $('html').css('overflow', '');
+ }
+
+ $(document).unbind('keydown').unbind('keyup');
+
+ return false;
+}
+
+TB.position = function () {
+ $('#TB_window').css( {marginLeft: '-' + parseInt(TB.Width / 2) + 'px', width: TB.Width + 'px'} );
+
+ if ( !(jQuery.browser.msie && jQuery.browser.version < 7)) {
+ // take away IE6
+ $('#TB_window').css( {marginTop: '-' + parseInt(TB.Height / 2) + 'px'} );
+ }
+}
+
+TB.parseQuery = function (query) {
+ var Params = {};
+ if (!query) {
+ // return empty object
+ return Params;
+ }
+
+ var Pairs = query.split(/[;&]/);
+
+ for (var i = 0; i < Pairs.length; i++ ) {
+ var KeyVal = Pairs[i].split('=');
+ if (!KeyVal || KeyVal.length != 2) {
+ continue;
+ }
+
+ var key = unescape( KeyVal[0] );
+ var val = unescape( KeyVal[1] );
+ val = val.replace(/\+/g, ' ');
+ Params[key] = val;
+ }
+
+ return Params;
+}
+
+TB.getPageSize = function () {
+ var de = document.documentElement;
+ var w = window.innerWidth || self.innerWidth || (de && de.clientWidth) || document.body.clientWidth;
+ var h = window.innerHeight || self.innerHeight || (de && de.clientHeight) || document.body.clientHeight;
+
+ return [w, h];
+}
+
+TB.detectMacXFF = function () {
+ var userAgent = navigator.userAgent.toLowerCase();
+ if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox') != -1) {
+ return true;
+ }
+
+ return false;
+}
+
+
Property changes on: branches/1.0.x/inc/js/thickbox/thickbox.js
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Index: branches/1.0.x/inc/js/thickbox
===================================================================
--- branches/1.0.x/inc/js/thickbox (nonexistent)
+++ branches/1.0.x/inc/js/thickbox (revision 14759)
Property changes on: branches/1.0.x/inc/js/thickbox
___________________________________________________________________
Added: bugtraq:logregex
## -0,0 +1,2 ##
+(?:[Bb]ugs?|[Ii]ssues?|[Rr]eports?|[Ff]ixe?s?|[Rr]esolves?)+\s+(?:#?(?:\d+)[,\.\s]*)+
+(\d+)
\ No newline at end of property
Added: bugtraq:number
## -0,0 +1 ##
+true
\ No newline at end of property
Added: bugtraq:url
## -0,0 +1 ##
+http://tracker.in-portal.org/view.php?id=%BUGID%
\ No newline at end of property
Added: tsvn:autoprops
## -0,0 +1,19 ##
+*.php = svn:eol-style=LF;svn:keywords=Id
+*.tpl = svn:eol-style=LF
+*.sql = svn:eol-style=LF
+*.lang = svn:eol-style=LF
+*.sh = svn:eol-style=LF;svn:executable
+*.txt = svn:eol-style=LF
+*.html = svn:eol-style=LF
+*.htm = svn:eol-style=LF
+*.css = svn:eol-style=LF
+*.js = svn:eol-style=LF
+*.xml = svn:eol-style=LF
+.htaccess = svn:eol-style=LF
+.smsignore = svn:eol-style=LF
+COPYRIGHT = svn:eol-style=LF
+CREDITS = svn:eol-style=LF
+INSTALL = svn:eol-style=LF
+LICENSE = svn:eol-style=LF
+LICENSES = svn:eol-style=LF
+README = svn:eol-style=LF
\ No newline at end of property
Index: branches/1.0.x/designs/default_design.des.tpl
===================================================================
--- branches/1.0.x/designs/default_design.des.tpl (revision 14758)
+++ branches/1.0.x/designs/default_design.des.tpl (revision 14759)
@@ -1,77 +1,78 @@
<inp2:m_CheckSSL/><inp2:m_DefaultParam columns="2"/>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<inp2:lang.current_Field name='Locale' db='1'/>">
<html>
<head>
<!--## includes system elements ##-->
+ <inp2:m_Include template="elements/forms.elm" strip_nl="2"/>
<inp2:m_Include template="elements/content_boxes.elm" strip_nl="2"/>
<title><inp2:m_RenderElement name="page_title" default_element="default_page_title" no_editing="1"/></title>
<link rel="stylesheet" rev="stylesheet" href="<inp2:m_Compress from='all_css'/>" type="text/css" />
<inp2:m_Include template="elements/html_head.elm" strip_nl="2"/>
<!--## <script type="text/javascript" src="<inp2:m_Compress from='all_js'/>"></script> ##-->
<inp2:m_RenderElement name="add_to_head" default_element="default_add_to_head"/>
</head>
<body>
<!--## System tag please do not remove ##-->
<inp2:st_EditPage mode="start"/>
<inp2:m_Include template="elements/header.elm" />
<inp2:m_Include template="elements/menu.elm" />
<div id="content">
<div class="padding">
<inp2:m_if check="m_Param" name="before_content">
<inp2:m_RenderElement name="$before_content" />
</inp2:m_if>
<inp2:m_if check="m_Param" name="left_column">
<div class="leftcol">
<inp2:m_RenderElement name="$left_column" />
</div>
<div class="contentcol">
<inp2:m_RenderElement name="content" />
</div>
<inp2:m_elseif check="m_Param" name="right_column" />
<div class="contentcol">
<inp2:m_RenderElement name="content" />
</div>
<div class="rightcol">
<inp2:m_RenderElement name="$right_column" />
</div>
<inp2:m_else/>
<inp2:m_RenderElement name="content"/>
</inp2:m_if>
<div class="clear"></div>
</div>
</div>
<inp2:m_Include template="elements/footer_menu.elm" />
<inp2:m_Include template="elements/footer.elm" />
<inp2:st_EditPage mode="end"/> <!--## /System tag please do not remove ##-->
<inp2:m_Include template="elements/tracking.elm" />
<inp2:m_RenderElement name="add_to_footer" default_element="default_add_to_footer"/>
</body>
</html>
\ No newline at end of file
Index: branches/1.0.x/elements/html_head.elm.tpl
===================================================================
--- branches/1.0.x/elements/html_head.elm.tpl (revision 14758)
+++ branches/1.0.x/elements/html_head.elm.tpl (revision 14759)
@@ -1,53 +1,72 @@
<inp2:m_if check="c.current_Field" name="MetaKeywords">
<meta name="Keywords" content="<inp2:c.current_Field name='MetaKeywords'/>"/>
<inp2:m_else/>
<meta name="Keywords" content="<inp2:m_GetConfig name='Category_MetaKey'/>"/>
</inp2:m_if>
<inp2:m_if check="c.current_Field" name="MetaDescription">
<meta name="Description" content="<inp2:c.current_Field name='MetaDescription'/>"/>
<inp2:m_else/>
<meta name="Description" content="<inp2:m_GetConfig name='Category_MetaDesc'/>"/>
</inp2:m_if>
<meta name="author" content="<inp2:m_GetConfig name='Site_Name'/>"/>
<meta http-equiv="content-type" content="text/html; charset=<inp2:lang.current_Field name='Charset'/>" />
<link rel="icon" href="<inp2:m_BaseURL/>favicon.ico" type="image/x-icon" />
<link rel="shortcut icon" href="<inp2:m_BaseURL/>favicon.ico" type="image/x-icon" />
-<link rel="stylesheet" type="text/css" href="<inp2:m_Compress files='inc/reset.css|inc/styles.css|inc/category.css|inc/flexslider.css|inc/modal.css|inc/details.css|inc/jquery.gzoom.css|inc/pikachoose.css'/>" media="all" charset="<inp2:lang.current_Field name='Charset'/>"/>
+<link rel="stylesheet" type="text/css" href="<inp2:m_Compress files='inc/reset.css|inc/styles.css|inc/category.css|inc/flexslider.css|inc/modal.css|inc/details.css|inc/jquery.gzoom.css|inc/pikachoose.css|inc/qtip.css'/>" media="all" charset="<inp2:lang.current_Field name='Charset'/>"/>
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/ui/jquery.ui.all.css" charset="utf-8" />
<!--##
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/reset.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/styles.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/category.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/flexslider.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/modal.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/details.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/jquery.gzoom.css" charset="utf-8" />
<link type="text/css" rel="stylesheet" href="<inp2:m_TemplatesBase />inc/pikachoose.css" charset="utf-8" />
##-->
<!--## JS FOR ADMIN ##-->
<inp2:st_EditingScripts/>
+<script type="text/javascript">
+ var $base_url = '<inp2:m_TemplatesBase/>';
+</script>
+
<!--## JS FOR FRONT ##-->
<inp2:m_ifnot check="m_GetConst" name="EDITING_MODE">
<!--## EXCLUDE THIS JS WHEN IN ADMIN ##-->
- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
-</inp2:m_ifnot>
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
+
+ <link rel="stylesheet" type="text/css" href="<inp2:m_Compress files='/inc/js/thickbox/thickbox.css'/>"/>
+ <script src="<inp2:m_Compress files='inc/js/thickbox/thickbox.js'/>" type="text/javascript"></script>
+</inp2:m_ifnot>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.15/jquery-ui.min.js" type="text/javascript"></script>
+
<script src="<inp2:m_TemplatesBase />inc/js/ui/jquery.ui.core.min.js" type="text/javascript"></script>
<script src="<inp2:m_TemplatesBase />inc/js/ui/jquery.ui.widget.min.js" type="text/javascript"></script>
<script src="<inp2:m_TemplatesBase />inc/js/ui/jquery.ui.accordion.min.js" type="text/javascript"></script>
<script src="<inp2:m_TemplatesBase />inc/js/jquery.flexslider-min.js" type="text/javascript"></script>
<script src="<inp2:m_TemplatesBase />inc/js/jquery.scripts.js" type="text/javascript"></script>
<script src="<inp2:m_TemplatesBase />inc/js/tinybox.js" type="text/javascript"></script>
+<script src="<inp2:m_TemplatesBase />inc/js/jquery.qtip.min.js" type="text/javascript"></script>
+<script src="<inp2:m_TemplatesBase />inc/js/form_manager.js" type="text/javascript"></script>
+
+<script type="text/javascript">
+ FormManager.init(
+ {
+ url: '<inp2:m_Link template="#TEMPLATE#" js_escape="1" __NO_REWRITE__="1" no_amp="1"/>',
+ noErrorsHTML: ''
+ }
+ );
+</script>
<inp2:m_Comment>
<!--[if lt IE 9]>
-
+
<![endif]-->
</inp2:m_Comment>
\ No newline at end of file
Index: branches/1.0.x/elements/forms.elm.tpl
===================================================================
--- branches/1.0.x/elements/forms.elm.tpl (nonexistent)
+++ branches/1.0.x/elements/forms.elm.tpl (revision 14759)
@@ -0,0 +1,386 @@
+<inp2:m_Set tab_index="1"/>
+
+<inp2:m_DefineElement name="subsection">
+ <tr class="subsection">
+ <td colspan="2">
+ <h2><inp2:m_Phrase label="$title"/></h2>
+ </td>
+ </tr>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_buttons" style="">
+ <p class="buttons" style="<inp2:m_Param name='style'/>">
+ <inp2:m_Param name="content"/>
+ </p>
+ <div class="clear"></div>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="form_row_full" is_last="0">
+ <tr class="field-row<inp2:m_if check='m_Param' name='is_last'>-last</inp2:m_if>">
+ <td colspan="2">
+ <inp2:m_Param name="content"/>
+ </td>
+ </tr>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_field_separator" no_editing="1" is_last="0">
+ <inp2:m_if check="m_ParamEquals" name="is_last" value="0">
+ <!--<hr/>-->
+ </inp2:m_if>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="form_row" row_class='' prefix="" field="" error_field_suffix="" title="lu_fld_{$field}" hint_label="" is_last="0" field_type="" error_position="top" show_length="1">
+ <inp2:m_inc param="tab_index" by="1"/>
+
+
+ <p class="<inp2:m_Param name='row_class'/><inp2:m_if check='{$prefix}_HasError' field='{$field}{$error_field_suffix}'> error</inp2:m_if>">
+ <label class="field-title" for="<inp2:{$prefix}_InputName field='{$field}{$error_field_suffix}'/>">
+ <inp2:m_Phrase label="$title"/><inp2:m_if check="{$prefix}_IsRequired" field="{$field}{$error_field_suffix}"> <span class="star">*</span></inp2:m_if>
+
+ <inp2:m_if check="m_Param" name="error_position" equals_to="top">
+ <inp2:m_RenderElement name="error_msg_container" pass_params="1"/>
+ </inp2:m_if>
+ </label>
+
+ <span class="field-content" id="<inp2:{$prefix}_InputName field='$field'/>_field_cell">
+ <inp2:m_Param name="content" pass_params="1"/>
+ </span>
+
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ &nbsp;&nbsp;<a href="#"><img src="<inp2:m_TemplatesBase/>img/icon-help.png" width="16" height="16" class="help-icon" title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>" alt=""/></a>
+ </inp2:m_if>
+
+ <script type="text/javascript">
+ FormManager.registerField('<inp2:m_Param name="prefix"/>', '<inp2:m_if check="{$prefix}_FieldOption" field="$field" option="formatter" equals_to="kMultiLanguage">l<inp2:m_Get name="m_lang"/>_</inp2:m_if><inp2:m_Param name="field"/>', undefined, '<inp2:m_Param name="field_type"/>');
+ </script>
+ </p>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="error_msg_container" style="" error_field_suffix="">
+ <em class="red" id="<inp2:{$prefix}_InputName field='$field'/>_status_cell" style="<inp2:m_Param name='style'/>">
+ <inp2:{$prefix}_Error field="{$field}{$error_field_suffix}"/>
+ </em>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_label" as_label="" title="lu_fld_{$field}" currency="" show_length="0" field_type="label" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <inp2:{$prefix}_Field field="$field" as_label="$as_label" currency="$currency"/>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_box" style="" title="lu_fld_{$field}" field_type="text" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input
+ type="text"
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ name="<inp2:{$prefix}_InputName field='$field'/>"
+ id="<inp2:{$prefix}_InputName field='$field'/>"
+ value="<inp2:{$prefix}_Field field='$field'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ <inp2:m_if check="{$prefix}_FieldOption" field="$field" option="max_len">
+ maxlength="<inp2:$prefix_FieldOption field='$field' option='max_len'/>"
+ </inp2:m_if>
+ style="<inp2:m_param name='style'/>"
+ />
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_address" style="" title="lu_fld_{$field}" field_type="text" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input
+ type="text"
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ name="<inp2:{$prefix}_InputName field='$field'/>"
+ id="<inp2:{$prefix}_InputName field='$field'/>"
+ value="<inp2:{$prefix}_Field field='$field'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ <inp2:m_if check="{$prefix}_FieldOption" field="$field" option="max_len">
+ maxlength="<inp2:$prefix_FieldOption field='$field' option='max_len'/>"
+ </inp2:m_if>
+ style="<inp2:m_param name='style'/>"
+ /><br/>
+
+ <input
+ type="text"
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ name="<inp2:{$prefix}_InputName field='$field2'/>"
+ id="<inp2:{$prefix}_InputName field='$field2'/>"
+ value="<inp2:{$prefix}_Field field='$field2'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ <inp2:m_if check="{$prefix}_FieldOption" field="$field2" option="max_len">
+ maxlength="<inp2:$prefix_FieldOption field='$field2' option='max_len'/>"
+ </inp2:m_if>
+ style="<inp2:m_param name='style'/>"
+ />
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_password" title="lu_fld_{$field}" style="" field_type="text" no_editing="1">
+ <inp2:m_ifnot check="m_Get" name="password_js_included">
+ <script src="<inp2:m_Compress files='inc/js/passwordStrengthMeter.js'/>" type="text/javascript"></script>
+ <inp2:m_Set password_js_included="1"/>
+ </inp2:m_ifnot>
+
+ <div id="password-block" class="password-block">
+ <inp2:m_RenderElement design="form_row" row_class="pasfield1" error_position="none" pass_params="1">
+ <input
+ type="password"
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ name="<inp2:$prefix_InputName field='$field'/>"
+ id="<inp2:{$prefix}_InputName field='$field'/>"
+ value="<inp2:{$prefix}_Field name='{$field}_plain'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ style="<inp2:m_param name='style'/>"
+ />
+ </inp2:m_RenderElement>
+
+ <inp2:m_RenderElement design="form_row" row_class="pasfield2" field="Verify{$field}" title="lu_fld_Verify{$field}" error_position="none" pass_params="1">
+ <input
+ type="password"
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ name="<inp2:$prefix_InputName field='$field'/>"
+ id="<inp2:{$prefix}_InputName field='$field'/>"
+ value="<inp2:{$prefix}_Field name='{$field}_plain'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ style="<inp2:m_param name='style'/>"
+ />
+ </inp2:m_RenderElement>
+
+ <div class="clear"></div>
+
+ <div class="password-strength" id="<inp2:{$prefix}_InputName field='$field'/>_strength">Enter your password</div>
+
+ <inp2:m_RenderElement name="error_msg_container" style="padding: 0px; display: block;" pass_params="1"/>
+ <inp2:m_RenderElement name="error_msg_container" field="Verify{$field}" style="padding: 0px; display: block;" pass_params="1"/>
+
+ <script type="text/javascript">
+ new PasswordStrengthMeter(
+ {
+ inputSelector: '#' + jq('<inp2:{$prefix}_InputName field="$field"/>'),
+ phrases: {
+ 'short': '<inp2:m_Phrase name="lu_PasswordStrengthShort" js_escape="1"/>',
+ 'bad': '<inp2:m_Phrase name="lu_PasswordStrengthBad" js_escape="1"/>',
+ 'good': '<inp2:m_Phrase name="lu_PasswordStrengthGood" js_escape="1"/>',
+ 'strong': '<inp2:m_Phrase name="lu_PasswordStrengthStrong" js_escape="1"/>'
+ }
+ }
+ );
+ </script>
+ </div>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_upload" title="lu_fld_{$field}" style="" field_type="upload" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input
+ type="file"
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ name="<inp2:{$prefix}_InputName field='$field'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ style="<inp2:m_param name='style'/>"
+ />
+ <inp2:m_if check="{$prefix}_FieldEquals" name="$field" value="" inverse="inverse">
+ (<inp2:{$prefix}_Field field="$field"/>)
+ </inp2:m_if>
+ <input type="hidden" name="<inp2:{$prefix}_InputName field="$field"/>[upload]" value="<inp2:{$prefix}_Field field="$field"/>" />
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_hidden" db="">
+ <input type="hidden" name="<inp2:{$prefix}_InputName field="$field"/>" id="<inp2:{$prefix}_InputName field="$field"/>" value="<inp2:{$prefix}_Field field="$field" db="$db"/>" />
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_date" title="lu_fld_{$field}" style="" no_editing="1" field_type="date" error_field_suffix="_date">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input
+ type="text"
+ class="field"
+ title="<inp2:{$prefix}_Format field='{$field}_date' input_format='1' human='true'/>"
+ name="<inp2:{$prefix}_InputName field="{$field}_date"/>"
+ id="<inp2:{$prefix}_InputName field="{$field}_date"/>"
+ value="<inp2:{$prefix}_Field field="{$field}_date" format="_regional_InputDateFormat"/>"
+ tabindex="<inp2:m_get param="tab_index"/>"
+ size="<inp2:{$prefix}_Format field="{$field}_date" input_format="1" edit_size="edit_size"/>"
+ style="<inp2:m_param name="style"/>"
+ datepickerIcon="<inp2:m_TemplatesBase module="In-Portal"/>img/calendar_icon.gif"
+ />
+
+ <input type="hidden" name="<inp2:{$prefix}_InputName field="{$field}_time"/>" id="<inp2:{$prefix}_InputName field="{$field}_time" input_format="1"/>" value="" />
+
+ <script type="text/javascript">
+ $( '#' + jq('<inp2:{$prefix}_InputName field="{$field}_date"/>') ).datepicker(
+ {
+ inline: true,
+ dateFormat: get_jq_date_format('<inp2:$prefix_Format name="{$field}_date" input_format="1"/>'),
+ showOn: 'button',
+ buttonImage: '<inp2:m_TemplatesBase/>img/calendar_btn.gif',
+ buttonImageOnly: true,
+ onSelect: function(dateText, inst) {
+ if ( dateText != '' ) {
+ $(this).focus();
+ }
+ }
+ }
+ );
+ </script>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_time" title="lu_fld_{$field}" style="" no_editing="1" field_type="time" error_field_suffix="_time">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input
+ type="text"
+ class="field"
+ title="<inp2:{$prefix}_Format field='{$field}_time' input_format='1' human='true'/>"
+ name="<inp2:{$prefix}_InputName field='{$field}_time'/>"
+ id="<inp2:{$prefix}_InputName field='{$field}_time'/>"
+ value="<inp2:{$prefix}_Field field='{$field}_time' format='_regional_InputTimeFormat'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ size="<inp2:{$prefix}_Format field='{$field}_time' input_format='1' edit_size='edit_size'/>"
+ style="<inp2:m_param name='style'/>">
+
+ <input type="hidden" name="<inp2:{$prefix}_InputName field="{$field}_date"/>" id="<inp2:{$prefix}_InputName field="{$field}_date" input_format="1"/>" value="" />
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_date_time" title="lu_fld_{$field}" style="" field_type="date_time" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input
+ type="text"
+ class="field"
+ title="<inp2:{$prefix}_Format field='{$field}_date' input_format='1' human='true'/>"
+ name="<inp2:{$prefix}_InputName field="{$field}_date"/>"
+ id="<inp2:{$prefix}_InputName field="{$field}_date"/>"
+ value="<inp2:{$prefix}_Field field="{$field}_date"
+ format="_regional_InputDateFormat"/>"
+ tabindex="<inp2:m_get param="tab_index"/>"
+ size="<inp2:{$prefix}_Format field="{$field}_date" input_format="1" edit_size="edit_size"/>"
+ style="<inp2:m_param name="style"/>"
+ datepickerIcon="<inp2:m_ProjectBase/>core/admin_templates/img/calendar_icon.gif"
+ />
+
+ <script type="text/javascript">
+ initCalendar("<inp2:{$prefix}_InputName field="{$field}_date"/>", "<inp2:{$prefix}_Format field="{$field}_date" input_format="1"/>");
+ </script>
+
+ &nbsp;
+ <input
+ type="text"
+ class="field"
+ title="<inp2:{$prefix}_Format field='{$field}_time' input_format='1' human='true'/>"
+ name="<inp2:{$prefix}_InputName field='{$field}_time'/>"
+ id="<inp2:{$prefix}_InputName field='{$field}_time'/>"
+ value="<inp2:{$prefix}_Field field='{$field}_time' format='_regional_InputTimeFormat'/>"
+ tabindex="<inp2:m_get param='tab_index'/>"
+ size="<inp2:{$prefix}_Format field='{$field}_time' input_format='1' edit_size='edit_size'/>"
+ style="<inp2:m_param name='style'/>"
+ />
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_textarea" title="lu_fld_{$field}" style="width: 100%;" cols="" rows="" format="" error_position="top" field_type="textarea" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <textarea
+ class="field"
+ <inp2:m_if check="{$prefix}_FieldHintLabel" title_label="$title" direct_label="$hint_label">
+ title="<inp2:$prefix_FieldHintLabel title_label='$title' direct_label='$hint_label' html_escape='1'/>"
+ </inp2:m_if/>
+ tabindex="<inp2:m_get param="tab_index"/>"
+ name="<inp2:{$prefix}_InputName field='$field'/>"
+ id="<inp2:{$prefix}_InputName field='$field'/>"
+ cols="<inp2:m_param name='cols'/>"
+ rows="<inp2:m_param name='rows'/>"
+ style="<inp2:m_param name='style'/>"
+ ><inp2:{$prefix}_Field field="$field" format="$format"/></textarea>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_option_item">
+ <option value="<inp2:m_param name="key"/>"<inp2:m_param name="selected"/>><inp2:m_param name="option"/></option>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_option_phrase">
+ <option value="<inp2:m_param name="key"/>"<inp2:m_param name="selected"/>><inp2:m_phrase label="$option"/></option>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_options" title="lu_fld_{$field}" style="" has_empty="0" empty_value="" empty_label="" field_type="select" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <select class="field" tabindex="<inp2:m_get param="tab_index"/>" name="<inp2:{$prefix}_InputName field="$field"/>" id="<inp2:{$prefix}_InputName field="$field"/>" style="<inp2:m_param name="style"/>">
+ <inp2:m_if check="{$prefix}_FieldOption" field="$field" option="use_phrases">
+ <inp2:{$prefix}_PredefinedOptions field="$field" block="inp_option_phrase" selected="selected" has_empty="$has_empty" empty_value="$empty_value" empty_label="$empty_label"/>
+ <inp2:m_else/>
+ <inp2:{$prefix}_PredefinedOptions field="$field" block="inp_option_item" selected="selected" has_empty="$has_empty" empty_value="$empty_value" empty_label="$empty_label"/>
+ </inp2:m_if>
+ </select>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_radio_item" style="" onclick="" has_br="0">
+ <input type="radio" tabindex="<inp2:m_get param="tab_index"/>" style="<inp2:m_param name="style"/>" <inp2:m_param name="checked"/> name="<inp2:{$prefix}_InputName field="$field"/>" id="<inp2:{$prefix}_InputName field="$field"/>_<inp2:m_param name="key"/>" value="<inp2:m_param name="key"/>"><label for="<inp2:{$prefix}_InputName field="$field"/>_<inp2:m_param name="key"/>">&nbsp;<inp2:m_param name="option"/></label><inp2:m_if check="m_Param" name="has_br"><br/><inp2:m_else/>&nbsp;&nbsp;</inp2:m_if>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_radio_phrase" style="" onclick="" has_br="0">
+ <input type="radio" tabindex="<inp2:m_get param="tab_index"/>" style="<inp2:m_param name="style"/>" <inp2:m_param name="checked"/> name="<inp2:{$prefix}_InputName field="$field"/>" id="<inp2:{$prefix}_InputName field="$field"/>_<inp2:m_param name="key"/>" value="<inp2:m_param name="key"/>"><label for="<inp2:{$prefix}_InputName field="$field"/>_<inp2:m_param name="key"/>">&nbsp;<inp2:m_phrase label="$option"/></label><inp2:m_if check="m_Param" name="has_br"><br/><inp2:m_else/>&nbsp;&nbsp;</inp2:m_if>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_radio" title="lu_fld_{$field}" style="" pass_tabindex="" onclick="" onchange="" field_type="radio" has_br="0" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <inp2:m_if check="{$prefix}_FieldOption" field="$field" option="use_phrases">
+ <inp2:{$prefix}_PredefinedOptions field="$field" block="inp_radio_phrase" selected="checked" has_br="$has_br"/>
+ <inp2:m_else />
+ <inp2:{$prefix}_PredefinedOptions field="$field" block="inp_radio_item" selected="checked" has_br="$has_br"/>
+ </inp2:m_if>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_captcha" style="" field="Captcha" title="lu_fld_Captcha" no_editing="1" field_type="captcha" is_last="0">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <img src="<inp2:m_Link template="platform/inc/captcha_image.elm" var="{$prefix}_captcha_code" w="150" h="30"/>" alt="<inp2:m_Phrase name="$title" no_editing="1"/>"/><br />
+ <br />
+ <input type="text" class="input-text" name="<inp2:{$prefix}_InputName field="Captcha"/>" id="<inp2:{$prefix}_InputName field="Captcha"/>" value="<inp2:{$prefix}_Field field="Captcha"/>" tabindex="<inp2:m_get param="tab_index"/>" style="<inp2:m_Param name="style"/>"/>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_checkbox" title="lu_fld_{$field}" style="" field_type="checkbox" no_editing="1">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <input type="hidden" id="<inp2:{$prefix}_InputName field="$field"/>" name="<inp2:{$prefix}_InputName field="$field"/>" value="<inp2:{$prefix}_Field field="$field" db="db"/>" />
+ <input tabindex="<inp2:m_get param="tab_index"/>" type="checkbox" id="_cb_<inp2:{$prefix}_InputName field="$field"/>" name="_cb_<inp2:{$prefix}_InputName field="$field"/>" <inp2:{$prefix}_Field field="$field" checked="checked" db="db"/> style="<inp2:m_param name="style"/>" onchange="update_checkbox(this, document.getElementById('<inp2:{$prefix}_InputName field="$field"/>'));">
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_checkbox_item">
+ &nbsp;<input type="checkbox" <inp2:m_param name='checked'/> id="<inp2:{$prefix}_InputName field='$field'/>_<inp2:m_param name='key'/>" value="<inp2:m_param name='key'/>" onclick="update_checkbox_options(/^<inp2:{$prefix}_InputName field='$field' as_preg='1'/>_([0-9A-Za-z-]+)/, '<inp2:{$prefix}_InputName field='$field'/>');"><label for="<inp2:{$prefix}_InputName field='$field'/>_<inp2:m_param name='key'/>"><inp2:m_param name="option"/></label><inp2:m_if check="m_Param" name="has_br"><br/><inp2:m_else/>&nbsp;&nbsp;</inp2:m_if>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_checkbox_phrase">
+ &nbsp;<input type="checkbox" <inp2:m_param name='checked'/> id="<inp2:{$prefix}_InputName field='$field'/>_<inp2:m_param name='key'/>" value="<inp2:m_param name='key'/>" onclick="update_checkbox_options(/^<inp2:{$prefix}_InputName field='$field' as_preg='1'/>_([0-9A-Za-z-]+)/, '<inp2:{$prefix}_InputName field='$field'/>');"><label for="<inp2:{$prefix}_InputName field='$field'/>_<inp2:m_param name='key'/>"><inp2:m_phrase label="$option"/></label><inp2:m_if check="m_Param" name="has_br"><br/><inp2:m_else/>&nbsp;&nbsp;</inp2:m_if>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="inp_edit_checkboxes" title="lu_fld_{$field}" no_empty="" pass_tabindex="" field_type="checkboxes" show_length="0" has_br="0">
+ <inp2:m_RenderElement design="form_row" pass_params="1">
+ <inp2:m_if check="{$prefix}_FieldOption" field="$field" option="use_phrases">
+ <inp2:{$prefix}_PredefinedOptions field="$field" no_empty="$no_empty" tabindex="$pass_tabindex" block="inp_checkbox_phrase" selected="checked" has_br="$has_br"/>
+ <inp2:m_else/>
+ <inp2:{$prefix}_PredefinedOptions field="$field" no_empty="$no_empty" tabindex="$pass_tabindex" block="inp_checkbox_item" selected="checked" has_br="$has_br"/>
+ </inp2:m_if>
+
+ <inp2:m_RenderElement prefix="$prefix" name="inp_edit_hidden" field="$field" db="db"/>
+ </inp2:m_RenderElement>
+</inp2:m_DefineElement>
\ No newline at end of file
Property changes on: branches/1.0.x/elements/forms.elm.tpl
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Index: branches/1.0.x/elements/header.elm.tpl
===================================================================
--- branches/1.0.x/elements/header.elm.tpl (revision 14758)
+++ branches/1.0.x/elements/header.elm.tpl (revision 14759)
@@ -1,102 +1,103 @@
<div id="header">
<div class="logo">
<a href="<inp2:m_Link template="index" m_cat_id="0" />"><img src="<inp2:m_TemplatesBase/>img/logo.jpg" width="238" height="79" alt="<inp2:m_GetConfig name="Site_Name"/>" /></a>
<inp2:st_ContentBlock num="100" page="index"/>
</div>
<div class="infoblock">
<div class="welcome">
<div class="lang">
<div <inp2:m_if check="lang.current_Field" name="IconURL">class="with-icon" style="background-image: url(<inp2:m_TemplatesBase/>img/lang/<inp2:lang.current_Field name='IconURL'/>);"<inp2:m_else/>class="without-icon"</inp2:m_if>>
<a href="#" id="lang"><inp2:lang.current_Field name='LocalName'/></a>
</div>
<div id="lang-sel" class="plashka">
<ul>
<inp2:m_DefineElement name="lang_elem" no_editing="1">
<li>
<inp2:m_if check="Field" name="IconURL">
<a href="<inp2:LanguageLink/>" style="background-image: url(<inp2:m_TemplatesBase/>img/lang/<inp2:Field name='IconURL'/>);" class="with-icon<inp2:m_if check='SelectedLanguage'> active</inp2:m_if>">
<inp2:Field name="LocalName"/>
</a>
<inp2:m_else/>
<a href="<inp2:LanguageLink/>" class="without-icon<inp2:m_if check='SelectedLanguage'> active</inp2:m_if>">
<inp2:Field name="LocalName"/>
</a>
</inp2:m_if>
</li>
</inp2:m_DefineElement>
<inp2:lang_ListLanguages render_as="lang_elem" no_table="1"/>
</ul>
</div>
</div>
<div class="currency">
<div class="cur">
<a href="<inp2:curr.current_CurrencyLink/>" id="currency"><inp2:curr.current_Field name="ISO"/></a>
</div>
<div id="currency-sel" class="plashka">
<ul>
<inp2:m_DefineElement name="currency_elem">
<li>
<a href="<inp2:CurrencyLink/>"<inp2:m_if check='SelectedCurrency'> class="active"</inp2:m_if>>
<inp2:Field name="ISO"/>
</a>
</li>
</inp2:m_DefineElement>
<inp2:curr_ListCurrencies render_as="currency_elem" no_table="1"/>
</ul>
</div>
</div>
- <div class="txt">Welcome! Please <a href="" onclick="TINY.box.show({iframe:'registration.html',width:850,height:570}); return false;">Register</a> for an account or
+ <div class="txt">
+ Welcome! Please <a href="<inp2:m_Link template='login/register' width='850' height='570'/>" class="thickbox">Register</a> for an account or
<div class="login">
<a href="" id="login">Log In</a>
</div>
<div id="login-sel" class="plashka">
<a href="" class="icon-close"><img src="<inp2:m_TemplatesBase />img/icon-close.gif" width="6" height="6" alt="Close" /></a>
<form method="post" action="#" id="login-form" class="form login-form">
<fieldset>
<p><label for="email">E-mail:</label><input type="text" id="email" name="email" value="" class="field" /></p>
<p><label for="password">Password:</label><input type="text" id="password" name="password" value="" class="field" /></p>
<p><label><input type="checkbox" id="remember" name="remember" value="1" /> <u>Remember me on this computer</u></label></p>
<p class="buttons">
<input type="submit" value="Sign in" id="signin" class="green-button" />&nbsp;&nbsp;&nbsp;
<a href="#" style="font-weight: normal;">Forgot password?</a>
</p>
</fieldset>
</form>
</div>
</div>
</div>
<div class="cart">
<span class="phone" style="<inp2:m_ifnot check="ord_ItemsInCart">padding-right:338px;</inp2:m_ifnot>">1-855-WWW-PROS</span>
<inp2:m_if check="ord_ItemsInCart">
<span class="items"><inp2:ord_ItemsInCart/> Items: $1,759<i>.99</i></span>
<span class="delim">|</span>
- <a href="<inp2:m_Link template='checkout/cart' m_cat_id='0' m_cat_page='1'/>">Checkout</a>
+ <a href="<inp2:m_Link template='checkout/cart' m_cat_id='0' m_cat_page='1'/>">Checkout</a>
</inp2:m_if>
</div>
-
+
<!-- Show recently added Product by loading content with Ajax -->
<div class="basketStatus" style="display:none;">
<div class="basketArrow"></div>
<div class="basketContent">
<p class="subtitle">Added to cart:</p>
<div class="img">
<img src="<inp2:m_TemplatesBase />img/samples/good5.jpg" width="58" height="58" alt="" />
</div>
<div class="info good-item">
<p>2 x Apple iMac Desktop Customizable</p>
<p class="price">$759.<span>95</span></p>
</div>
<div class="clear"></div>
</div>
</div>
<!-- end -->
-
+
</div>
<div class="clear"></div>
</div>
Index: branches/1.0.x/img/no_picture.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/1.0.x/img/no_picture.gif
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/1.0.x/img
===================================================================
--- branches/1.0.x/img (revision 14758)
+++ branches/1.0.x/img (revision 14759)
Property changes on: branches/1.0.x/img
___________________________________________________________________
Added: svn:ignore
## -0,0 +1 ##
+resized

Event Timeline