| | |
| | | import enUS from '@/locales/en-US/mob.js' |
| | | import Utils from '@/utils/utils.js' |
| | | import ContentUpdate from '@/mob/contupdate' |
| | | import ContentDelete from '@/mob/contdelete' |
| | | import './index.scss' |
| | | |
| | | class MobLogin2 extends Component { |
| | |
| | | type: 'login', |
| | | subtype: 'mob-login-2', |
| | | box: { uuid: Utils.getuuid(), eleType: 'box', style: {}}, |
| | | title: { uuid: Utils.getuuid(), eleType: 'text', content: '登录', style: {fontSize: '18px', fontWeight: 'bold', color: '#000000', textAlign: 'center', marginTop: '10vh', marginBottom: '10vh'}}, |
| | | title: { |
| | | uuid: Utils.getuuid(), eleType: 'text', content: '登录', |
| | | style: { |
| | | fontSize: '18px', fontWeight: 'bold', color: '#000000', textAlign: 'center', marginTop: '10vh', marginBottom: '10vh' |
| | | } |
| | | }, |
| | | user: { uuid: Utils.getuuid(), eleType: 'input', content: '邮箱/手机', style: {}}, |
| | | password: { uuid: Utils.getuuid(), eleType: 'input', content: '密码', style: {}}, |
| | | login: { uuid: Utils.getuuid(), eleType: 'button', content: '登录', style: {fontSize: '16px', color: '#ffffff', textAlign: 'center', lineHeight: 2.4, backgroundColor: '#44a8f2'}}, |
| | | phone: { uuid: Utils.getuuid(), eleType: 'button', content: '手机短信登录', style: {fontSize: '16px', color: '#44a8f2', textAlign: 'center', lineHeight: 2.4, border: '1px solid #44a8f2'}}, |
| | | register: { uuid: Utils.getuuid(), eleType: 'text', content: '注册', style: {fontSize: '14px', color: '#44a8f2', textAlign: 'left'}}, |
| | | lose: { uuid: Utils.getuuid(), eleType: 'text', content: '忘记密码?', style: {fontSize: '14px', color: '#44a8f2', textAlign: 'right', textDecoration: 'underline'}}, |
| | | auth: { |
| | | uuid: Utils.getuuid(), eleType: 'text', |
| | | subItems: [ |
| | | {type: 'qq', icon: 'qq', label: 'QQ'}, |
| | | {type: 'wechat', icon: 'wechat', label: '微信'}, |
| | | ], |
| | | content: '其他登录方式', style: {fontSize: '14px', color: '#bcbcbc', textAlign: 'center', marginTop: '30px', marginBottom: '20px'} |
| | | login: { |
| | | uuid: Utils.getuuid(), eleType: 'button', content: '登录', |
| | | style: { |
| | | fontSize: '16px', color: '#ffffff', textAlign: 'center', lineHeight: 2.4, backgroundColor: '#44a8f2' |
| | | } |
| | | }, |
| | | copyright: { uuid: Utils.getuuid(), eleType: 'textarea', content: 'Copyright©2017 所有相关版权归 北京明科普华信息技术有限公司', style: {fontSize: '12px', textAlign: 'center'} }, |
| | | phone: { |
| | | uuid: Utils.getuuid(), eleType: 'button', content: '手机短信登录', |
| | | style: { |
| | | fontSize: '16px', color: '#44a8f2', textAlign: 'center', lineHeight: 2.4, border: '1px solid #44a8f2' |
| | | } |
| | | }, |
| | | register: { |
| | | uuid: Utils.getuuid(), eleType: 'text', content: '注册', |
| | | style: { |
| | | fontSize: '14px', color: '#44a8f2', textAlign: 'left' |
| | | } |
| | | }, |
| | | lose: { |
| | | uuid: Utils.getuuid(), eleType: 'text', content: '忘记密码?', |
| | | style: { |
| | | fontSize: '14px', color: '#44a8f2', textAlign: 'right', textDecoration: 'underline' |
| | | } |
| | | }, |
| | | auth: { |
| | | uuid: Utils.getuuid(), eleType: 'text', content: '其他登录方式', |
| | | style: { |
| | | fontSize: '14px', color: '#bcbcbc', textAlign: 'center', marginTop: '30px', marginBottom: '20px' |
| | | } |
| | | }, |
| | | authlist: { |
| | | uuid: Utils.getuuid(), |
| | | subItems: [ |
| | | {uuid: 'qq', type: 'qq', icon: 'qq', label: 'QQ'}, |
| | | {uuid: 'wechat', type: 'wechat', icon: 'wechat', label: '微信'}, |
| | | ], |
| | | }, |
| | | copyright: { |
| | | uuid: Utils.getuuid(), eleType: 'textarea', content: 'Copyright©2017 所有相关版权归 北京明科普华信息技术有限公司', |
| | | style: { |
| | | fontSize: '12px', textAlign: 'center', color: 'rgba(0, 0, 0, 0.65)' |
| | | } |
| | | }, |
| | | links: { |
| | | uuid: Utils.getuuid(), eleType: 'link', substyle: false, |
| | | subItems: [ |
| | | {eleType: 'link', content: '隐私政策', url: '', uuid: Utils.getuuid()}, |
| | | {eleType: 'link', content: '使用条款', url: '', uuid: Utils.getuuid()}, |
| | | ], |
| | | style: {fontSize: '12px', textAlign: 'center', color: '#44a8f2', textDecoration: 'underline'} |
| | | style: { |
| | | fontSize: '12px', textAlign: 'center', color: '#44a8f2', textDecoration: 'underline' |
| | | } |
| | | }, |
| | | account: { |
| | | uuid: Utils.getuuid(), eleType: 'button', content: '账号密码登录', |
| | | style: { |
| | | fontSize: '16px', color: '#44a8f2', textAlign: 'center', lineHeight: 2.4, border: '1px solid #44a8f2' |
| | | } |
| | | }, |
| | | } |
| | | } |
| | | |
| | |
| | | ...fromJS(card.copyright.style).toJS(), |
| | | componentId: card.uuid, |
| | | uuid: card.copyright.uuid, |
| | | items: ['font'], |
| | | items: ['font', 'margin'], |
| | | } |
| | | this.props.triggerEdit(element) |
| | | } |
| | |
| | | ...fromJS(card[type].style).toJS(), |
| | | componentId: card.uuid, |
| | | uuid: card[type].uuid, |
| | | items: ['font', 'background', 'border'] |
| | | items: ['font', 'background', 'border', 'margin'] |
| | | } |
| | | this.props.triggerEdit(element) |
| | | } |
| | |
| | | titleStyle.marginBottom = `calc(${(percent / 100) * 615}px)` |
| | | } |
| | | |
| | | if (view === 'account') return ( |
| | | if (view === 'account') { |
| | | return ( |
| | | <div className="mob-login-2" onClick={this.editBox} style={card.box.style}> |
| | | {card.title ? <div className={'plat-name ' + (editId === card.title.uuid ? 'editing' : '')} style={titleStyle} onClick={this.editTitle}> |
| | | <ContentUpdate element={card.title} updateContent={(ele) => this.updateContent({...card, title: ele})}/> |
| | |
| | | |
| | | <div className={`mk-login-input ${editId === card.user.uuid ? 'editing' : ''}`} onClick={(e) => this.editPlaceholder(e, 'user')}> |
| | | <ContentUpdate element={card.user} deletable={false} updateContent={(ele) => this.updateContent({...card, user: ele})}/> |
| | | <InputItem placeholder={card.user.content}></InputItem> |
| | | <InputItem disabled={true} placeholder={card.user.content}></InputItem> |
| | | </div> |
| | | <div className={`mk-login-input ${editId === card.password.uuid ? 'editing' : ''}`} onClick={(e) => this.editPlaceholder(e, 'password')}> |
| | | <ContentUpdate element={card.password} deletable={false} updateContent={(ele) => this.updateContent({...card, password: ele})}/> |
| | | <InputItem placeholder={card.password.content}></InputItem> |
| | | <InputItem disabled={true} placeholder={card.password.content}></InputItem> |
| | | </div> |
| | | <Button |
| | | className={'login ' + (editId === card.login.uuid ? 'editing' : '')} |
| | |
| | | </Button> |
| | | <Button |
| | | className={'login ' + (editId === card.phone.uuid ? 'editing' : '')} |
| | | onDoubleClick={() => this.props.doubleClickCard(card.phone)} |
| | | onDoubleClick={() => this.setState({view: 'phone'})} |
| | | style={card.phone.style} |
| | | onClick={(e) => this.editLogin(e, 'phone')} |
| | | > |
| | |
| | | <ContentUpdate element={card.auth} updateContent={(ele) => this.updateContent({...card, auth: ele})}/> |
| | | {card.auth.content} |
| | | </div> : null} |
| | | {card.auth ? <div className="other-auth"> |
| | | {card.auth.subItems.map(cell => ( |
| | | <span key={cell.type}> |
| | | {card.authlist ? <div className="other-auth"> |
| | | {card.authlist.subItems.map(cell => ( |
| | | <span className="deletable-item" key={cell.type}> |
| | | <ContentDelete element={cell} list={card.authlist} updateContent={(ele) => this.updateContent({...card, authlist: ele})}/> |
| | | <Icon type={cell.icon} /> |
| | | <p>{cell.label}</p> |
| | | </span> |
| | |
| | | </div> : null} |
| | | </div> |
| | | ) |
| | | } else if (view === 'phone') { |
| | | return ( |
| | | <div className="mob-login-2" onClick={this.editBox} style={card.box.style}> |
| | | {card.title ? <div className={'plat-name ' + (editId === card.title.uuid ? 'editing' : '')} style={titleStyle} onClick={this.editTitle}> |
| | | <ContentUpdate element={card.title} updateContent={(ele) => this.updateContent({...card, title: ele})}/> |
| | | {card.title.content} |
| | | </div> : null} |
| | | |
| | | <div className={`mk-login-input ${editId === card.user.uuid ? 'editing' : ''}`} onClick={(e) => this.editPlaceholder(e, 'user')}> |
| | | <ContentUpdate element={card.user} deletable={false} updateContent={(ele) => this.updateContent({...card, user: ele})}/> |
| | | <InputItem disabled={true} placeholder={card.user.content}></InputItem> |
| | | </div> |
| | | <div className={`mk-login-input ${editId === card.password.uuid ? 'editing' : ''}`} onClick={(e) => this.editPlaceholder(e, 'password')}> |
| | | <ContentUpdate element={card.password} deletable={false} updateContent={(ele) => this.updateContent({...card, password: ele})}/> |
| | | <InputItem disabled={true} placeholder={card.password.content}></InputItem> |
| | | </div> |
| | | <Button |
| | | className={'login ' + (editId === card.login.uuid ? 'editing' : '')} |
| | | onDoubleClick={() => this.props.doubleClickCard(card.login)} |
| | | style={card.login.style} |
| | | onClick={(e) => this.editLogin(e, 'login')} |
| | | > |
| | | <ContentUpdate element={card.login} deletable={false} updateContent={(ele) => this.updateContent({...card, login: ele})}/> |
| | | {card.login.content} |
| | | </Button> |
| | | <Button |
| | | className={'login ' + (editId === card.account.uuid ? 'editing' : '')} |
| | | onDoubleClick={() => this.setState({view: 'account'})} |
| | | style={card.account.style} |
| | | onClick={(e) => this.editLogin(e, 'account')} |
| | | > |
| | | <ContentUpdate element={card.account} updateContent={(ele) => this.updateContent({...card, account: ele})}/> |
| | | {card.account.content} |
| | | </Button> |
| | | <div className="row-box"> |
| | | {card.register ? <div className={'col-item ' + (editId === card.register.uuid ? 'editing' : '')} style={card.register.style} onClick={this.editRegister}> |
| | | <ContentUpdate element={card.register} updateContent={(ele) => this.updateContent({...card, register: ele})}/> |
| | | {card.register.content} |
| | | </div> : null} |
| | | {card.lose ? <div className={'col-item right ' + (editId === card.lose.uuid ? 'editing' : '')} style={card.lose.style} onClick={this.editLose}> |
| | | <ContentUpdate element={card.lose} updateContent={(ele) => this.updateContent({...card, lose: ele})}/> |
| | | {card.lose.content} |
| | | </div> : null} |
| | | <div style={{clear: 'both'}}></div> |
| | | </div> |
| | | {card.auth ? <div className={'plat-name ' + (editId === card.auth.uuid ? 'editing' : '')} style={card.auth.style} onClick={this.editAuth}> |
| | | <ContentUpdate element={card.auth} updateContent={(ele) => this.updateContent({...card, auth: ele})}/> |
| | | {card.auth.content} |
| | | </div> : null} |
| | | {card.authlist ? <div className="other-auth"> |
| | | {card.authlist.subItems.map(cell => ( |
| | | <span className="deletable-item" key={cell.type}> |
| | | <ContentDelete element={cell} list={card.authlist} updateContent={(ele) => this.updateContent({...card, authlist: ele})}/> |
| | | <Icon type={cell.icon} /> |
| | | <p>{cell.label}</p> |
| | | </span> |
| | | ))} |
| | | </div> : null} |
| | | {card.copyright ? <div className={'company-msg ' + (editId === card.copyright.uuid ? 'editing' : '')} style={card.copyright.style} onClick={this.editMsg}> |
| | | <ContentUpdate element={card.copyright} updateContent={(ele) => this.updateContent({...card, copyright: ele})}/> |
| | | {card.copyright.content} |
| | | </div> : null} |
| | | {card.links ? <div className="links" style={card.links.style}> |
| | | {card.links.subItems.map(item => ( |
| | | <span className={(editId === item.uuid ? 'editing' : '')} key={item.uuid} onClick={(e) => this.editLinks(e, item)}> |
| | | <ContentUpdate element={item} updateContent={(val) => this.updateLinkItem(val, item)}/> |
| | | {item.content} |
| | | </span> |
| | | ))} |
| | | <Icon type="plus" onClick={this.linkItemAdd} /> |
| | | </div> : null} |
| | | </div> |
| | | ) |
| | | } |
| | | } |
| | | } |
| | | |