summaryrefslogtreecommitdiff
path: root/frontend/gamma
Side-by-side diff
Diffstat (limited to 'frontend/gamma') (more/less context) (ignore whitespace changes)
-rw-r--r--frontend/gamma/css/web.css56
-rw-r--r--frontend/gamma/js/Clipperz/PM/UI/Web/Components/PageHeader.js4
-rw-r--r--frontend/gamma/js/Clipperz/PM/UI/Web/Components/UserInfoBox.js32
3 files changed, 85 insertions, 7 deletions
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
@@ -381,1109 +381,1159 @@ div.pageHeaderAndBody div.pageHeader div#miscLinks ul {
}
div.pageHeaderAndBody div.pageHeader div#miscLinks ul li {
display: inline;
margin: 0px;
padding: 0px;
border: 0px;
}
div.pageHeaderAndBody div.pageHeader div#miscLinks ul li a {
color: #ffffff;
margin: 0px;
padding: 0px;
border: 0px;
padding: 15px;
border-left: 1px solid #3e428f;
font-weight: normal;
text-decoration: none;
font-size: 12pt;
min-width: 70px;
}
div.pageHeaderAndBody div.pageHeader div#miscLinks ul li a:hover {
color: #b8bae1;
}
div.pageHeaderAndBody div.pageHeader div#miscLinks ul li a#donateHeaderLink {
border-left: 0px;
}
div.pageHeaderAndBody div.pageHeader div#logoFrame {
padding: 16px 16px 60px 16px;
min-height: 44px;
}
div.pageHeaderAndBody div.pageHeader div#logoFrame a {
color: white;
text-decoration: none;
}
div.pageHeaderAndBody div.pageHeader div#logoFrame a canvas {
margin: 0px;
padding: 0px;
border: 0px;
width: 150px;
height: 39px;
}
div.pageHeaderAndBody div.pageHeader div#logoFrame a h5.clipperzPayoff {
font-size: 13pt;
font-weight: normal;
white-space: nowrap;
margin: 0px;
padding-left: 4px;
}
div.pageHeaderAndBody div.pageHeader div#featureTabs table {
width: 100%;
padding: 6px;
padding-left: 15px;
padding-right: 15px;
padding-bottom: 46px;
}
div.pageHeaderAndBody div.pageHeader div#featureTabs table tr td {
width: 25%;
vertical-align: top;
font-size: 11pt;
color: white;
}
div.pageHeaderAndBody div.pageHeader div#featureTabs table tr td img {
float: left;
}
div.pageHeaderAndBody div.pageHeader div#featureTabs table tr td span {
display: block;
padding: 5 10 5 85;
}
div.pageHeaderAndBody div.pageHeader div#featureTabs canvas.featureIcon {
width: 76px;
height: 76px;
display: block;
float: left;
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ffad79), to(#ff6622));
background: -moz-linear-gradient(0% 100% 90deg, #ff6622, #ffad79);
background: linear-gradient(0deg, #ff6622, #ffad79);
border-radius: 38px;
-moz-border-radius: 38px;
-webkit-border-radius: 38px;
}
div.pageHeaderAndBody div.pageHeader div#news {
top: -82px;
left: 240px;
width: 310px;
height: 90px;
position: absolute;
background-color: #616475;
-webkit-border-bottom-left-radius: 8px;
-moz-border-radius-bottomleft: 8px;
border-bottom-left-radius: 8px;
-webkit-border-bottom-right-radius: 8px;
-moz-border-radius-bottomright: 8px;
border-bottom-right-radius: 8px;
-webkit-box-shadow: 2px 2px 9px #333333;
-moz-box-shadow: 2px 2px 9px #333333;
box-shadow: 2px 2px 9px #333333;
}
div.pageHeaderAndBody div.pageHeader div#news div#newsframe {
margin-left: 10px;
margin-right: 10px;
height: 75px;
overflow: hidden;
}
div.pageHeaderAndBody div.pageHeader div#news div#newsframe iframe {
width: 290px;
border: 0px;
color: #616475;
background-color: #616475;
}
div.pageHeaderAndBody div.pageHeader div#news div.grip {
width: 310px;
height: 6px;
margin-top: 2px;
cursor: pointer;
}
div.pageHeaderAndBody div.pageHeader div#news div.grip div.gripHandler {
margin-left: auto;
margin-right: auto;
margin-top: 8px;
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
}
div.pageHeaderAndBody div.pageHeader div#news.open div.grip div.gripHandler {
border-bottom: 5px solid #e9e9ec;
}
div.pageHeaderAndBody div.pageHeader div#news.hidden div.grip div.gripHandler {
border-top: 5px solid #e9e9ec;
}
div.pageFooter {
margin-top: -90px;
height: 90px;
clear: both;
}
div.pageFooter div.footerWrapper {
clear: both;
padding-top: 10px;
}
div.pageFooter div.footerWrapper div.footerContent {
background-color: #eaebe6;
padding: 20px;
font-size: 8pt;
}
div.pageFooter div.footerWrapper div.footerContent canvas.footerStarIcon {
width: 40px;
height: 40px;
float: left;
}
div.pageFooter div.footerWrapper div.footerContent span.copyright {
padding-left: 10px;
color: #a0a0a0;
}
div.pageFooter div.footerWrapper div.footerContent a {
padding-left: 50px;
display: block;
color: #888888;
font-weight: bold;
text-decoration: none;
}
div.pageFooter div.footerWrapper div.footerContent div.applicationVersion {
padding: 8px;
color: #888888;
background-color: #d2d2d2;
position: relative;
top: -40px;
float: right;
}
div.pageFooter div.footerWrapper div.footerContent div.applicationVersion a {
padding-left: 0px;
display: inline;
}
/*
Color list:
- login box:
light #ff9955
dark #ff6622
- login button:
regular #dd5500
hover #773311
- login translations:
box: #cc6622;
not-selected:
color: #ddaa99
background: #994422
selected: #772211;
*/
html {
height: 100%;
}
body {
font-family: Helvetica-Neue, Helvetica, Arial, Geneva, sans-serif;
margin: 0px;
}
div.modalDialogMask.userInfoBoxMask {
-moz-opacity: 0.0;
opacity: .0;
filter: alpha(opacity=0);
z-index: 19000;
}
.reset-margin {
margin: 0px;
padding: 0px;
border: 0px;
}
.clear {
clear: both;
}
.hidden_none {
display: none;
visibility: hidden;
}
.keepTogether {
display: inline-block;
white-space: nowrap;
}
#mainDiv {
margin: 0 auto;
}
div#loginBox {
width: 273px;
z-index: 19000;
top: -30px;
right: 30px;
position: relative;
float: right;
}
div#loginBox div.header {
height: 25px;
width: 273px;
background-color: #ff9b5a;
-webkit-border-top-left-radius: 20px;
-moz-border-radius-topleft: 20px;
border-top-left-radius: 20px;
-webkit-border-top-right-radius: 20px;
-moz-border-radius-topright: 20px;
border-top-right-radius: 20px;
}
div#loginBox div.body {
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ff9b5a), to(#ff6622));
background: -moz-linear-gradient(0% 100% 90deg, #ff6622, #ff9b5a);
background: linear-gradient(0deg, #ff6622, #ff9b5a);
}
div#loginBox div.body h4 {
color: #ffffff;
font-size: 16pt;
font-weight: normal;
padding-left: 20px;
margin: 0px;
}
div#loginBox div.body form.loginForm {
padding: 5px 20px 0px;
margin-bottom: 0px;
}
div#loginBox div.body form.loginForm label {
color: #ffffff;
font-size: 10pt;
display: block;
padding-top: 5px;
}
div#loginBox div.body form.loginForm label.checkbox {
display: inline;
}
div#loginBox div.body form.loginForm input {
width: 230px;
font-size: 14pt;
color: #333366;
background-color: #ffffff;
border: 1px solid #bb4924;
padding: 2px 5px;
height: 28px;
}
div#loginBox div.body form.loginForm input.checkbox {
margin: 10px 8px 0px 0px;
height: auto;
width: auto;
border: 0px;
}
div#loginBox div.body form.loginForm input.checkbox:hover {
cursor: pointer;
}
div#loginBox div.body form.loginForm input.otp {
width: 57px;
display: inline;
padding-left: 0px;
padding-right: 0px;
height: 28px;
font: 8pt monospace;
}
div#loginBox div.body form.loginForm input.submit {
margin: 0px 45px;
width: 140px;
color: #ffffff;
background-color: #d44100;
border: 1px solid #bb4924;
padding: 6px;
font-size: 12pt;
height: auto;
}
div#loginBox div.body form.loginForm input.submit:hover {
color: #ffffff;
background-color: #7e2700;
cursor: pointer;
}
div#loginBox div.body form.loginForm ul {
list-style-type: none;
padding: 0px;
margin: 0px;
}
div#loginBox div.body form.loginForm ul li {
display: block;
}
div#loginBox div.body form.loginForm div.translations {
margin: 15px -20px;
background-color: #c87b59;
}
div#loginBox div.body form.loginForm div.translations h4 {
font-size: 9pt;
padding: 6px 20px 0px;
}
div#loginBox div.body form.loginForm div.translations ul {
margin: 0px;
padding: 5px 10px 10px;
margin-bottom: 15px;
}
div#loginBox div.body form.loginForm div.translations ul li {
font-size: 8pt;
color: #ddaa99;
background-color: #994422;
display: inline-block;
padding: 2px 4px;
margin: 1px;
}
div#loginBox div.body form.loginForm div.translations ul li.selected {
color: #ffffff;
background-color: #772211;
}
div#loginBox div.body form.loginForm div.translations ul li.selected:hover {
cursor: default;
}
div#loginBox div.body form.loginForm div.translations ul li:hover {
cursor: pointer;
color: #ffffff;
}
div#loginBox div.footer {
height: 37px;
width: 273px;
background-color: #ff6622;
-webkit-border-bottom-left-radius: 20px;
-moz-border-radius-bottomleft: 20px;
border-bottom-left-radius: 20px;
-webkit-border-bottom-right-radius: 20px;
-moz-border-radius-bottomright: 20px;
border-bottom-right-radius: 20px;
}
body.ext-gecko div#loginBox form.loginForm div.translations ul li {
display: -moz-inline-box;
}
div#featurePoints {
min-width: 400px;
padding-top: 15px;
padding-bottom: 20px;
padding-left: 20px;
padding-right: 330px;
}
div#featurePoints table tbody tr td {
width: 50%;
vertical-align: top;
}
div#featurePoints div.block {
padding: 10px;
color: #86858e;
}
div#featurePoints div.block h3 {
font-weight: normal;
font-size: 12pt;
margin: 0px;
padding: 5px 0px;
}
div#featurePoints div.block ul {
margin: 0px;
margin-left: 20px;
padding: 0px;
list-style-position: outside;
}
div#featurePoints div.block ul li {
font-size: 10pt;
padding: 3px 0px;
}
div.activeFeatures {
float: left;
margin-left: 20px;
height: 100px;
}
div.activeFeatures a {
display: inline-block;
padding-left: 46px;
color: #ff5906;
text-decoration: none;
font-size: 10pt;
}
div.activeFeatures a span.payoff {
display: block;
font-size: 13pt;
font-weight: lighter;
color: #9b9689;
margin: 0px;
padding: 0px;
}
div.activeFeatures a:hover span.payoff {
color: #666666;
}
div.activeFeatures div.keepTogether a {
padding-left: 0px;
}
div.activeFeatures div.keepTogether div {
display: inline-block;
padding-right: 15px;
}
div.activeFeatures div.keepTogether canvas {
width: 46px;
height: 46px;
vertical-align: bottom;
}
div.activeFeatures div.createAccountLink {
display: inline-block;
width: 282;
height: 65px;
background-image: url(./images/old/home/register.png);
margin-right: 20px;
}
div.activeFeatures div.createAccountLink a.createAccountLink {
position: relative;
top: -92px;
left: 5px;
}
div.activeFeatures div.createAccountLink a.createAccountLink span.payoff {
margin-top: 23px;
margin-left: 40px;
font-size: 17pt;
color: #64626c;
}
div.activeFeatures div.createAccountLink a.createAccountLink span.link {
padding-left: 40px;
padding-right: 50px;
padding-bottom: 10px;
font-size: 12pt;
}
div.activeFeatures div.createAccountLink:hover {
background-image: url(./images/old/home/register_selected.png);
}
div.activeFeatures div.createAccountLink:hover a.createAccountLink span.payoff {
color: #54535a;
}
div.activeFeatures div.createAccountLink:hover a.createAccountLink span.link {
color: white;
}
div.activeFeatures div.createAccountLink canvas {
width: 282px;
height: 93px;
}
/*
Color list:
- login box:
light #ff9955
dark #ff6622
- login button:
regular #dd5500
hover #773311
- login translations:
box: #cc6622;
not-selected:
color: #ddaa99
background: #994422
selected: #772211;
*/
html {
height: 100%;
}
body {
font-family: Helvetica-Neue, Helvetica, Arial, Geneva, sans-serif;
margin: 0px;
}
div.modalDialogMask.userInfoBoxMask {
-moz-opacity: 0.0;
opacity: .0;
filter: alpha(opacity=0);
z-index: 19000;
}
.reset-margin {
margin: 0px;
padding: 0px;
border: 0px;
}
.clear {
clear: both;
}
.hidden_none {
display: none;
visibility: hidden;
}
.keepTogether {
display: inline-block;
white-space: nowrap;
}
#mainDiv {
margin: 0 auto;
}
div.userInfoBox {
position: absolute;
width: 160px;
- height: 120px;
+ height: 200px;
top: 100px;
left: 15px;
color: white;
background-color: #ff9955;
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ff9a56), to(#ff6723));
background: -moz-linear-gradient(0% 100% 90deg, #ff6723, #ff9a56);
background: linear-gradient(0deg, #ff6723, #ff9a56);
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
-webkit-box-shadow: 2px 2px 9px #333333;
-moz-box-shadow: 2px 2px 9px #333333;
box-shadow: 2px 2px 9px #333333;
}
div.userInfoBox.locked {
z-index: 19001;
}
div.userInfoBox.locked div.header a.lockButton {
background: url(./images/old/lock/locked.png) no-repeat -5px -2px;
}
div.userInfoBox.locked div.header a.lockButton:hover {
background: url(./images/old/lock/locked_hover.png) no-repeat -5px -2px;
}
div.userInfoBox.locked div.body a {
display: none;
}
div.userInfoBox div.header {
height: 30px;
}
div.userInfoBox div.header h1 {
font-size: 8pt;
font-weight: normal;
margin: 0px;
padding-top: 12px;
padding-left: 12px;
}
div.userInfoBox div.header a.lockButton {
position: absolute;
top: 8px;
right: 12px;
display: block;
width: 15px;
height: 20px;
text-decoration: none;
background: url(./images/old/lock/unlocked.png) no-repeat -5px -2px;
}
div.userInfoBox div.header a.lockButton:hover {
background: url(./images/old/lock/unlocked_hover.png) no-repeat -5px -2px;
}
div.userInfoBox div.body {
padding: 0px 12px;
}
div.userInfoBox div.body h3 {
font-size: 11pt;
font-weight: bold;
margin: 0px;
}
div.userInfoBox div.body ul {
font-size: 8pt;
padding: 0px;
margin: 4px 0px;
list-style-position: inside;
}
div.userInfoBox div.body ul li span.number {
font-weight: bold;
padding-right: 3px;
}
+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;
padding-top: 6px;
font-size: 10pt;
font-weight: bold;
color: #d15a22;
border-color: #fe9a5f;
text-decoration: none;
}
div.userInfoBox div.body a:hover {
color: #8c3b15;
}
div.sidePanels {
float: left;
- margin-top: 106px;
+ margin-top: 186px;
margin-left: 20px;
width: 160px;
}
div.sidePanels div.tabSidePanel {
margin-right: -10px;
}
div.sidePanels div.tabSidePanel ul {
margin: 0px;
padding-left: 0px;
list-style-type: none;
color: #f78b46;
}
div.sidePanels div.tabSidePanel ul.mainTabs {
margin: 0px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li a {
display: block;
line-height: 30px;
height: 43px;
padding-left: 40px;
color: #ff6621;
margin: 0px;
font-weight: normal;
font-size: 13pt;
text-decoration: none;
}
div.sidePanels div.tabSidePanel ul.mainTabs li div.selectionHighlighter {
display: none;
}
div.sidePanels div.tabSidePanel ul.mainTabs li div.selectionHighlighter a.add {
font-size: 14pt;
font-weight: bold;
position: relative;
top: -34px;
right: 16px;
background: none;
color: #c0531b;
padding-left: 15px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li div.selectionHighlighter a.add:hover {
color: white;
}
div.sidePanels div.tabSidePanel ul.mainTabs li div.selectionHighlighter a.add span {
font-size: 8pt;
vertical-align: middle;
}
div.sidePanels div.tabSidePanel ul.mainTabs li div.selectionHighlighter a.add h3 {
display: inline;
padding-left: 5px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li.selected div.selectionHighlighter {
display: block;
position: absolute;
left: 154px;
margin-top: -43px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li.cards a {
background: url(./images/old/main/tabs/cardsBackground.png) -19px -63px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li.cards a:hover {
background: url(./images/old/main/tabs/cardsBackground.png) -19px -110px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li.cards.selected a {
margin-left: -10px;
padding-left: 50px;
color: white;
background: url(./images/old/main/tabs/cardsBackground.png) -9px -14px;
}
div.sidePanels div.tabSidePanel ul.mainTabs li.directLogins.selected a {
margin-left: -10px;
padding-left: 50px;
color: white;
}
div.sidePanels div.tabSidePanel ul.mainTabs li.directLogins.selected a:hover {
color: white;
}
div.sidePanels div.tabSidePanel ul.otherTabs {
margin: 10px 0px;
}
div.sidePanels div.tabSidePanel ul.otherTabs li {
margin-top: -4px;
}
div.sidePanels div.tabSidePanel ul.otherTabs li div.selectionHighlighter {
display: none;
}
div.sidePanels div.tabSidePanel ul.otherTabs li a {
display: block;
line-height: 36px;
height: 43px;
padding-left: 40px;
color: #ff6621;
text-decoration: none;
}
div.sidePanels div.tabSidePanel ul.otherTabs li a:hover {
background: url(./images/old/main/tabs/itemsBackground.png) -10px -49px;
}
div.sidePanels div.tabSidePanel ul.otherTabs li.selected a {
margin-left: -10px;
padding-left: 50px;
background: url(./images/old/main/tabs/itemsBackground.png) 1px -96px;
color: white;
}
div.sidePanels div.tabSidePanel ul.otherTabs li.selected div.selectionHighlighter {
display: block;
position: absolute;
left: 154px;
margin-top: -42px;
}
div.tagSidePanel {
/*
margin-right: -8px;
div.tagSidePanel div.header {
height: 50px;
background-image: url(./images/old/main/tabs/tagsBackground.png);
}
div.tagSidePanel div.header h1 {
padding-left: 52px;
padding-top: 14px;
font-size: 14pt;
font-weight: normal;
color: #888888;
}
div.tagSidePanel div.body {
background: url(./images/old/main/tabs/tagsBackground.png) -255px;
}
div.tagSidePanel div.footer {
height: 10px;
background: url(./images/old/main/tabs/tagsBackground.png) -510px -40px;
}
div.tagSidePanel ul.tags {
margin: 0px;
list-style-type: none;
padding: 0px;
}
div.tagSidePanel ul.tags li a {
display: block;
font-size: 9pt;
text-decoration: none;
color: #ff6621;
padding: 0px 4px 0px 15px;
line-height: 20px;
}
div.tagSidePanel ul.tags li a:hover {
background-color: #dddddd;
}
div.tagSidePanel ul.tags li span.tagCardinality {
float: right;
font-size: 8pt;
color: #999999;
margin-right: 15px;
margin-top: -17px;
}
div.tagSidePanel ul.tags li.selected a {
background-color: #d4d5cf;
}
div.tagSidePanel ul.tags li.selected a:hover {
background-color: #d4d5cf;
}
div.tagSidePanel ul.tags li.selected a {
font-weight: bold;
}
*/
}
div.groupSidePanel {
/*
margin-right: -10px;
div.groupSidePanel div.header {
height: 50px;
background-image: url(./images/old/main/tabs/groupsBackground.png);
}
div.groupSidePanel div.header h1 {
padding-left: 52px;
padding-top: 14px;
font-size: 14pt;
font-weight: normal;
color: white;
}
div.groupSidePanel div.header a {
float: right;
margin-top: -30px;
margin-right: 20px;
text-decoration: none;
color: #666666;
font-size: 9pt;
line-height: 18px;
}
div.groupSidePanel div.header a:hover {
color: #444444;
}
div.groupSidePanel div.body {
background: url(./images/old/main/tabs/groupsBackground.png) -255px;
}
div.groupSidePanel div.footer {
height: 10px;
background: url(./images/old/main/tabs/groupsBackground.png) -510px -39px;
}
div.groupSidePanel ul.groups {
margin: 0px;
list-style-type: none;
padding: 0px;
}
div.groupSidePanel ul.groups li a {
display: block;
font-size: 9pt;
text-decoration: none;
color: white;
padding: 0px 4px 0px 15px;
line-height: 20px;
}
div.groupSidePanel ul.groups li a:hover {
background-color: #aaaaaa;
}
div.groupSidePanel ul.groups li span.groupCardinality {
float: right;
font-size: 8pt;
color: #dddddd;
margin-right: 15px;
margin-top: -17px;
}
div.groupSidePanel ul.groups li.selected a {
background-color: #bbbbbb;
}
div.groupSidePanel ul.groups li.selected a:hover {
background-color: #bbbbbb;
}
div.groupSidePanel ul.groups li.selected a {
font-weight: bold;
}
*/
}
div.subPanelTabs ul {
margin: 0px;
margin-right: 7px;
padding: 0px;
}
div.subPanelTabs ul li {
display: inline-block;
vertical-align: middle;
height: 50px;
border-right: 1px solid #eef0e3;
border-bottom: 1px solid #d5d5bc;
}
div.subPanelTabs ul li.first {
-webkit-border-top-left-radius: 20px;
-moz-border-radius-topleft: 20px;
border-top-left-radius: 20px;
}
div.subPanelTabs ul li.selected {
background-color: #eef0e3;
border-bottom: 1px solid #eef0e3;
border-right: 1px solid #d5d5bc;
}
div.subPanelTabs ul li.selected:hover {
border-right: 1px solid #d5d5bc;
}
div.subPanelTabs ul li.selected a {
color: #444440;
}
div.subPanelTabs ul li:hover {
border-right: 1px solid #d5d5bc;
background-color: #eef0e3;
}
div.subPanelTabs ul li a {
color: #787872;
text-decoration: none;
display: block;
text-align: center;
padding-top: 15px;
padding-left: 20px;
padding-right: 20px;
font-size: 13pt;
}
div.subPanelContent {
padding-top: 20px;
padding-left: 30px;
padding-right: 30px;
min-height: 280px;
color: #787872;
margin: 0px 6px 0 9px;
}
div.subPanelContent h3 {
margin: 0px;
border: 0px;
padding: 0px;
}
div.subPanelContent ul {
margin: 0px;
padding: 0px;
list-style-type: none;
}
div.subPanelContent ul li {
display: none;
}
div.subPanelContent ul li.selected {
display: block;
}
.downloadOfflineCopy {
display: inline-block;
height: 20px;
cursor: pointer;
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#59bc4c), to(#448833));
background: -moz-linear-gradient(0% 100% 90deg, #448833, #59bc4c);
background: linear-gradient(0deg, #448833, #59bc4c);
border-radius: 5;
-moz-border-radius: 5;
-webkit-border-radius: 5;
border: 1px solid #51a23d;
padding-top: 4px;
padding-left: 15px;
padding-right: 15px;
padding-bottom: 2px;
color: white;
font-weight: lighter;
text-shadow: -1px -1px 1px #448833, 1px 1px 1px #59bc4c;
text-decoration: none;
}
.downloadOfflineCopy:hover {
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#49a23d), to(#448833));
background: -moz-linear-gradient(0% 100% 90deg, #448833, #49a23d);
background: linear-gradient(0deg, #448833, #49a23d);
}
div.SimpleMessagePanel {
position: relative;
left: -225px;
top: -70px;
width: 450px;
height: 140px;
}
div.SimpleMessagePanel div.body {
padding: 20px;
padding-bottom: 15px;
background-color: #f1f1ef;
-webkit-box-shadow: 2px 2px 9px #333333;
-moz-box-shadow: 2px 2px 9px #333333;
box-shadow: 2px 2px 9px #333333;
border-radius: 10;
-moz-border-radius: 10;
-webkit-border-radius: 10;
}
div.SimpleMessagePanel div.body h3 {
font-size: 14pt;
font-weight: normal;
margin: 0px;
padding-top: 4px;
color: #787872;
}
div.SimpleMessagePanel div.body div.img {
width: 50px;
height: 50px;
float: left;
margin-right: 15px;
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ff9b5a), to(#ff6622));
background: -moz-linear-gradient(0% 100% 90deg, #ff6622, #ff9b5a);
background: linear-gradient(0deg, #ff6622, #ff9b5a);
border-radius: 25px;
-moz-border-radius: 25px;
-webkit-border-radius: 25px;
}
div.SimpleMessagePanel div.body div.img canvas {
width: 50px;
height: 50px;
}
div.SimpleMessagePanel div.body p {
margin: 0;
font-size: 10pt;
font-weight: normal;
color: #787872;
padding-top: 10px;
padding-bottom: 5px;
line-height: 1.3;
}
div.SimpleMessagePanel div.body div.buttonArea {
height: 40px;
clear: both;
}
div.SimpleMessagePanel div.body div.buttonArea > div {
float: right;
margin-left: 15px;
margin-top: 10px;
}
div.SimpleMessagePanel div.passphrase {
padding-left: 65px;
}
div.SimpleMessagePanel div.passphrase input {
width: 250px;
font-size: 14pt;
border: 1px solid #bb4924;
color: #333366;
background-color: white;
padding: 2px 5px;
height: 28px;
}
div.SimpleMessagePanel div.progressBarWrapper {
margin-left: 80px;
}
/* @end */
/* @group Javascript Alert */
div#javaScriptAlert div.mask {
position: fixed;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
background-color: black;
z-index: 1001;
-moz-opacity: 0.7;
opacity: .70;
filter: alpha(opacity=70);
}
div#javaScriptAlert div.header {
height: 34px;
width: 468;
background-image: url(./images/old/alert/header.png);
}
div#javaScriptAlert div.body {
background-image: url(./images/old/alert/body.png);
padding: 0px 20px 10px 20px;
}
/*
div#javaScriptAlert div.body div.alert {
padding-left: 100px;
background: url(./images/old/alert/alert.png) no-repeat;
}
*/
/*div#javaScriptAlert div.body img.alert {*/
div#javaScriptAlert div.body div.alertLogo {
float: left;
background-image: url(./images/old/alert/alert.png);
width: 88px;
height: 88px;
}
div#javaScriptAlert div.body div.alert {
padding-left: 100px;
}
div#javaScriptAlert div.footer {
height: 34px;
width: 468;
background-image: url(./images/old/alert/footer.png);
}
div#javaScriptAlert div.message {
position: relative;
top: -150px;
z-index: 1002;
/*
left: 100px;
right: 100px;
*/
margin-left: auto;
margin-right: auto;
max-width: 468px;
}
div#javaScriptAlert div.message h1 {
font-size: 16pt;
margin: 0px;
color: #ff5930;
}
div#javaScriptAlert div.message p {
margin-top: 0px;
color: #999999;
}
div#javaScriptAlert div.message h3 {
font-size: 12pt;
margin-bottom: 0px;
color: #ff5930;
}
div#javaScriptAlert div.message h5 {
margin: 0px;
color: #999999;
}
/* @end */
/* @group Components
*/
/* @group LoginProgress */
div.LoginProgress {
position: relative;
left: -190px;
top: -100px;
width: 380px;
height: 200px;
/* background: url(./images/old/loginProgress/background.png); */
background-color: #d7d7c0;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
-webkit-box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.6);
-moz-box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.6);
box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.6);
}
div.LoginProgress div.header {
height: 40px;
}
div.LoginProgress div.header h3 {
font-size: 12pt;
font-weight: normal;
margin: 0px;
color: #777777;
padding-top: 13px;
padding-left: 18px;
}
div.LoginProgress div.body {
height: 120px;
overflow: auto;
padding-left: 20px;
padding-right: 20px;
background-color: #f1f1e9;
/*
margin-left: 19px;
margin-right: 18px;
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
@@ -1,189 +1,189 @@
/*
Copyright 2008-2013 Clipperz Srl
This file is part of Clipperz, the online password manager.
For further information about its features and functionalities please
refer to http://www.clipperz.com.
* Clipperz is free software: you can redistribute it and/or modify it
under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
* Clipperz is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Affero General Public License for more details.
* You should have received a copy of the GNU Affero General Public
License along with Clipperz. If not, see http://www.gnu.org/licenses/.
*/
Clipperz.Base.module('Clipperz.PM.UI.Web.Components');
Clipperz.PM.UI.Web.Components.PageHeader = function(args) {
args = args || {};
Clipperz.PM.UI.Web.Components.PageHeader.superclass.constructor.apply(this, arguments);
this._newsIsOpen = args.newsIsOpen || false;
this._animationDuration = args.animationDuration || 0.5;
this._offset = 82;
return this;
}
//=============================================================================
Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.PageHeader, Clipperz.PM.UI.Common.Components.BaseComponent, {
//-------------------------------------------------------------------------
'toString': function () {
return "Clipperz.PM.UI.Web.Components.PageHeader component";
},
//-------------------------------------------------------------------------
'iframeURL': function () {
// return './rss_view.html';
- return 'http://www.clipperz.com/files/clipperz.com/appTips/index.html';
+ return 'https://www.clipperz.com/tips/index.html';
},
//-------------------------------------------------------------------------
'renderSelf': function(/*aContainer, aPosition*/) {
this.append(this.element(), [
{tag:'div', id:'miscLinks', children:[
{tag:'ul', children:[
{tag:'li', children:[{tag:'a', id:'donateHeaderLink', stringID:'pageHeader.donation', href:'http://www.clipperz.com/donations', target:'_blank', html:Clipperz.PM.Strings.getValue('pageHeader.donation')}]},
{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')}]},
{tag:'li', children:[{tag:'a', id:'helpHeaderLink', stringID:'pageHeader.help', href:'http://www.clipperz.com/support/user_guide', target:'_blank', html:Clipperz.PM.Strings.getValue('pageHeader.help')}]}
]}
]},
{tag:'div', id:'logoFrame', children:[
{tag:'a', href:'http://www.clipperz.com', target:'_blank', children:[
// {tag:'h1', cls:'logo', html:"clipperz"},
{tag:'canvas', id:this.getId('logo'), cls:'logo'},
{tag:'h5', cls:'clipperzPayoff', html:"keep it to yourself!"}
]}
]},
{tag:'div', id:'news', cls:'hidden', children:[
// {tag:'div', cls:'close', children:[
// {tag:'a', href:'#', id:this.getId('closeTips'), html:'x'}
// ]},
{tag:'div', id:'newsframe', children:[
{tag:'iframe', id:this.getId('iframe'), src:this.iframeURL()}
]},
{tag:'div', id:this.getId('newsGrip'), cls:'grip', children:[
{tag:'div', cls:'gripHandler', children:[]}
]}
]},
{tag:'div', id:'featureTabs', children:[
{tag:'table', children:[{tag:'tr', children:[
{tag:'td', children:[{tag:'div', id:'feature_store', children:[{tag:'canvas', cls:'featureIcon', id:this.getId('storeIcon')}, {tag:'span', html:"Store and manage your password and online credentials"}]}]},
{tag:'td', children:[{tag:'div', id:'feature_protect', children:[{tag:'canvas', cls:'featureIcon', id:this.getId('protectIcon')}, {tag:'span', html:"Protect all your sensitive data"}]}]},
{tag:'td', children:[{tag:'div', id:'feature_directLogin', children:[{tag:'canvas', cls:'featureIcon', id:this.getId('directLoginIcon')}, {tag:'span', html:"Login to your web services without entering any username or password"}]}]},
{tag:'td', children:[{tag:'div', id:'feature_share', children:[{tag:'canvas', cls:'featureIcon', id:this.getId('shareIcon')}, {tag:'span', html:"Share secret with family members and associates"}]}]}
]}]}
]}
]);
Clipperz.PM.UI.Canvas.features.store(this.getElement('storeIcon'), "#ffffff");
Clipperz.PM.UI.Canvas.features.protect(this.getElement('protectIcon'), "#ffffff");
Clipperz.PM.UI.Canvas.features.directLogin(this.getElement('directLoginIcon'), "#ffffff");
Clipperz.PM.UI.Canvas.features.share(this.getElement('shareIcon'), "#ffffff", "#ffffff", "#ff0000");
MochiKit.Signal.connect(this.getElement('newsGrip'), 'onclick', this, 'toggleTips');
MochiKit.Signal.connect(this.getElement('iframe'), 'onload', this, 'handleIframeDidLoad');
this.setLogoDefaultColors();
},
//-------------------------------------------------------------------------
'switchToLoggedMode': function() {
// MochiKit.Style.addElementClass(this.element(), 'logged');
MochiKit.Style.hideElement('featureTabs');
},
//-------------------------------------------------------------------------
'animationDuration': function () {
return this._animationDuration;
},
'offset': function () {
return this._offset;
},
//-------------------------------------------------------------------------
'isNewsOpen': function () {
return this._newsIsOpen;
},
'toggleNewsIsOpen': function () {
this._newsIsOpen = !this._newsIsOpen;
},
'toggleTips': function(anEvent) {
anEvent.preventDefault();
if (this.isNewsOpen() == true) {
MochiKit.Visual.Move(Clipperz.DOM.get('news'), {
x: 0,
y: -this.offset(),
mode: 'relative',
duration: this.animationDuration(),
beforeStart: function () {
MochiKit.DOM.setElementClass(Clipperz.DOM.get('news'), 'hiding');
},
afterFinish: function () {
Clipperz.DOM.get('newsframe').innerHTML = "";
MochiKit.DOM.setElementClass(Clipperz.DOM.get('news'), 'hidden');
}
})
this.toggleNewsIsOpen();
} else {
MochiKit.DOM.addElementClass('newsframe', 'loading');
MochiKit.Visual.Move(Clipperz.DOM.get('news'), {
x: 0,
y: this.offset(),
mode: 'relative',
duration: this.animationDuration(),
beforeStart: MochiKit.Base.bind(function () {
this.append(Clipperz.DOM.get('newsframe'), {tag:'iframe', id:this.getId('iframe'), src:this.iframeURL()});
MochiKit.Signal.connect(this.getElement('iframe'), 'onload', this, 'handleIframeDidLoad');
MochiKit.DOM.setElementClass(Clipperz.DOM.get('news'), 'opening');
}, this),
afterFinish: function () {
MochiKit.DOM.setElementClass(Clipperz.DOM.get('news'), 'open');
}
})
this.toggleNewsIsOpen();
}
},
'setLogoDefaultColors': function () {
Clipperz.PM.UI.Canvas.logo.normal(this.getElement('logo'), "clipperz", "28.0pt", "#ffffff");
},
//-------------------------------------------------------------------------
'handleIframeDidLoad': function (anEvent) {
if (this.isNewsOpen() == false) {
this.toggleTips(anEvent);
}
MochiKit.DOM.removeElementClass('newsframe', 'loading');
MochiKit.Signal.disconnectAllTo(this.getElement('iframe'));
},
//-------------------------------------------------------------------------
__syntaxFix__: "syntax fix"
});
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
@@ -1,337 +1,365 @@
/*
Copyright 2008-2013 Clipperz Srl
This file is part of Clipperz, the online password manager.
For further information about its features and functionalities please
refer to http://www.clipperz.com.
* Clipperz is free software: you can redistribute it and/or modify it
under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
* Clipperz is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Affero General Public License for more details.
* You should have received a copy of the GNU Affero General Public
License along with Clipperz. If not, see http://www.gnu.org/licenses/.
*/
Clipperz.Base.module('Clipperz.PM.UI.Web.Components');
Clipperz.PM.UI.Web.Components.UserInfoBox = function(args) {
args = args || {};
Clipperz.PM.UI.Web.Components.UserInfoBox.superclass.constructor.apply(this, arguments);
this._slots = { };
this._isLocked = false;
this._lockTooltip = null;
return this;
}
//=============================================================================
Clipperz.Base.extend(Clipperz.PM.UI.Web.Components.UserInfoBox, Clipperz.PM.UI.Common.Components.BaseComponent, {
//-------------------------------------------------------------------------
'toString': function () {
return "Clipperz.PM.UI.Web.Components.UserInfoBox component";
},
//-------------------------------------------------------------------------
'handleLogout': function(anEvent) {
//Clipperz.log(">>> UserInfoBox.handleLogout");
anEvent.preventDefault();
MochiKit.Signal.signal(this, 'logout');
//Clipperz.log("<<< UserInfoBox.handleLogout");
},
//-------------------------------------------------------------------------
'lockTooltip': function () {
return this._lockTooltip;
},
//-------------------------------------------------------------------------
'isLocked': function () {
return this._isLocked;
},
'setIsLocked': function (aValue) {
this._isLocked = aValue;
},
'toggleLock': function(anEvent) {
var deferredResult;
var shouldLock;
anEvent.preventDefault();
this.lockTooltip().hide();
shouldLock = (this.isLocked() == false);
if (shouldLock) {
var maskElement;
this.setIsLocked(true);
maskElement = this.getId('modalDialogMask');
deferredResult = Clipperz.Async.callbacks("UserInfoBox.toggleLock [lock]", [
MochiKit.Base.partial(MochiKit.DOM.addElementClass, this.element(), 'locked'),
MochiKit.Base.partial(Clipperz.Visual.deferredAnimation, MochiKit.Visual.appear, maskElement, {from:0.0, to:0.75, duration:0.5}),
MochiKit.Base.method(Clipperz.PM.RunTime.mainController, 'setPassphraseDelegate', MochiKit.Base.method(this, 'askForPassphrase')),
MochiKit.Base.partial(MochiKit.Signal.signal, this, 'lock')
], {trace:false});
} else {
deferredResult = Clipperz.Async.callbacks("UserInfoBox.toggleLock [unlock]", [
MochiKit.Base.partial(MochiKit.Signal.signal, this, 'unlock')
], {trace:false});
}
return deferredResult;
},
//-------------------------------------------------------------------------
'unlock': function () {
var deferredResult;
var maskElement;
this.setIsLocked(false);
maskElement = this.getId('modalDialogMask');
deferredResult = Clipperz.Async.callbacks("UserInfoBox.unlock", [
MochiKit.Base.partial(Clipperz.Visual.deferredAnimation, MochiKit.Visual.fade, maskElement, {from:0.75, to:0.0, duration:0.5}),
// Clipperz.Visual.deferredAnimation(MochiKit.Visual.fade, maskElement, {from:0.75, to:0.0, duration:0.5}),
MochiKit.Base.partial(MochiKit.DOM.removeElementClass, this.element(), 'locked')
], {trace:false});
},
//-------------------------------------------------------------------------
'askForPassphrase': function () {
var unlockPasswordComponent;
/*
var deferredResult;
deferredResult = new Clipperz.Async.Deferred("UserInfoBox.askForPassphrase", {trace:false});
deferredResult.addCallback(MochiKit.Async.succeed, 'test');
deferredResult.callback();
return deferredResult;
*/
unlockPasswordComponent = new Clipperz.PM.UI.Web.Components.UnlockPasswordComponent({
'title': "Unlock account",
'text': "Insert the passprase to unlock the account",
'type': 'INFO',
'buttons': [
{text:"Cancel", result:'CANCEL'},
{text:"Unlock", result:'OK', isDefault:true}
],
'openFromElement': this.getElement('lock'),
'onOkCloseToElement': null,
'onCancelCloseToElement': this.getId('lock')
});
return unlockPasswordComponent.getPassphrase();
},
//=========================================================================
'renderSelf': function(/*aContainer, aPosition*/) {
this.append(this.element(), [
// {tag:'canvas', id:this.getId('canvas'), cls:'canvas', width:'188', height:'154'},
{tag:'div', cls:'header', children:[
{tag:'h1', html:"Welcome"},
{tag:'a', cls:'lockButton', href:'#', id:this.getId('lock'), html:'&nbsp;'}
]},
{tag:'div', cls:'body', children:[
{tag:'h3', id:this.getId('username'), html:""},
{tag:'ul', children:[
{tag:'li', id:this.getId('cards'), children:[
{tag:'span', id:this.getId('cardsNumber'), cls:'number', html:"-"},
{tag:'span', id:this.getId('cardsLabel'), html:"cards"}
]},
{tag:'li', id:this.getId('directLogins'), children:[
{tag:'span', id:this.getId('directLoginsNumber'), cls:'number', html:"-"},
{tag:'span', id:this.getId('directLoginsLabel'), html:"direct logins"}
]}
]},
+ {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 >"}
]},
{tag:'div', cls:'footer'}
]);
- 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');
this._lockTooltip = new Clipperz.PM.UI.Common.Components.Tooltip({
element: this.getElement('lock'),
text: "Click here to lock/unlock your account.",
position: 'RIGHT'
});
Clipperz.DOM.Helper.append(MochiKit.DOM.currentDocument().body,
{tag:'div', id:this.getId('modalDialogWrapper'), cls:'modalDialogWrapper', children:[
{tag:'div', id:this.getId('modalDialogMask'), cls:'modalDialogMask userInfoBoxMask'}
]}
);
MochiKit.Style.hideElement(this.getId('modalDialogMask'));
// this.drawUserInfoBackground(this.getElement('canvas'));
},
//-------------------------------------------------------------------------
+
+ 'handlePayButton': function (anEvent) {
+ anEvent.preventDefault();
+ window.open('https://www.clipperz.com/pricing/', '_blank');
+ },
+
+ //-------------------------------------------------------------------------
/*
'drawUserInfoBackground': function (canvas) {
var kMyDrawingFunctionWidth = 188.0;
var kMyDrawingFunctionHeight = 154.0;
var context = canvas.getContext("2d");
var color;
var resolution;
var alignStroke;
var path;
var pointX;
var pointY;
var controlPoint1X;
var controlPoint1Y;
var controlPoint2X;
var controlPoint2Y;
var gradient;
if (window.devicePixelRatio)
resolution = window.devicePixelRatio;
else
resolution = 1.0;
resolution *= 0.5 * (canvas.width / kMyDrawingFunctionWidth + canvas.height / kMyDrawingFunctionHeight);
context.save();
context.scale(canvas.width / kMyDrawingFunctionWidth, canvas.height / kMyDrawingFunctionHeight);
context.clearRect(0.0, 0.0, kMyDrawingFunctionWidth, kMyDrawingFunctionHeight);
// Setup for Shadow Effect
color = "rgba(0.0%, 0.0%, 0.0%, 0.667)";
context.save();
context.shadowColor = color;
context.shadowBlur = 3.0;
context.shadowOffsetX = 5.729 * Math.cos(7.592) * resolution;
context.shadowOffsetY = 5.729 * Math.sin(7.592) * resolution;
// Layer 1
alignStroke = 0.0;
context.beginPath();
pointX = 169.5;
pointY = 141.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
context.moveTo(pointX, pointY);
pointX = 177.5;
pointY = 133.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
controlPoint1X = 173.889;
controlPoint1Y = 141.5;
controlPoint1X = (Math.round(resolution * controlPoint1X + alignStroke) - alignStroke) / resolution;
controlPoint1Y = (Math.round(resolution * controlPoint1Y + alignStroke) - alignStroke) / resolution;
controlPoint2X = 177.5;
controlPoint2Y = 137.889;
controlPoint2X = (Math.round(resolution * controlPoint2X + alignStroke) - alignStroke) / resolution;
controlPoint2Y = (Math.round(resolution * controlPoint2Y + alignStroke) - alignStroke) / resolution;
context.bezierCurveTo(controlPoint1X, controlPoint1Y, controlPoint2X, controlPoint2Y, pointX, pointY);
pointX = 177.5;
pointY = 19.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
context.lineTo(pointX, pointY);
pointX = 169.5;
pointY = 11.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
controlPoint1X = 177.5;
controlPoint1Y = 15.111;
controlPoint1X = (Math.round(resolution * controlPoint1X + alignStroke) - alignStroke) / resolution;
controlPoint1Y = (Math.round(resolution * controlPoint1Y + alignStroke) - alignStroke) / resolution;
controlPoint2X = 173.889;
controlPoint2Y = 11.5;
controlPoint2X = (Math.round(resolution * controlPoint2X + alignStroke) - alignStroke) / resolution;
controlPoint2Y = (Math.round(resolution * controlPoint2Y + alignStroke) - alignStroke) / resolution;
context.bezierCurveTo(controlPoint1X, controlPoint1Y, controlPoint2X, controlPoint2Y, pointX, pointY);
pointX = 18.5;
pointY = 11.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
context.lineTo(pointX, pointY);
pointX = 10.5;
pointY = 19.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
controlPoint1X = 14.111;
controlPoint1Y = 11.5;
controlPoint1X = (Math.round(resolution * controlPoint1X + alignStroke) - alignStroke) / resolution;
controlPoint1Y = (Math.round(resolution * controlPoint1Y + alignStroke) - alignStroke) / resolution;
controlPoint2X = 10.5;
controlPoint2Y = 15.111;
controlPoint2X = (Math.round(resolution * controlPoint2X + alignStroke) - alignStroke) / resolution;
controlPoint2Y = (Math.round(resolution * controlPoint2Y + alignStroke) - alignStroke) / resolution;
context.bezierCurveTo(controlPoint1X, controlPoint1Y, controlPoint2X, controlPoint2Y, pointX, pointY);
pointX = 10.5;
pointY = 133.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
context.lineTo(pointX, pointY);
pointX = 18.5;
pointY = 141.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
controlPoint1X = 10.5;
controlPoint1Y = 137.889;
controlPoint1X = (Math.round(resolution * controlPoint1X + alignStroke) - alignStroke) / resolution;
controlPoint1Y = (Math.round(resolution * controlPoint1Y + alignStroke) - alignStroke) / resolution;
controlPoint2X = 14.111;
controlPoint2Y = 141.5;
controlPoint2X = (Math.round(resolution * controlPoint2X + alignStroke) - alignStroke) / resolution;
controlPoint2Y = (Math.round(resolution * controlPoint2Y + alignStroke) - alignStroke) / resolution;
context.bezierCurveTo(controlPoint1X, controlPoint1Y, controlPoint2X, controlPoint2Y, pointX, pointY);
pointX = 169.5;
pointY = 141.5;
pointX = (Math.round(resolution * pointX + alignStroke) - alignStroke) / resolution;
pointY = (Math.round(resolution * pointY + alignStroke) - alignStroke) / resolution;
context.lineTo(pointX, pointY);
context.closePath();
gradient = context.createLinearGradient(94.0, 11.5, 94.0, 141.5);
color = "#EE9B69";
gradient.addColorStop(0.0, color);
color = "#E38D62";
gradient.addColorStop(1.0, color);
context.fillStyle = gradient;
context.fill();
// Shadow Effect
context.restore();
context.restore();
},
*/
//-------------------------------------------------------------------------
'updateUserDetails': function (someUserInfo) {
var elementName;
for (elementName in someUserInfo) {
this.getElement(elementName).innerHTML = someUserInfo[elementName];
}
},
//-------------------------------------------------------------------------
__syntaxFix__: "syntax fix"
});