17 files changed, 173 insertions, 26 deletions
diff --git a/frontend/beta/css/clipperz/clipperz.css b/frontend/beta/css/clipperz/clipperz.css index 31458c1..476143d 100644 --- a/frontend/beta/css/clipperz/clipperz.css +++ b/frontend/beta/css/clipperz/clipperz.css @@ -587,3 +587,3 @@ table#mainPanelTABLE { -div#directLoginsBlock { +div#directLoginsBlock, div#accountStatus { width: 230px; @@ -595,3 +595,9 @@ div#directLoginsBlock { -div#directLoginsBlock div.directLoginsBlockHeaderBox { +div#accountStatus div.accountStatus, div#accountStatus div.accountLevel, div#accountStatus div.accountExpiration { + font-size: 10pt; + color: #666666; + padding: 5px 16px 0px 16px; +} + +div#directLoginsBlock div.directLoginsBlockHeaderBox, div#accountStatus div.header { /* background: url(./images/directLoginBox.png) no-repeat -11px -13px; */ @@ -600,3 +606,33 @@ div#directLoginsBlock div.directLoginsBlockHeaderBox { -div#directLoginsBlock h3 { +div#accountStatus span.label { + width: 52px; + display: inline-block; + margin-right: 3px; +} + +div#accountStatus span.label:after { + content: ":"; +} +/* +div#accountStatus div.payButton { + font-size: 10pt; + text-align: center; +} + +div#accountStatus div.payButton a { + color: #666666; + font-weight: bold; + text-decoration: none; +} + +div#accountStatus div.payButton a:hover { + color: #aaaaaa; +} +*/ + +div#accountStatus div.payButton { + text-align: center; +} + +div#directLoginsBlock h3, div#accountStatus div.header h5 { text-align: center; @@ -610,6 +646,5 @@ div#directLoginsBlock h3 { -ul#directLogins { +ul#directLogins, div#accountStatus div.payButton { /* padding: 7px 20px 45px 20px; */ - padding: 7px 12px 45px 12px; - min-height: 200px; + padding: 7px 12px 40px 12px; /* background: url(./images/directLoginBox.png) no-repeat -513px bottom; */ @@ -618,2 +653,6 @@ ul#directLogins { +ul#directLogins { + min-height: 200px; +} + ul#directLogins li { diff --git a/frontend/beta/html/index_template.html b/frontend/beta/html/index_template.html index 0b2875c..c3fd727 100644 --- a/frontend/beta/html/index_template.html +++ b/frontend/beta/html/index_template.html @@ -35,3 +35,3 @@ Clipperz_normalizedNewLine = '\x0d\x0a'; <li><a href="http://www.clipperz.com/donations" id='donateHeaderLink' class='highlightedHeader' target="_blank">donate</a></li> - <li><a href="http://www.clipperz.com/credits" id='creditsHeaderLink' target="_blank">credits</a></li> + <!-- li><a href="http://www.clipperz.com/credits" id='creditsHeaderLink' target="_blank">credits</a></li --> <li><a href="http://www.clipperz.com/contact" id='feedbackHeaderLink' target="_blank">feedback</a></li> diff --git a/frontend/beta/js/Clipperz/PM/Components/Compact/CompactHeader.js b/frontend/beta/js/Clipperz/PM/Components/Compact/CompactHeader.js index 14e42a5..9fda202 100644 --- a/frontend/beta/js/Clipperz/PM/Components/Compact/CompactHeader.js +++ b/frontend/beta/js/Clipperz/PM/Components/Compact/CompactHeader.js @@ -64,3 +64,3 @@ YAHOO.extendX(Clipperz.PM.Components.Compact.CompactHeader, Clipperz.PM.Componen {tag:'li', children:[{tag:'a', id:'donateHeaderLink', html:'donate', target:'_blank'}]}, - {tag:'li', children:[{tag:'a', id:'creditsHeaderLink', html:'credits', target:'_blank'}]}, +// {tag:'li', children:[{tag:'a', id:'creditsHeaderLink', html:'credits', target:'_blank'}]}, {tag:'li', children:[{tag:'a', id:'feedbackHeaderLink', html:'feedback', target:'_blank'}]}, diff --git a/frontend/beta/js/Clipperz/PM/Components/Panels/MainPanel.js b/frontend/beta/js/Clipperz/PM/Components/Panels/MainPanel.js index c19a8a3..bab5fba 100644 --- a/frontend/beta/js/Clipperz/PM/Components/Panels/MainPanel.js +++ b/frontend/beta/js/Clipperz/PM/Components/Panels/MainPanel.js @@ -85,2 +85,24 @@ YAHOO.extendX(Clipperz.PM.Components.Panels.MainPanel, Clipperz.PM.Components.Pa {tag:'td', valign:'top', id:'directLoginsTD', width:'200', children:[ + {tag:'div', id:'accountStatus', children:[ + {tag:'div', cls:'header', children:[{tag:'h5', cls:'title', htmlString:"Account info"}]}, +// {tag:'div', cls:'accountStatus', html:"early adopter"}, + {tag:'div', cls:'accountLevel', children:[ + {tag:'span', cls:'label', html:"status"}, + {tag:'span', cls:'status', html:"early adopter"} + ]}, + {tag:'div', cls:'accountLevel', children:[ + {tag:'span', cls:'label', html:"level"}, +// {tag:'span', cls:'level', html:"★☆☆☆"} + {tag:'span', cls:'level', html:"☆☆☆☆"} + ]}, + {tag:'div', cls:'accountExpiration', children:[ + {tag:'span', cls:'label', html:"expires"}, +// {tag:'span', cls:'expriation', html:"on 26 April 2014"} + {tag:'span', cls:'expriation', html:"never"} + ]}, +// {tag:'div', cls:'payButton', children:[ +// {tag:'a', href:'#', cls:'info', html:"info"} +// ]} + {tag:'div', id:'payButton', cls:'payButton'} + ]}, {tag:'div', id:'directLoginsBlock', children:[ @@ -138,3 +160,5 @@ YAHOO.extendX(Clipperz.PM.Components.Panels.MainPanel, Clipperz.PM.Components.Pa YAHOO.ext.Element.get('directLogins').setVisibilityMode(YAHOO.ext.Element.DISPLAY).hide(); - + // TODO + new YAHOO.ext.Button('payButton', {text:"Info", handler:this.payButtonHandler, scope:this}); + this.recordDetailComponent(); @@ -144,2 +168,8 @@ YAHOO.extendX(Clipperz.PM.Components.Panels.MainPanel, Clipperz.PM.Components.Pa }, + + //------------------------------------------------------------------------- + + 'payButtonHandler': function(anEvent) { + window.open('https://www.clipperz.com/pricing/', '_blank'); + }, diff --git a/frontend/beta/js/Clipperz/PM/Main.js b/frontend/beta/js/Clipperz/PM/Main.js index 3dded31..3329a8e 100644 --- a/frontend/beta/js/Clipperz/PM/Main.js +++ b/frontend/beta/js/Clipperz/PM/Main.js @@ -55,3 +55,3 @@ MochiKit.Base.update(Clipperz.PM.Main.prototype, { YAHOO.ext.Element.get('donateHeaderLink').update(Clipperz.PM.Strings['donateHeaderLinkLabel']).dom.href = Clipperz.PM.Strings['donateHeaderLinkUrl']; - YAHOO.ext.Element.get('creditsHeaderLink').update(Clipperz.PM.Strings['creditsHeaderLinkLabel']).dom.href = Clipperz.PM.Strings['creditsHeaderLinkUrl']; +// YAHOO.ext.Element.get('creditsHeaderLink').update(Clipperz.PM.Strings['creditsHeaderLinkLabel']).dom.href = Clipperz.PM.Strings['creditsHeaderLinkUrl']; YAHOO.ext.Element.get('feedbackHeaderLink').update(Clipperz.PM.Strings['feedbackHeaderLinkLabel']).dom.href = Clipperz.PM.Strings['feedbackHeaderLinkUrl']; diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_de-DE.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_de-DE.js index 0ca4b51..1e2cb50 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_de-DE.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_de-DE.js @@ -70,3 +70,3 @@ Clipperz.PM.Strings.Languages['de-DE'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "Ich akzeptiere dass es Clipperz nicht möglich ist, einen verlorenen Sicherheitssatz wiederherzustellen.", -'registrationFormTermsOfServiceCheckLabel': "Ich habe die <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Nutzungsbedingungen</a> gelesen, verstanden und akzeptiere diese.", +'registrationFormTermsOfServiceCheckLabel': "Ich habe die <a href='https://www.clipperz.com/terms_service' target='_blank'>Nutzungsbedingungen</a> gelesen, verstanden und akzeptiere diese.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "Hast Du bereits einen Zugang?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_el-GR.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_el-GR.js index f7a7583..42ecf53 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_el-GR.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_el-GR.js @@ -151,3 +151,3 @@ Clipperz.PM.Strings.Languages['el-gr'] = MochiKit.Base.merge(Clipperz.PM.Strings 'registrationFormSafetyCheckLabel': "Κατανοώ πως το Clipperz δεν θα μπορεί να ανακτήσει μία χαμένη κωδική φράση.", - 'registrationFormTermsOfServiceCheckLabel': "Έχω διαβάσει και αποδέχομαι τους Όρους Χρήσης <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Όρους Χρήσης</a>.", + 'registrationFormTermsOfServiceCheckLabel': "Έχω διαβάσει και αποδέχομαι τους Όρους Χρήσης <a href='https://www.clipperz.com/terms_service' target='_blank'>Όρους Χρήσης</a>.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "Έχετε ήδη έναν λογαριασμό?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js index 97543a4..ce8dd85 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js @@ -161,3 +161,3 @@ Clipperz.PM.Strings.Languages['en-us'] = { 'registrationFormSafetyCheckLabel': "I understand that Clipperz will not be able to recover a lost passphrase.", -'registrationFormTermsOfServiceCheckLabel': "I have read and agreed to the <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Terms of Service</a>.", +'registrationFormTermsOfServiceCheckLabel': "I have read and agreed to the <a href='https://www.clipperz.com/terms_service' target='_blank'>Terms of Service</a>.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "do you already have an account?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_es-ES.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_es-ES.js index 2090913..34bdbec 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_es-ES.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_es-ES.js @@ -77,3 +77,3 @@ Clipperz.PM.Strings.Languages['es-ES'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "Yo entiendo que Clipperz no me permite recuperar frases clave perdidas", -'registrationFormTermsOfServiceCheckLabel': "He leído y estoy de acuerdo con los <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Términos de Servicio</a>.", +'registrationFormTermsOfServiceCheckLabel': "He leído y estoy de acuerdo con los <a href='https://www.clipperz.com/terms_service' target='_blank'>Términos de Servicio</a>.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "¿usted ya tiene una cuenta?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_fr-FR.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_fr-FR.js index 08f0c21..71ea987 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_fr-FR.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_fr-FR.js @@ -70,3 +70,3 @@ Clipperz.PM.Strings.Languages['fr-FR'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "J’accepte que Clipperz ne pourra pas récupérer ma phrase secrète.", -'registrationFormTermsOfServiceCheckLabel': "J’ai lu et j’accepte les <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Conditions d’Utilisation du Service</a>.", +'registrationFormTermsOfServiceCheckLabel': "J’ai lu et j’accepte les <a href='https://www.clipperz.com/terms_service' target='_blank'>Conditions d’Utilisation du Service</a>.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "avez-vous déjà un compte?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_it-IT.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_it-IT.js index 0499376..9dd0511 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_it-IT.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_it-IT.js @@ -79,3 +79,3 @@ Clipperz.PM.Strings.Languages['it-IT'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "Sono consapevole che Clipperz non è in grado di recuperare una frase segreta dimenticata.", -'registrationFormTermsOfServiceCheckLabel': "Dichiaro di aver letto e di accettare i <a href=\"http://www.clipperz.com/terms_of_service\" target=\"_blank\">Termini del Servizio</a> .", +'registrationFormTermsOfServiceCheckLabel': "Dichiaro di aver letto e di accettare i <a href=\"https://www.clipperz.com/terms_service\" target=\"_blank\">Termini del Servizio</a> .", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "sei già un utente registrato?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_pt-BR.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_pt-BR.js index 8478c0d..e3c2fc7 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_pt-BR.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_pt-BR.js @@ -77,3 +77,3 @@ Clipperz.PM.Strings.Languages['pt-BR'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "Eu compreendo que Clipperz não será capaz de recuperar senhas perdidas.", -'registrationFormTermsOfServiceCheckLabel': "Eu li e concordo com os <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Termos do Serviço</a>.", +'registrationFormTermsOfServiceCheckLabel': "Eu li e concordo com os <a href='https://www.clipperz.com/terms_service' target='_blank'>Termos do Serviço</a>.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "você já tem uma conta?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_ru-RU.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_ru-RU.js index 612e745..0d71345 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_ru-RU.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_ru-RU.js @@ -84,3 +84,3 @@ Clipperz.PM.Strings.Languages['ru-RU'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "Я понимаю, что Clipperz не сможет восстановить забытый пароль", -'registrationFormTermsOfServiceCheckLabel': "Я прочитал и согласен с <a href='http://www.clipperz.com/terms_of_service' target='_blank'>Условиями предоставления услуг</a>.", +'registrationFormTermsOfServiceCheckLabel': "Я прочитал и согласен с <a href='https://www.clipperz.com/terms_service' target='_blank'>Условиями предоставления услуг</a>.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "у вас уже есть аккаунт?", diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_zh-CN.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_zh-CN.js index e880954..e1e2508 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_zh-CN.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_zh-CN.js @@ -77,3 +77,3 @@ Clipperz.PM.Strings.Languages['zh-CN'.toLowerCase()] = MochiKit.Base.merge(Clipp 'registrationFormSafetyCheckLabel': "我明白 Clipperz 无法找回忘记的密码短语.", -'registrationFormTermsOfServiceCheckLabel': "我同意接受 <a href='http://www.clipperz.com/terms_of_service' target='_blank'>服务条款</a> 款.", +'registrationFormTermsOfServiceCheckLabel': "我同意接受 <a href='https://www.clipperz.com/terms_service' target='_blank'>服务条款</a> 款.", 'registrationFormDoYouAlreadyHaveAnAccountLabel': "如果已有一个 Clipperz 帐户", diff --git a/frontend/gamma/css/web.css b/frontend/gamma/css/web.css index 011831a..7d1745b 100644 --- a/frontend/gamma/css/web.css +++ b/frontend/gamma/css/web.css @@ -892,3 +892,3 @@ div.userInfoBox { width: 160px; - height: 120px; + height: 200px; top: 100px; @@ -960,5 +960,55 @@ div.userInfoBox div.body ul li span.number { } +div.userInfoBox div.body div.accountInfo { + margin-top: 6px; + border-top: 1px solid white; + border-color: #f4aa84; +} +div.userInfoBox div.body div.accountInfo h5 { + margin: 0px; + padding-top: 8px; + padding-bottom: 8px; + font-size: 8pt; + font-weight: normal; +} +div.userInfoBox div.body div.accountInfo span.label { + font-size: 9pt; + font-weight: normal; + padding-right: 4px; + display: inline-block; + width: 45px; +} +div.userInfoBox div.body div.accountInfo span.label:after { + content: ":"; +} +div.userInfoBox div.body div.accountInfo span.status { + font-size: 10pt; +} +div.userInfoBox div.body div.accountInfo span.expriation { + font-size: 9pt; +} +div.userInfoBox div.body div.accountInfo div.payButton { + float: right; + padding-top: 6px; + text-align: right; +} +div.userInfoBox div.body div.accountInfo div.payButton a { + border: 0px; + margin-top: 0px; + padding: 0px; + color: white; + display: inline-block; + padding: 2px 5px 2px 5px; + border-radius: 4px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + font-size: 9pt; + font-weight: normal; + background-color: #d15a22; +} +div.userInfoBox div.body div.accountInfo div.payButton a:hover { + background-color: #8c3b15; +} div.userInfoBox div.body a { display: block; - margin-top: 8px; + margin-top: 4px; border-top: 1px solid white; @@ -976,3 +1026,3 @@ div.sidePanels { float: left; - margin-top: 106px; + margin-top: 186px; margin-left: 20px; diff --git a/frontend/gamma/js/Clipperz/PM/UI/Web/Components/PageHeader.js b/frontend/gamma/js/Clipperz/PM/UI/Web/Components/PageHeader.js index 5e49fb5..3c57f67 100644 --- a/frontend/gamma/js/Clipperz/PM/UI/Web/Components/PageHeader.js +++ b/frontend/gamma/js/Clipperz/PM/UI/Web/Components/PageHeader.js @@ -51,3 +51,3 @@ Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.PageHeader, Clipperz.PM.UI.Co // return './rss_view.html'; - return 'http://www.clipperz.com/files/clipperz.com/appTips/index.html'; + return 'https://www.clipperz.com/tips/index.html'; }, @@ -62,3 +62,3 @@ Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.PageHeader, Clipperz.PM.UI.Co {tag:'li', children:[{tag:'a', id:'forumHeaderLink', stringID:'pageHeader.forum', href:'http://www.clipperz.com/forum', target:'_blank', html:Clipperz.PM.Strings.getValue('pageHeader.forum')}]}, - {tag:'li', children:[{tag:'a', id:'creditsHeaderLink', stringID:'pageHeader.credits', href:'http://www.clipperz.com/credits', target:'_blank', html:Clipperz.PM.Strings.getValue('pageHeader.credits')}]}, +// {tag:'li', children:[{tag:'a', id:'creditsHeaderLink', stringID:'pageHeader.credits', href:'http://www.clipperz.com/credits', target:'_blank', html:Clipperz.PM.Strings.getValue('pageHeader.credits')}]}, {tag:'li', children:[{tag:'a', id:'feedbackHeaderLink', stringID:'pageHeader.feedback', href:'http://www.clipperz.com/contact', target:'_blank', html:Clipperz.PM.Strings.getValue('pageHeader.feedback')}]}, diff --git a/frontend/gamma/js/Clipperz/PM/UI/Web/Components/UserInfoBox.js b/frontend/gamma/js/Clipperz/PM/UI/Web/Components/UserInfoBox.js index fbf58e0..91085cf 100644 --- a/frontend/gamma/js/Clipperz/PM/UI/Web/Components/UserInfoBox.js +++ b/frontend/gamma/js/Clipperz/PM/UI/Web/Components/UserInfoBox.js @@ -168,2 +168,22 @@ Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.UserInfoBox, Clipperz.PM.UI.C ]}, + {tag:'div', cls:'accountInfo', children:[ + {tag:'div', cls:'payButton', children:[ + {tag:'a', href:'#', id:this.getId('payButton'), cls:'info', html:"info"} + ]}, + {tag:'h5', html:"Account info"}, + {tag:'div', cls:'accountStatus', children:[ + {tag:'span', cls:'label', html:"status"}, + {tag:'span', cls:'status', html:"early adopter"} + ]}, + {tag:'div', cls:'accountLevel', children:[ + {tag:'span', cls:'label', html:"level"}, +// {tag:'span', cls:'level', html:"★☆☆☆"} + {tag:'span', cls:'level', html:"☆☆☆☆"} + ]}, + {tag:'div', cls:'accountExpiration', children:[ + {tag:'span', cls:'label', html:"expires"}, +// {tag:'span', cls:'expriation', html:"on 26 April 2014"} + {tag:'span', cls:'expriation', html:"never"} + ]} + ]}, {tag:'a', href:'#', id:this.getId('logout'), html:"logout >"} @@ -173,4 +193,5 @@ Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.UserInfoBox, Clipperz.PM.UI.C - MochiKit.Signal.connect(this.getElement('logout'), 'onclick', this, 'handleLogout'); - MochiKit.Signal.connect(this.getElement('lock'), 'onclick', this, 'toggleLock'); + MochiKit.Signal.connect(this.getElement('logout'), 'onclick', this, 'handleLogout'); + MochiKit.Signal.connect(this.getElement('lock'), 'onclick', this, 'toggleLock'); + MochiKit.Signal.connect(this.getElement('payButton'), 'onclick', this, 'handlePayButton'); @@ -193,2 +214,9 @@ Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.UserInfoBox, Clipperz.PM.UI.C //------------------------------------------------------------------------- + + 'handlePayButton': function (anEvent) { + anEvent.preventDefault(); + window.open('https://www.clipperz.com/pricing/', '_blank'); + }, + + //------------------------------------------------------------------------- /* |