Commit e99aece6 authored by 2breakegg's avatar 2breakegg

i18n

parent f9c4e7cd
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="eb37985e-18dc-4e2f-82ba-9874832785ff" name="Default" comment=""> <list default="true" id="eb37985e-18dc-4e2f-82ba-9874832785ff" name="Default" comment="i18n + 修改账户信息 无密码长度约束">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/i18n.json" afterPath="$PROJECT_DIR$/i18n.json" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/i18n.json" afterPath="$PROJECT_DIR$/i18n.json" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/EmailForm.js" afterPath="$PROJECT_DIR$/src/components/EmailForm.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/EmailForm.js" afterPath="$PROJECT_DIR$/src/components/EmailForm.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/PasswordForm.js" afterPath="$PROJECT_DIR$/src/components/PasswordForm.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/PasswordForm.js" afterPath="$PROJECT_DIR$/src/components/PasswordForm.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/SendEmail.js" afterPath="$PROJECT_DIR$/src/components/SendEmail.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/SendEmail.js" afterPath="$PROJECT_DIR$/src/components/SendEmail.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/UserNameForm.js" afterPath="$PROJECT_DIR$/src/components/UserNameForm.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/components/UserNameForm.js" afterPath="$PROJECT_DIR$/src/components/UserNameForm.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/index.js" afterPath="$PROJECT_DIR$/src/index.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/models/auth.js" afterPath="$PROJECT_DIR$/src/models/auth.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/models/user.js" afterPath="$PROJECT_DIR$/src/models/user.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/Login.js" afterPath="$PROJECT_DIR$/src/routes/Login.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/Register.js" afterPath="$PROJECT_DIR$/src/routes/Register.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/Reset.js" afterPath="$PROJECT_DIR$/src/routes/Reset.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/Reset.js" afterPath="$PROJECT_DIR$/src/routes/Reset.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/Verify.js" afterPath="$PROJECT_DIR$/src/routes/Verify.js" />
</list> </list>
<ignored path="$PROJECT_DIR$/.tmp/" /> <ignored path="$PROJECT_DIR$/.tmp/" />
<ignored path="$PROJECT_DIR$/temp/" /> <ignored path="$PROJECT_DIR$/temp/" />
...@@ -29,8 +33,8 @@ ...@@ -29,8 +33,8 @@
<file leaf-file-name="i18n.json" pinned="false" current-in-tab="true"> <file leaf-file-name="i18n.json" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/i18n.json"> <entry file="file://$PROJECT_DIR$/i18n.json">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="722"> <state relative-caret-position="430">
<caret line="122" column="5" lean-forward="true" selection-start-line="122" selection-start-column="5" selection-end-line="122" selection-end-column="30" /> <caret line="146" column="17" lean-forward="false" selection-start-line="146" selection-start-column="5" selection-end-line="146" selection-end-column="17" />
<folding /> <folding />
</state> </state>
</provider> </provider>
...@@ -44,34 +48,10 @@ ...@@ -44,34 +48,10 @@
<component name="ExecutionTargetManager" SELECTED_TARGET="default_target" /> <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file leaf-file-name="Reset.js" pinned="false" current-in-tab="false"> <file leaf-file-name="UserNameForm.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/routes/Reset.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-271">
<caret line="62" column="18" lean-forward="true" selection-start-line="62" selection-start-column="18" selection-end-line="62" selection-end-column="18" />
<folding>
<element signature="e#0#63#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="EmailForm.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/components/EmailForm.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="594">
<caret line="84" column="30" lean-forward="false" selection-start-line="84" selection-start-column="30" selection-end-line="84" selection-end-column="30" />
<folding>
<element signature="e#0#41#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UserNameForm.js" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/components/UserNameForm.js"> <entry file="file://$PROJECT_DIR$/src/components/UserNameForm.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="494"> <state relative-caret-position="1178">
<caret line="62" column="16" lean-forward="true" selection-start-line="62" selection-start-column="16" selection-end-line="62" selection-end-column="16" /> <caret line="62" column="16" lean-forward="true" selection-start-line="62" selection-start-column="16" selection-end-line="62" selection-end-column="16" />
<folding> <folding>
<element signature="e#0#35#0" expanded="true" /> <element signature="e#0#35#0" expanded="true" />
...@@ -80,116 +60,119 @@ ...@@ -80,116 +60,119 @@
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="PasswordForm.js" pinned="false" current-in-tab="false"> <file leaf-file-name="Forgot.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/components/PasswordForm.js"> <entry file="file://$PROJECT_DIR$/src/routes/Forgot.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="304"> <state relative-caret-position="315">
<caret line="16" column="41" lean-forward="true" selection-start-line="16" selection-start-column="41" selection-end-line="16" selection-end-column="41" /> <caret line="65" column="42" lean-forward="true" selection-start-line="65" selection-start-column="14" selection-end-line="65" selection-end-column="42" />
<folding> <folding>
<element signature="e#0#41#0" expanded="true" /> <element signature="e#0#70#0" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="auth.js" pinned="false" current-in-tab="false"> <file leaf-file-name="auth.js" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/models/auth.js"> <entry file="file://$PROJECT_DIR$/src/models/auth.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-3643"> <state relative-caret-position="437">
<caret line="13" column="29" lean-forward="false" selection-start-line="13" selection-start-column="29" selection-end-line="13" selection-end-column="29" /> <caret line="139" column="11" lean-forward="false" selection-start-line="139" selection-start-column="11" selection-end-line="139" selection-end-column="11" />
<folding> <folding>
<marker date="1491013796228" expanded="true" signature="5524:5531" ph="{...}" /> <element signature="e#0#31#0" expanded="true" />
<element signature="e#559#2707#0" expanded="false" />
<element signature="e#2720#6254#0" expanded="false" />
<element signature="e#3675#4178#0" expanded="false" />
<element signature="e#4227#4663#0" expanded="false" />
<element signature="e#4713#5139#0" expanded="false" />
<element signature="e#5191#5810#0" expanded="false" />
<element signature="e#5859#6249#0" expanded="false" />
<marker date="1491372985841" expanded="true" signature="6236:6243" ph="{...}" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="common.js" pinned="false" current-in-tab="false"> <file leaf-file-name="user.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/models/common.js"> <entry file="file://$PROJECT_DIR$/src/models/user.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="-407">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="119" column="32" lean-forward="false" selection-start-line="119" selection-start-column="27" selection-end-line="119" selection-end-column="32" />
<folding /> <folding>
<element signature="e#0#40#0" expanded="true" />
<element signature="e#307#1559#0" expanded="false" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="example.js" pinned="false" current-in-tab="false"> <file leaf-file-name="Verify.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/models/example.js"> <entry file="file://$PROJECT_DIR$/src/routes/Verify.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="1292">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="68" column="45" lean-forward="true" selection-start-line="68" selection-start-column="45" selection-end-line="68" selection-end-column="45" />
<folding /> <folding>
<element signature="e#0#41#0" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="haha.js" pinned="false" current-in-tab="false"> <file leaf-file-name="Login.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/models/haha.js"> <entry file="file://$PROJECT_DIR$/src/routes/Login.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="190"> <state relative-caret-position="-302">
<caret line="10" column="6" lean-forward="true" selection-start-line="10" selection-start-column="6" selection-end-line="10" selection-end-column="6" /> <caret line="34" column="47" lean-forward="true" selection-start-line="34" selection-start-column="4" selection-end-line="34" selection-end-column="47" />
<folding /> <folding>
<element signature="e#0#65#0" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="user.js" pinned="false" current-in-tab="false"> <file leaf-file-name="config.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/models/user.js"> <entry file="file://$PROJECT_DIR$/src/config.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1178"> <state relative-caret-position="57">
<caret line="21" column="6" lean-forward="true" selection-start-line="21" selection-start-column="6" selection-end-line="21" selection-end-column="6" /> <caret line="3" column="0" lean-forward="true" selection-start-line="3" selection-start-column="0" selection-end-line="3" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="Register.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/routes/Register.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="242">
<caret line="38" column="17" lean-forward="true" selection-start-line="38" selection-start-column="17" selection-end-line="38" selection-end-column="17" />
<folding>
<element signature="e#0#70#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf> </leaf>
</component> </component>
<component name="FindInProjectRecents"> <component name="FindInProjectRecents">
<findStrings> <findStrings>
<find>new</find> <find>A verification email has been sent to you.</find>
<find>old</find> <find>Your email has been updated.</find>
<find>not found</find> <find>Please input your account!</find>
<find>emailInputProps</find> <find>Please input your Password!</find>
<find>register</find> <find>Password length must be between 8 and 24 characters</find>
<find>email</find> <find>update_success</find>
<find>emailProps</find> <find>i_update_success</find>
<find>en</find> <find>zid</find>
<find>checkEmail</find> <find>自动</find>
<find>sign</find> <find>z</find>
<find>sign-</find> <find>d</find>
<find>&quot;nickname</find> <find>dengl</find>
<find>SubmitButton</find> <find>登陆</find>
<find>verify</find>
<find>old password</find>
<find>contextTypes</find>
<find>stat</find>
<find>ol</find>
<find>label</find>
<find>messages</find>
<find>密码必须为8</find>
<find>profiles</find>
<find>sub</find>
<find>密码至少为8</find>
<find>context</find>
<find>locale</find>
<find>again</find>
<find>Incorrect</find> <find>Incorrect</find>
<find>password</find> <find>i_key_invalid</find>
<find>passwordProps</find> <find>s</find>
<find>shix</find>
<find>失效</find>
<find></find>
<find>验证邮件已发送</find>
<find>邮件已发送</find>
<find>Format</find>
<find>Your account has been created.</find>
<find>Verify Email</find>
<find>select</find>
<find>&lt;f</find>
<find></find>
<find>sign-in</find>
<find>Register</find>
<find>messages</find>
</findStrings> </findStrings>
<replaceStrings> <replaceStrings>
<replace>&quot;,</replace> <replace>&quot;,</replace>
...@@ -205,7 +188,6 @@ ...@@ -205,7 +188,6 @@
<option value="$PROJECT_DIR$/src/router.js" /> <option value="$PROJECT_DIR$/src/router.js" />
<option value="$PROJECT_DIR$/.gitignore" /> <option value="$PROJECT_DIR$/.gitignore" />
<option value="$PROJECT_DIR$/.eslintrc" /> <option value="$PROJECT_DIR$/.eslintrc" />
<option value="$PROJECT_DIR$/src/models/auth.js" />
<option value="$PROJECT_DIR$/src/services/auth.js" /> <option value="$PROJECT_DIR$/src/services/auth.js" />
<option value="$PROJECT_DIR$/src/routes/Login.js" /> <option value="$PROJECT_DIR$/src/routes/Login.js" />
<option value="$PROJECT_DIR$/src/routes/Forgot.js" /> <option value="$PROJECT_DIR$/src/routes/Forgot.js" />
...@@ -215,11 +197,14 @@ ...@@ -215,11 +197,14 @@
<option value="$PROJECT_DIR$/src/routes/Profiles.js" /> <option value="$PROJECT_DIR$/src/routes/Profiles.js" />
<option value="$PROJECT_DIR$/src/components/SendEmail.js" /> <option value="$PROJECT_DIR$/src/components/SendEmail.js" />
<option value="$PROJECT_DIR$/src/index.js" /> <option value="$PROJECT_DIR$/src/index.js" />
<option value="$PROJECT_DIR$/i18n.json" />
<option value="$PROJECT_DIR$/src/routes/Reset.js" /> <option value="$PROJECT_DIR$/src/routes/Reset.js" />
<option value="$PROJECT_DIR$/src/components/PasswordForm.js" />
<option value="$PROJECT_DIR$/src/components/EmailForm.js" /> <option value="$PROJECT_DIR$/src/components/EmailForm.js" />
<option value="$PROJECT_DIR$/src/components/UserNameForm.js" /> <option value="$PROJECT_DIR$/src/components/UserNameForm.js" />
<option value="$PROJECT_DIR$/src/models/auth.js" />
<option value="$PROJECT_DIR$/src/components/PasswordForm.js" />
<option value="$PROJECT_DIR$/src/models/user.js" />
<option value="$PROJECT_DIR$/i18n.json" />
<option value="$PROJECT_DIR$/src/routes/Verify.js" />
</list> </list>
</option> </option>
</component> </component>
...@@ -261,6 +246,7 @@ ...@@ -261,6 +246,7 @@
<foldersAlwaysOnTop value="true" /> <foldersAlwaysOnTop value="true" />
</navigator> </navigator>
<panes> <panes>
<pane id="Scratches" />
<pane id="ProjectPane"> <pane id="ProjectPane">
<subPane> <subPane>
<PATH> <PATH>
...@@ -359,29 +345,14 @@ ...@@ -359,29 +345,14 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT> </PATH_ELEMENT>
</PATH> </PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="mycard-account-web" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="mycard-account-web" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="public" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane> </subPane>
</pane> </pane>
<pane id="Scratches" />
<pane id="Scope" /> <pane id="Scope" />
</panes> </panes>
</component> </component>
<component name="PropertiesComponent"> <component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" /> <property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$" /> <property name="last_opened_file_path" value="E:/qianduan/dva-quickstart" />
<property name="HbShouldOpenHtmlAsHb" value="" /> <property name="HbShouldOpenHtmlAsHb" value="" />
<property name="nodejs_interpreter_path" value="C:/Program Files/nodejs/node" /> <property name="nodejs_interpreter_path" value="C:/Program Files/nodejs/node" />
<property name="node.js.path.for.package.eslint" value="project" /> <property name="node.js.path.for.package.eslint" value="project" />
...@@ -501,7 +472,9 @@ ...@@ -501,7 +472,9 @@
<workItem from="1490847126780" duration="9606000" /> <workItem from="1490847126780" duration="9606000" />
<workItem from="1490864807162" duration="4566000" /> <workItem from="1490864807162" duration="4566000" />
<workItem from="1490926971269" duration="431000" /> <workItem from="1490926971269" duration="431000" />
<workItem from="1491013749160" duration="20485000" /> <workItem from="1491013749160" duration="21185000" />
<workItem from="1491038261063" duration="38000" />
<workItem from="1491362317876" duration="14487000" />
</task> </task>
<task id="LOCAL-00001" summary="i18n"> <task id="LOCAL-00001" summary="i18n">
<created>1490948057319</created> <created>1490948057319</created>
...@@ -531,11 +504,18 @@ ...@@ -531,11 +504,18 @@
<option name="project" value="LOCAL" /> <option name="project" value="LOCAL" />
<updated>1491026796456</updated> <updated>1491026796456</updated>
</task> </task>
<option name="localTasksCounter" value="5" /> <task id="LOCAL-00005" summary="i18n + 修改账户信息 无密码长度约束">
<created>1491034950407</created>
<option name="number" value="00005" />
<option name="presentableId" value="LOCAL-00005" />
<option name="project" value="LOCAL" />
<updated>1491034950407</updated>
</task>
<option name="localTasksCounter" value="6" />
<servers /> <servers />
</component> </component>
<component name="TimeTrackingManager"> <component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="57300000" /> <option name="totallyTimeSpent" value="72525000" />
</component> </component>
<component name="TodoView" selected-index="3"> <component name="TodoView" selected-index="3">
<todo-panel id="selected-file"> <todo-panel id="selected-file">
...@@ -549,13 +529,13 @@ ...@@ -549,13 +529,13 @@
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1176" extended-state="6" /> <frame x="-8" y="-8" width="1936" height="1176" extended-state="6" />
<layout> <layout>
<window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25237092" sideWeight="0.49499285" order="0" side_tool="false" content_ui="combo" /> <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25237092" sideWeight="0.6816038" order="0" side_tool="false" content_ui="combo" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32917467" sideWeight="0.49578503" order="6" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32917467" sideWeight="0.49578503" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32917467" sideWeight="0.5021075" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32917467" sideWeight="0.5021075" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32917467" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32917467" sideWeight="0.49789253" order="2" side_tool="false" content_ui="tabs" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.18618043" sideWeight="0.49789253" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32917467" sideWeight="0.49789253" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.35991606" sideWeight="0.49789253" order="7" side_tool="false" content_ui="tabs" />
<window_info id="npm" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25237092" sideWeight="0.50500715" order="2" side_tool="true" content_ui="tabs" /> <window_info id="npm" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25237092" sideWeight="0.31839624" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.26679462" sideWeight="0.49367756" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.26679462" sideWeight="0.49367756" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
...@@ -578,14 +558,14 @@ ...@@ -578,14 +558,14 @@
<option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" /> <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" />
<MESSAGE value="lint" /> <MESSAGE value="lint" />
<MESSAGE value="i18n" /> <MESSAGE value="i18n" />
<option name="LAST_COMMIT_MESSAGE" value="i18n" /> <MESSAGE value="i18n + 修改账户信息 无密码长度约束" />
<option name="LAST_COMMIT_MESSAGE" value="i18n + 修改账户信息 无密码长度约束" />
</component> </component>
<component name="XDebuggerManager"> <component name="XDebuggerManager">
<breakpoint-manager> <breakpoint-manager>
<breakpoints> <breakpoints>
<line-breakpoint enabled="true" type="javascript"> <line-breakpoint enabled="true" type="javascript">
<url>file://$PROJECT_DIR$/src/index.js</url> <url>file://$PROJECT_DIR$/src/index.js</url>
<properties />
<option name="timeStamp" value="2" /> <option name="timeStamp" value="2" />
</line-breakpoint> </line-breakpoint>
</breakpoints> </breakpoints>
...@@ -594,22 +574,34 @@ ...@@ -594,22 +574,34 @@
<watches-manager /> <watches-manager />
</component> </component>
<component name="editorHistoryManager"> <component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/components/PasswordForm.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="570">
<caret line="33" column="56" lean-forward="true" selection-start-line="33" selection-start-column="56" selection-end-line="33" selection-end-column="56" />
<folding>
<element signature="e#0#41#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Register.js"> <entry file="file://$PROJECT_DIR$/src/routes/Register.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2603"> <state relative-caret-position="2603">
<caret line="140" column="12" lean-forward="false" selection-start-line="140" selection-start-column="12" selection-end-line="140" selection-end-column="12" /> <caret line="140" column="12" lean-forward="false" selection-start-line="140" selection-start-column="12" selection-end-line="140" selection-end-column="12" />
<folding> <folding>
<element signature="e#0#70#0" expanded="true" /> <element signature="e#0#70#0" expanded="true" />
<marker date="1491371984698" expanded="true" signature="396:5239" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="494:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="635:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="653:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="3725:5197" ph="&lt;Form/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5213" ph="&lt;Spin/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5226" ph="&lt;div/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5237" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="3783:4300" ph="&lt;FormItem/&gt;" />
<marker date="1491371984698" expanded="true" signature="3851:4010" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4012:4075" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4094:4258" ph="&lt;Input/&gt;" />
<marker date="1491371984698" expanded="true" signature="4314:4929" ph="&lt;FormItem/&gt;" />
<marker date="1491371984698" expanded="true" signature="4381:4645" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4406:4628" ph="[...]" />
<marker date="1491371984698" expanded="true" signature="4407:4557" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4559:4627" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4664:4887" ph="&lt;Input/&gt;" />
<marker date="1491371984698" expanded="true" signature="4943:5076" ph="&lt;Button/&gt;" />
<marker date="1491371984698" expanded="true" signature="5089:5179" ph="&lt;div/&gt;" />
<marker date="1491371984698" expanded="true" signature="5273:5592" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="5459:5589" ph="{&quot;loading&quot;: loading...}" />
</folding> </folding>
</state> </state>
</provider> </provider>
...@@ -618,7 +610,6 @@ ...@@ -618,7 +610,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -634,9 +625,7 @@ ...@@ -634,9 +625,7 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1881"> <state relative-caret-position="1881">
<caret line="105" column="11" lean-forward="false" selection-start-line="105" selection-start-column="11" selection-end-line="105" selection-end-column="11" /> <caret line="105" column="11" lean-forward="false" selection-start-line="105" selection-start-column="11" selection-end-line="105" selection-end-column="11" />
<folding> <folding />
<element signature="e#0#61#0" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -651,7 +640,6 @@ ...@@ -651,7 +640,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="209"> <state relative-caret-position="209">
<caret line="25" column="30" lean-forward="false" selection-start-line="25" selection-start-column="30" selection-end-line="25" selection-end-column="30" /> <caret line="25" column="30" lean-forward="false" selection-start-line="25" selection-start-column="30" selection-end-line="25" selection-end-column="30" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -661,6 +649,28 @@ ...@@ -661,6 +649,28 @@
<caret line="2" column="33" lean-forward="false" selection-start-line="2" selection-start-column="33" selection-end-line="2" selection-end-column="33" /> <caret line="2" column="33" lean-forward="false" selection-start-line="2" selection-start-column="33" selection-end-line="2" selection-end-column="33" />
<folding> <folding>
<element signature="e#0#70#0" expanded="true" /> <element signature="e#0#70#0" expanded="true" />
<marker date="1491371984698" expanded="true" signature="396:5239" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="494:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="635:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="653:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="3725:5197" ph="&lt;Form/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5213" ph="&lt;Spin/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5226" ph="&lt;div/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5237" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="3783:4300" ph="&lt;FormItem/&gt;" />
<marker date="1491371984698" expanded="true" signature="3851:4010" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4012:4075" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4094:4258" ph="&lt;Input/&gt;" />
<marker date="1491371984698" expanded="true" signature="4314:4929" ph="&lt;FormItem/&gt;" />
<marker date="1491371984698" expanded="true" signature="4381:4645" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4406:4628" ph="[...]" />
<marker date="1491371984698" expanded="true" signature="4407:4557" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4559:4627" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4664:4887" ph="&lt;Input/&gt;" />
<marker date="1491371984698" expanded="true" signature="4943:5076" ph="&lt;Button/&gt;" />
<marker date="1491371984698" expanded="true" signature="5089:5179" ph="&lt;div/&gt;" />
<marker date="1491371984698" expanded="true" signature="5273:5592" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="5459:5589" ph="{&quot;loading&quot;: loading...}" />
</folding> </folding>
</state> </state>
</provider> </provider>
...@@ -676,9 +686,6 @@ ...@@ -676,9 +686,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="456"> <state relative-caret-position="456">
<caret line="25" column="28" lean-forward="false" selection-start-line="25" selection-start-column="28" selection-end-line="25" selection-end-column="28" /> <caret line="25" column="28" lean-forward="false" selection-start-line="25" selection-start-column="28" selection-end-line="25" selection-end-column="28" />
<folding>
<marker date="1490948528858" expanded="true" signature="77:96" ph="{...}" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -686,7 +693,6 @@ ...@@ -686,7 +693,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="38"> <state relative-caret-position="38">
<caret line="2" column="14" lean-forward="false" selection-start-line="2" selection-start-column="14" selection-end-line="2" selection-end-column="14" /> <caret line="2" column="14" lean-forward="false" selection-start-line="2" selection-start-column="14" selection-end-line="2" selection-end-column="14" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -715,7 +721,6 @@ ...@@ -715,7 +721,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="247"> <state relative-caret-position="247">
<caret line="13" column="0" lean-forward="false" selection-start-line="13" selection-start-column="0" selection-end-line="13" selection-end-column="0" /> <caret line="13" column="0" lean-forward="false" selection-start-line="13" selection-start-column="0" selection-end-line="13" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -772,7 +777,6 @@ ...@@ -772,7 +777,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -794,7 +798,6 @@ ...@@ -794,7 +798,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="16" lean-forward="false" selection-start-line="0" selection-start-column="9" selection-end-line="0" selection-end-column="16" /> <caret line="0" column="16" lean-forward="false" selection-start-line="0" selection-start-column="9" selection-end-line="0" selection-end-column="16" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -802,15 +805,6 @@ ...@@ -802,15 +805,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="209"> <state relative-caret-position="209">
<caret line="11" column="0" lean-forward="false" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" /> <caret line="11" column="0" lean-forward="false" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/config.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="76">
<caret line="4" column="0" lean-forward="true" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -818,7 +812,6 @@ ...@@ -818,7 +812,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="247"> <state relative-caret-position="247">
<caret line="29" column="50" lean-forward="true" selection-start-line="29" selection-start-column="50" selection-end-line="29" selection-end-column="50" /> <caret line="29" column="50" lean-forward="true" selection-start-line="29" selection-start-column="50" selection-end-line="29" selection-end-column="50" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -826,9 +819,6 @@ ...@@ -826,9 +819,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#30#0" expanded="false" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -836,17 +826,6 @@ ...@@ -836,17 +826,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="120"> <state relative-caret-position="120">
<caret line="17" column="25" lean-forward="false" selection-start-line="17" selection-start-column="19" selection-end-line="17" selection-end-column="25" /> <caret line="17" column="25" lean-forward="false" selection-start-line="17" selection-start-column="19" selection-end-line="17" selection-end-column="25" />
<folding>
<marker date="1490948528858" expanded="true" signature="77:96" ph="{...}" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Forgot.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="437">
<caret line="36" column="33" lean-forward="true" selection-start-line="36" selection-start-column="33" selection-end-line="36" selection-end-column="33" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -854,7 +833,6 @@ ...@@ -854,7 +833,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -862,17 +840,6 @@ ...@@ -862,17 +840,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Verify.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="95">
<caret line="5" column="27" lean-forward="true" selection-start-line="5" selection-start-column="27" selection-end-line="5" selection-end-column="27" />
<folding>
<element signature="e#0#26#0" expanded="false" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -880,9 +847,6 @@ ...@@ -880,9 +847,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="133"> <state relative-caret-position="133">
<caret line="7" column="23" lean-forward="true" selection-start-line="7" selection-start-column="23" selection-end-line="7" selection-end-column="23" /> <caret line="7" column="23" lean-forward="true" selection-start-line="7" selection-start-column="23" selection-end-line="7" selection-end-column="23" />
<folding>
<element signature="e#0#30#0" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -890,16 +854,6 @@ ...@@ -890,16 +854,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="498"> <state relative-caret-position="498">
<caret line="39" column="12" lean-forward="false" selection-start-line="39" selection-start-column="12" selection-end-line="39" selection-end-column="12" /> <caret line="39" column="12" lean-forward="false" selection-start-line="39" selection-start-column="12" selection-end-line="39" selection-end-column="12" />
<folding>
<element signature="e#0#61#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Login.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="76">
<caret line="4" column="0" lean-forward="false" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="56" />
<folding /> <folding />
</state> </state>
</provider> </provider>
...@@ -917,40 +871,78 @@ ...@@ -917,40 +871,78 @@
<state relative-caret-position="342"> <state relative-caret-position="342">
<caret line="39" column="0" lean-forward="false" selection-start-line="39" selection-start-column="0" selection-end-line="39" selection-end-column="48" /> <caret line="39" column="0" lean-forward="false" selection-start-line="39" selection-start-column="0" selection-end-line="39" selection-end-column="48" />
<folding> <folding>
<element signature="e#0#41#0" expanded="true" /> <element signature="e#0#41#0" expanded="false" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/routes/Register.js"> <entry file="file://$PROJECT_DIR$/src/routes/Register.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="242"> <state relative-caret-position="627">
<caret line="38" column="17" lean-forward="true" selection-start-line="38" selection-start-column="17" selection-end-line="38" selection-end-column="17" /> <caret line="38" column="17" lean-forward="false" selection-start-line="38" selection-start-column="17" selection-end-line="38" selection-end-column="17" />
<folding> <folding>
<element signature="e#0#70#0" expanded="true" /> <element signature="e#0#70#0" expanded="true" />
<marker date="1491371984698" expanded="true" signature="396:5239" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="494:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="635:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="653:747" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="3725:5197" ph="&lt;Form/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5213" ph="&lt;Spin/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5226" ph="&lt;div/&gt;" />
<marker date="1491371984698" expanded="true" signature="3725:5237" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="3783:4300" ph="&lt;FormItem/&gt;" />
<marker date="1491371984698" expanded="true" signature="3851:4010" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4012:4075" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4094:4258" ph="&lt;Input/&gt;" />
<marker date="1491371984698" expanded="true" signature="4314:4929" ph="&lt;FormItem/&gt;" />
<marker date="1491371984698" expanded="true" signature="4381:4645" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4406:4628" ph="[...]" />
<marker date="1491371984698" expanded="true" signature="4407:4557" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4559:4627" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="4664:4887" ph="&lt;Input/&gt;" />
<marker date="1491371984698" expanded="true" signature="4943:5076" ph="&lt;Button/&gt;" />
<marker date="1491371984698" expanded="true" signature="5089:5179" ph="&lt;div/&gt;" />
<marker date="1491371984698" expanded="true" signature="5273:5592" ph="{...}" />
<marker date="1491371984698" expanded="true" signature="5459:5589" ph="{&quot;loading&quot;: loading...}" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/auth.js"> <entry file="file://$PROJECT_DIR$/src/models/example.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-3643"> <state relative-caret-position="0">
<caret line="13" column="29" lean-forward="false" selection-start-line="13" selection-start-column="29" selection-end-line="13" selection-end-column="29" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding> <folding />
<marker date="1491013796228" expanded="true" signature="5524:5531" ph="{...}" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/common.js"> <entry file="file://$PROJECT_DIR$/src/routes/Reset.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="1121">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="62" column="18" lean-forward="false" selection-start-line="62" selection-start-column="18" selection-end-line="62" selection-end-column="18" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/example.js"> <entry file="file://$PROJECT_DIR$/src/components/EmailForm.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1539">
<caret line="84" column="30" lean-forward="false" selection-start-line="84" selection-start-column="30" selection-end-line="84" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/models/upload.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-285">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#48#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/models/common.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
...@@ -961,63 +953,102 @@ ...@@ -961,63 +953,102 @@
<entry file="file://$PROJECT_DIR$/src/models/haha.js"> <entry file="file://$PROJECT_DIR$/src/models/haha.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="190"> <state relative-caret-position="190">
<caret line="10" column="6" lean-forward="true" selection-start-line="10" selection-start-column="6" selection-end-line="10" selection-end-column="6" /> <caret line="10" column="6" lean-forward="false" selection-start-line="10" selection-start-column="6" selection-end-line="10" selection-end-column="6" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/user.js"> <entry file="file://$PROJECT_DIR$/src/components/PasswordForm.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1178"> <state relative-caret-position="142">
<caret line="21" column="6" lean-forward="true" selection-start-line="21" selection-start-column="6" selection-end-line="21" selection-end-column="6" /> <caret line="54" column="11" lean-forward="true" selection-start-line="54" selection-start-column="11" selection-end-line="54" selection-end-column="11" />
<folding /> <folding>
<element signature="e#0#41#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Forgot.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="315">
<caret line="65" column="42" lean-forward="true" selection-start-line="65" selection-start-column="14" selection-end-line="65" selection-end-column="42" />
<folding>
<element signature="e#0#70#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/components/UserNameForm.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1178">
<caret line="62" column="16" lean-forward="true" selection-start-line="62" selection-start-column="16" selection-end-line="62" selection-end-column="16" />
<folding>
<element signature="e#0#35#0" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/i18n.json"> <entry file="file://$PROJECT_DIR$/i18n.json">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="722"> <state relative-caret-position="430">
<caret line="122" column="5" lean-forward="true" selection-start-line="122" selection-start-column="5" selection-end-line="122" selection-end-column="30" /> <caret line="146" column="17" lean-forward="false" selection-start-line="146" selection-start-column="5" selection-end-line="146" selection-end-column="17" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/routes/Reset.js"> <entry file="file://$PROJECT_DIR$/src/routes/Verify.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-271"> <state relative-caret-position="1292">
<caret line="62" column="18" lean-forward="true" selection-start-line="62" selection-start-column="18" selection-end-line="62" selection-end-column="18" /> <caret line="68" column="45" lean-forward="true" selection-start-line="68" selection-start-column="45" selection-end-line="68" selection-end-column="45" />
<folding> <folding>
<element signature="e#0#63#0" expanded="true" /> <element signature="e#0#41#0" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/components/PasswordForm.js"> <entry file="file://$PROJECT_DIR$/src/routes/Login.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="304"> <state relative-caret-position="-302">
<caret line="16" column="41" lean-forward="true" selection-start-line="16" selection-start-column="41" selection-end-line="16" selection-end-column="41" /> <caret line="34" column="47" lean-forward="true" selection-start-line="34" selection-start-column="4" selection-end-line="34" selection-end-column="47" />
<folding> <folding>
<element signature="e#0#41#0" expanded="true" /> <element signature="e#0#65#0" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/components/EmailForm.js"> <entry file="file://$PROJECT_DIR$/src/config.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="594"> <state relative-caret-position="57">
<caret line="84" column="30" lean-forward="false" selection-start-line="84" selection-start-column="30" selection-end-line="84" selection-end-column="30" /> <caret line="3" column="0" lean-forward="true" selection-start-line="3" selection-start-column="0" selection-end-line="3" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/models/user.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-407">
<caret line="119" column="32" lean-forward="false" selection-start-line="119" selection-start-column="27" selection-end-line="119" selection-end-column="32" />
<folding> <folding>
<element signature="e#0#41#0" expanded="true" /> <element signature="e#0#40#0" expanded="true" />
<element signature="e#307#1559#0" expanded="false" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/components/UserNameForm.js"> <entry file="file://$PROJECT_DIR$/src/models/auth.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="494"> <state relative-caret-position="437">
<caret line="62" column="16" lean-forward="true" selection-start-line="62" selection-start-column="16" selection-end-line="62" selection-end-column="16" /> <caret line="139" column="11" lean-forward="false" selection-start-line="139" selection-start-column="11" selection-end-line="139" selection-end-column="11" />
<folding> <folding>
<element signature="e#0#35#0" expanded="true" /> <element signature="e#0#31#0" expanded="true" />
<element signature="e#559#2707#0" expanded="false" />
<element signature="e#2720#6254#0" expanded="false" />
<element signature="e#3675#4178#0" expanded="false" />
<element signature="e#4227#4663#0" expanded="false" />
<element signature="e#4713#5139#0" expanded="false" />
<element signature="e#5191#5810#0" expanded="false" />
<element signature="e#5859#6249#0" expanded="false" />
<marker date="1491372985841" expanded="true" signature="6236:6243" ph="{...}" />
</folding> </folding>
</state> </state>
</provider> </provider>
......
{ {
"en": { "en": {
"language": "中文", "MoeCube":"MoeCube",
"l": "zh-CN",
"username": "User Name", "username": "User Name",
"email": "E-Mail", "email": "E-Mail",
"password": "Password", "password": "Password",
...@@ -20,6 +19,7 @@ ...@@ -20,6 +19,7 @@
"yonghuan": "The Disappearing of Gensokyo", "yonghuan": "The Disappearing of Gensokyo",
"sign-up": "Sign Up", "sign-up": "Sign Up",
"sign-in": "Sign In", "sign-in": "Sign In",
"Please-sign-in":"Please sign In",
"email-address-or-username": "E-Mail or Username", "email-address-or-username": "E-Mail or Username",
"register-now": "register-now!", "register-now": "register-now!",
"register":"register", "register":"register",
...@@ -29,31 +29,19 @@ ...@@ -29,31 +29,19 @@
"reset-fail": "reset fail", "reset-fail": "reset fail",
"reset-password": "Reset Password", "reset-password": "Reset Password",
"remember-me":"Remember me", "remember-me":"Remember me",
"Please use a correct E-Mail address.": "Please use a correct E-Mail address.", "Please-use-a-correct-E-Mail-address.": "Please use a correct E-Mail address.",
"User name can not be empty.": "User name can not be empty.", "User-name-can-not-be-empty.": "User name can not be empty.",
"You can not use this username.": "You can not use this username.", "You-can-not-use-this-username.": "You can not use this username.",
"You can use this password.": "You can use this password.", "You-can-use-this-password.": "You can use this password.",
"Password is too long.": "Password is too long.", "Password-is-correct.": "Password is correct.",
"Password is too short.": "Password is too short.", "Incorrect-password.2": "Incorrect password.",
"Password is correct.": "Password is correct.", "The-E-Mail-has-been-sent.": "The E-Mail has been sent.",
"Incorrect password.2": "Incorrect password.", "User-does-not-exisit.": "User does not exisit.",
"The E-Mail has been sent.": "The E-Mail has been sent.", "Incorrect-password.": "Incorrect password.",
"Incorrect user name or password.": "Incorrect user name or password.", "Please-check-your-registration-info-again.": "Please check your registration info again.",
"E-Mail address can not be blank.": "E-Mail address can not be blank.", "Your-account-has-not-been-verified.": "Your account has not been verified. Please check the verification email we have sent to you. You will be able to log in after verification.",
"User name can not be blank.": "User name can not be blank.",
"Password can not be blank.": "Password can not be blank.",
"Please input your password again.": "Please input your password again.",
"Please use a correct E-Mail address.": "Please use a correct E-Mail address.",
"This E-Mail address has been token.": "This E-Mail address has been token.",
"You can use this E-mail address.": "You can use this E-mail address.",
"This user name has been token.": "This user name has been token.",
"You can use this user name.": "You can use this user name.",
"User does not exisit.": "User does not exisit.",
"Incorrect password.": "Incorrect password.",
"Please check your registration info again.": "Please check your registration info again.",
"Your account has not been verified.": "Your account has not been verified. Please check the verification email we have sent to you. You will be able to log in after verification.",
"A password reset email has been sent to you.": "A password reset email has been sent to you. Please check the email to continue.", "A password reset email has been sent to you.": "A password reset email has been sent to you. Please check the email to continue.",
"Your account has been created.": "Your account has been created. You will receive an verification email. Please check the mail to finish registration. ", "Your-account-has-been-created.": "Your account has been created. You will receive an verification email. Please check the mail to finish registration. ",
"Error": "Error", "Error": "Error",
"Your account has been successfully activated!": "Your account has been successfully activated!", "Your account has been successfully activated!": "Your account has been successfully activated!",
"close": "close", "close": "close",
...@@ -65,28 +53,33 @@ ...@@ -65,28 +53,33 @@
"Your email has been updated.": "Your email has been updated. You will receive an verification email. Please check the mail to finish verification. ", "Your email has been updated.": "Your email has been updated. You will receive an verification email. Please check the mail to finish verification. ",
"Please input your account!":"Please input your email or username!", "Please input your account!":"Please input your email or username!",
"Please input your Password!":"Please input your Password!", "Please-input-your-Password!":"Please input your Password!",
"verify-email":"verify email", "verify-email":"Verify email",
"account-info":"Account Info", "account-info":"Account Info",
"reset-username":"Reset Username", "reset-username":"Reset Username",
"reset-email":"Reset Email", "reset-email":"Reset Email",
"reset-password":"Reset Password", "reset-password":"Reset Password",
"old-password":"old password", "old-password":"old password",
"new-password":"new password", "new-password":"new password",
"Password length must be between 8 and 24 characters":"Password length must be between 8 and 24 characters", "Password-length-must-be-between-8-and-24-characters.":"Password length must be between 8 and 24 characters.",
"i_update_success": "Update Success!", "email_exists":"email exists",
"update_success": "Update Success!",
"i_password_error": "Incorrect password. ", "i_password_error": "Incorrect password. ",
"i_user_unexists":"", "i_user_unexists":"User does not exisit.",
"i_email_exists":"email is exists", "i_email_exists":"email is exists",
"i_username_exists":"", "i_username_exists":"username is exists",
"i_not_found":"", "i_not_found":"user unexists",
"i_key_out_time":"", "i_key_time_out":"url is time out",
"i_key_invalid":"url is invalid",
"A-verification-email-has-been-sent-to-you,please-check-the-mail-to-complete.":"A verification email has been sent to you, please check the mail to complete.",
"没毛用":"防逗号报错,上线删" "没毛用":"防逗号报错,上线删"
}, },
"zh": { "zh": {
"language": "english", "MoeCube":"萌立方",
"l": "en-US",
"username": "用户名", "username": "用户名",
"email": "邮箱", "email": "邮箱",
"password": "密码", "password": "密码",
...@@ -105,6 +98,7 @@ ...@@ -105,6 +98,7 @@
"yonghuan": "永远消失的幻想乡", "yonghuan": "永远消失的幻想乡",
"sign-up": "注册", "sign-up": "注册",
"sign-in": "登陆", "sign-in": "登陆",
"Please-sign-in":"您尚未登录,请先登录",
"email-address-or-username": "邮箱或用户名", "email-address-or-username": "邮箱或用户名",
"register-now": "现在注册", "register-now": "现在注册",
"register":"注册", "register":"注册",
...@@ -114,31 +108,21 @@ ...@@ -114,31 +108,21 @@
"reset-fail": "修改失败", "reset-fail": "修改失败",
"reset-password": "重设密码", "reset-password": "重设密码",
"remember-me":"记住我", "remember-me":"记住我",
"Please use a correct E-Mail address.": "请填写正确的邮箱地址", "Please-use-a-correct-E-Mail-address.": "请填写正确的邮箱地址",
"User name can not be empty.": "不能为空", "User-name-can-not-be-empty.": "用户名不能为空",
"You can not use this username.": "用户名不合法", "You-can-not-use-this-username.": "用户名不合法",
"You can use this password.": "密码可以使用", "You-can-use-this-password.": "密码可以使用",
"Password is too long.": "密码过长", "Password-is-correct.": "密码一致",
"Password is too short.": "密码过短", "Incorrect-password.2": "密码不一致",
"Password is correct.": "密码一致", "The-E-Mail-has-been-sent.": "邮件已发送",
"Incorrect password.2": "密码不一致",
"The E-Mail has been sent.": "邮件已发送",
"Incorrect-user-name-or-password": "用户或密码错误", "Incorrect-user-name-or-password": "用户或密码错误",
"E-Mail-address-can-not-be-blank": "邮箱地址不能为空", "E-Mail-address-can-not-be-blank": "邮箱地址不能为空",
"User name can not be blank.": "用户名不能为空", "User-does-not-exisit.": "用户不存在",
"Password can not be blank": "密码不能为空", "Incorrect-password.": "密码不正确",
"Please input your password again.": "确认密码不能为空", "Please-check-your-registration-info-again.": "请填写正确的注册信息。",
"Please use a correct E-Mail address.": "邮箱格式错误", "Your-account-has-not-been-verified.": "您的账户还未完成验证,请查看激活邮件,激活后即可登陆。",
"This E-Mail address has been token.": "该邮箱已被注册",
"You can use this E-mail address.": "邮箱可以使用",
"This user name has been token.": "该用户名已被注册",
"You can use this user name.": "用户名可以使用",
"User does not exisit.": "用户不存在",
"Incorrect password.": "密码不正确",
"Please check your registration info again.": "请填写正确的注册信息。",
"Your account has not been verified.": "您的账户还未完成验证,请查看激活邮件,激活后即可登陆。",
"A password reset email has been sent to you.": "密码重置邮件已发送,请查看邮件继续下一步。", "A password reset email has been sent to you.": "密码重置邮件已发送,请查看邮件继续下一步。",
"Your account has been created.": "您的账号已经创建。您将会收到一封验证邮件,请查看邮件完成注册。", "Your-account-has-been-created.": "您的账号已经创建。您将会收到一封验证邮件,请查看邮件完成注册。",
"Error": "出问题了", "Error": "出问题了",
"Your account has been successfully activated!": "账号激活成功!", "Your account has been successfully activated!": "账号激活成功!",
"close": "关闭", "close": "关闭",
...@@ -150,7 +134,7 @@ ...@@ -150,7 +134,7 @@
"Your email has been updated.": "邮箱已经更新,您将会收到一封验证邮件,请您查看Email完成验证。", "Your email has been updated.": "邮箱已经更新,您将会收到一封验证邮件,请您查看Email完成验证。",
"Please input your account!":"请填写你的邮箱或用户名!", "Please input your account!":"请填写你的邮箱或用户名!",
"Please input your Password!":"请填写你的密码!", "Please-input-your-Password!":"请填写你的密码!",
"verify-email":"验证邮箱", "verify-email":"验证邮箱",
"account-info":"账户信息", "account-info":"账户信息",
...@@ -159,11 +143,24 @@ ...@@ -159,11 +143,24 @@
"reset-password":"修改密码", "reset-password":"修改密码",
"old-password":"原密码", "old-password":"原密码",
"new-password":"新密码", "new-password":"新密码",
"Password length must be between 8 and 24 characters":"密码必须为8-24位", "Password-length-must-be-between-8-and-24-characters.":"密码必须为8-24位",
"Please confirm your password":"", "email_exists":"邮箱已存在",
"update_success": "修改成功",
"i_password_error": "密码错误",
"i_user_unexists":"用户不存在",
"i_email_exists":"邮箱已存在",
"i_username_exists":"用户名已存在",
"i_not_found":"用户不存在",
"i_key_time_out":"此链接已过期",
"i_key_invalid":"此链接已失效",
"A-verification-email-has-been-sent-to-you,please-check-the-mail-to-complete.":"一封验证邮件已经发送给您,请查看邮件完成修改。",
"原_验证邮件已发送":"邮件已发送,验证邮箱后,完成修改邮箱",
"密码至少为8-24位":"密码至少为8-24位",
"没毛用":"防逗号报错,上线删" "没毛用":"防逗号报错,上线删"
} }
......
...@@ -62,7 +62,7 @@ class EmailForm extends React.Component { ...@@ -62,7 +62,7 @@ class EmailForm extends React.Component {
}, },
decorator: { decorator: {
rules: [ rules: [
{ required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/ } { required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/ }
] ]
}, },
input: { input: {
......
...@@ -21,8 +21,9 @@ class EmailForm extends React.Component { ...@@ -21,8 +21,9 @@ class EmailForm extends React.Component {
} }
checkPassword = (rule, value, callback) => { checkPassword = (rule, value, callback) => {
const form = this.props.form; const form = this.props.form;
const { intl: { messages } } = this.context;
if (value && value !== form.getFieldValue('new_password')) { if (value && value !== form.getFieldValue('new_password')) {
callback('两次密码输入不符'); callback(messages['Incorrect-password.2']);
} else { } else {
callback(); callback();
} }
...@@ -64,7 +65,7 @@ class EmailForm extends React.Component { ...@@ -64,7 +65,7 @@ class EmailForm extends React.Component {
}, },
decorator: { decorator: {
rules: [ rules: [
{ required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/ }, { required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/ },
{ validator: this.checkConfirm } { validator: this.checkConfirm }
], ],
}, },
...@@ -85,7 +86,7 @@ class EmailForm extends React.Component { ...@@ -85,7 +86,7 @@ class EmailForm extends React.Component {
}, },
decorator: { decorator: {
rules: [ rules: [
{ required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/}, { required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/},
{ validator: this.checkPassword} { validator: this.checkPassword}
], ],
}, },
......
...@@ -62,7 +62,7 @@ class EmailForm extends React.Component { ...@@ -62,7 +62,7 @@ class EmailForm extends React.Component {
}, },
decorator: { decorator: {
rules: [ rules: [
{ required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/ } { required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/ }
] ]
}, },
input: { input: {
......
...@@ -61,7 +61,7 @@ class EmailForm extends React.Component { ...@@ -61,7 +61,7 @@ class EmailForm extends React.Component {
}, },
decorator: { decorator: {
rules: [ rules: [
{ required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/ }, { required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/ },
], ],
}, },
input: { input: {
......
import { login, forgot, register, reset, activate, checkUserExists } from '../services/auth' import { message } from 'antd';
import { message } from 'antd' import { routerRedux } from 'dva/router';
import { routerRedux } from 'dva/router' import { activate, checkUserExists, forgot, login, register, reset } from '../services/auth';
export default { export default {
namespace: 'auth', namespace: 'auth',
state: { state: {
input:{}, input: {},
activateState: false, activateState: false,
checkEmail: '', checkEmail: '',
checkUsername: '', checkUsername: '',
...@@ -19,7 +18,7 @@ export default { ...@@ -19,7 +18,7 @@ export default {
isForgotSubmit: false, isForgotSubmit: false,
isSpinSubmit: false, isSpinSubmit: false,
isActivateSubmit: false, isActivateSubmit: false,
register: {} register: {},
}, },
reducers: { reducers: {
change(state, action) { change(state, action) {
...@@ -105,133 +104,137 @@ export default { ...@@ -105,133 +104,137 @@ export default {
forgotSuccess(state, action) { forgotSuccess(state, action) {
return { return {
...state, ...{ ...state, ...{
isForgotSubmit: false isForgotSubmit: false,
}
} }
};
}, },
forgotFail(state, action) { forgotFail(state, action) {
return { return {
...state, ...{ ...state, ...{
isForgotSubmit: false isForgotSubmit: false,
}
} }
};
}, },
reset(state, action) { reset(state, action) {
return { return {
...state, ...{ ...state, ...{
isResetSubmit: true isResetSubmit: true,
}
} }
};
}, },
resetSuccess(state, action) { resetSuccess(state, action) {
return { return {
...state, ...{ ...state, ...{
isResetSubmit: false isResetSubmit: false,
}
} }
};
}, },
resetFail(state, action) { resetFail(state, action) {
return { return {
...state, ...{ ...state, ...{
isResetSubmit: false isResetSubmit: false,
}
} }
};
}, },
}, },
effects: { effects: {
*activate({ payload }, { call, put }) { *activate({ payload }, { call, put, select }) {
const { messages } = yield select(state => state.common);
try { try {
const { data } = yield call(activate, payload) const { data } = yield call(activate, payload);
if(data) { if (data) {
message.success("激活成功") message.success(messages['Your account has been successfully activated!'], 5);
} }
} catch (error) { } catch (error) {
message.error(error.message) message.error(error.message);
} }
}, },
*checkEmail({ payload }, { call, put }) { *checkEmail({ payload }, { call, put }) {
if(!payload.email){ if (!payload.email) {
yield put({ type: 'check', payload: { checkEmail: 'error' } }) yield put({ type: 'check', payload: { checkEmail: 'error' } });
return return;
} }
try { try {
const { data } = yield call(checkUserExists, {email: payload.email}) const { data } = yield call(checkUserExists, { email: payload.email });
if (data) { if (data) {
yield put({ type: 'check', payload: { isEmailExists: true, checkEmail: 'warning' } }) yield put({ type: 'check', payload: { isEmailExists: true, checkEmail: 'warning' } });
} }
} catch (error) { } catch (error) {
yield put({ type: 'check', payload: { isEmailExists: false, checkEmail: 'success' } }) yield put({ type: 'check', payload: { isEmailExists: false, checkEmail: 'success' } });
} }
}, },
*checkUsername({ payload }, { call, put }) { *checkUsername({ payload }, { call, put }) {
if(!payload.username){ if (!payload.username) {
yield put({ type: 'check', payload: { checkUsername: 'error' } }) yield put({ type: 'check', payload: { checkUsername: 'error' } });
return return;
} }
try { try {
const { data } = yield call(checkUserExists, { username: payload.username}) const { data } = yield call(checkUserExists, { username: payload.username });
if (data) { if (data) {
yield put({ type: 'check', payload: { isUserNameExists: true, checkUsername: 'warning' } }) yield put({ type: 'check', payload: { isUserNameExists: true, checkUsername: 'warning' } });
} }
} catch (error) { } catch (error) {
yield put({ type: 'check', payload: { isUserNameExists: false, checkUsername: 'success' } }) yield put({ type: 'check', payload: { isUserNameExists: false, checkUsername: 'success' } });
} }
}, },
*login({ payload }, { call, put, select }) { *login({ payload }, { call, put, select }) {
const { messages } = yield select(state => state.common) const { messages } = yield select(state => state.common);
try { try {
const { data } = yield call(login, payload) const { data } = yield call(login, payload);
if (data) { if (data) {
yield put({ type: 'loginSuccess', payload: { input: payload } }) yield put({ type: 'loginSuccess', payload: { input: payload } });
yield put({ type: 'user/loginSuccess', payload: { data } }) yield put({ type: 'user/loginSuccess', payload: { data } });
} }
} catch (error) { } catch (error) {
yield put({ type: 'loginFail' }) yield put({ type: 'loginFail' });
message.error(messages[error.message]) message.error(messages[error.message]);
} }
}, },
*forgot({ payload }, { call, put }) { *forgot({ payload }, { call, put, select }) {
const { messages } = yield select(state => state.common);
try { try {
const { data } = yield call(forgot, payload) const { data } = yield call(forgot, payload);
if(data){ if (data) {
yield put({ type: 'forgotSuccess' }) yield put({ type: 'forgotSuccess' });
message.info("已发送密码重置邮件", 3) message.info(messages['A password reset email has been sent to you.'], 5);
} }
} catch (error) { } catch (error) {
yield put({ type: 'forgotFail' }) yield put({ type: 'forgotFail' });
message.error(error.message) message.error(messages[error.message], 3);
} }
}, },
*register({ payload }, { call, put }) { *register({ payload }, { call, put, select }) {
const { messages } = yield select(state => state.common);
try { try {
const { data } = yield call(register, payload) const { data } = yield call(register, payload);
if (data) { if (data) {
yield put({ type: 'registerSuccess' }) yield put({ type: 'registerSuccess' });
yield put({ type: 'user/loginSuccess', payload: { data } }) yield put({ type: 'user/loginSuccess', payload: { data } });
yield put({ type: 'loginSuccess', payload: { input: payload } }) yield put({ type: 'loginSuccess', payload: { input: payload } });
message.info("注册成功, 请验证激活邮件~", 3) message.info(messages['Your account has been created.'], 5);
yield put(routerRedux.replace("/verify")) yield put(routerRedux.replace('/verify'));
} }
} catch (error) { } catch (error) {
yield put({ type: 'registerFail' }) yield put({ type: 'registerFail' });
message.error(error.message, 3) message.error(messages[error.message], 3);
} }
}, },
*reset({ payload }, { call, put }) { *reset({ payload }, { call, put, select }) {
const { messages } = yield select(state => state.common);
try { try {
const { data } = yield call(reset, payload) const { data } = yield call(reset, payload);
if (data) { if (data) {
yield put({ type: 'resetSuccess' }) yield put({ type: 'resetSuccess' });
message.info("重置成功") message.info(messages.update_success, 3);
} }
} catch (error) { } catch (error) {
yield put({ type: 'resetFail' }) yield put({ type: 'resetFail' });
message.error(error.message, 3) message.error(messages[error.message], 3);
} }
}, },
}, },
......
...@@ -110,7 +110,7 @@ export default { ...@@ -110,7 +110,7 @@ export default {
} }
} }
} catch (error) { } catch (error) {
message.error("自动登录失败") message.error(error.message)
} }
}, },
*updateProfile({ payload }, { call, put, select }) { *updateProfile({ payload }, { call, put, select }) {
...@@ -124,23 +124,22 @@ export default { ...@@ -124,23 +124,22 @@ export default {
if (data) { if (data) {
yield put({ type: 'updateProfileSuccess', payload: { user: data, token } }) yield put({ type: 'updateProfileSuccess', payload: { user: data, token } })
message.info(messages["i_update_success"]) message.info(messages["update_success"])
} }
} catch (error) { } catch (error) {
yield put({ type: 'updateProfileFail' }) yield put({ type: 'updateProfileFail' })
message.error(messages[error.message]) message.error(error.message)
} }
}, },
*updateEmail({ payload }, { call, put, select }) { *updateEmail({ payload }, { call, put, select }) {
let { messages } = yield select(state => state.common)
try { try {
let token = yield select(state => state.user.token) let token = yield select(state => state.user.token)
let { messages } = yield select(state => state.common)
let { data } = yield call(updateAccount, {...payload, token}) let { data } = yield call(updateAccount, {...payload, token})
if (data) { if (data) {
yield put({ type: 'updateAccountSuccess', payload: { user: data, token } }) yield put({ type: 'updateAccountSuccess', payload: { user: data, token } })
message.info("验证邮件已发送") message.info(messages['A-verification-email-has-been-sent-to-you,please-check-the-mail-to-complete.'])
} }
} catch (error) { } catch (error) {
yield put({ type: 'updateAccountFail' }) yield put({ type: 'updateAccountFail' })
...@@ -149,16 +148,14 @@ export default { ...@@ -149,16 +148,14 @@ export default {
}, },
*updateAccount({ payload }, { call, put, select }) { *updateAccount({ payload }, { call, put, select }) {
let { messages } = yield select(state => state.common)
try { try {
let token = yield select(state => state.user.token) let token = yield select(state => state.user.token)
let { messages } = yield select(state => state.common)
let { data } = yield call(updateAccount, {...payload, token}) let { data } = yield call(updateAccount, {...payload, token})
if (data) { if (data) {
yield put({ type: 'updateAccountSuccess', payload: { user: data, token } }) yield put({ type: 'updateAccountSuccess', payload: { user: data, token } })
message.info(messages["i_update_success"]) message.info(messages["update_success"])
} }
} catch (error) { } catch (error) {
yield put({ type: 'updateAccountFail' }) yield put({ type: 'updateAccountFail' })
......
...@@ -47,7 +47,7 @@ class Login extends React.Component { ...@@ -47,7 +47,7 @@ class Login extends React.Component {
</FormItem> </FormItem>
<FormItem> <FormItem>
{getFieldDecorator('password', { {getFieldDecorator('password', {
rules: [{ required: true, message: messages['Please input your Password!'] }], rules: [{ required: true, message: messages['Please-input-your-Password!'] }],
})( })(
<Input prefix={<Icon type="lock" style={{ fontSize: 13 }} />} type="password" placeholder={messages.password} />, <Input prefix={<Icon type="lock" style={{ fontSize: 13 }} />} type="password" placeholder={messages.password} />,
)} )}
......
...@@ -34,7 +34,7 @@ class Register extends React.Component { ...@@ -34,7 +34,7 @@ class Register extends React.Component {
checkPassword = (rule, value, callback) => { checkPassword = (rule, value, callback) => {
const form = this.props.form; const form = this.props.form;
if (value && value !== form.getFieldValue('password')) { if (value && value !== form.getFieldValue('password')) {
callback(this.context.intl.messages['Incorrect password.2']); callback(this.context.intl.messages['Incorrect-password.2']);
} else { } else {
callback(); callback();
} }
...@@ -90,7 +90,7 @@ class Register extends React.Component { ...@@ -90,7 +90,7 @@ class Register extends React.Component {
{getFieldDecorator('email', { {getFieldDecorator('email', {
rules: [{ rules: [{
required: true, required: true,
message: messages['Please use a correct E-Mail address.'], message: messages['Please-use-a-correct-E-Mail-address.'],
pattern: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/, pattern: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
}], }],
}, {})( }, {})(
...@@ -102,7 +102,7 @@ class Register extends React.Component { ...@@ -102,7 +102,7 @@ class Register extends React.Component {
{getFieldDecorator('username', { {getFieldDecorator('username', {
rules: [{ rules: [{
required: true, required: true,
message: messages['You can not use this username.'], message: messages['You-can-not-use-this-username.'],
pattern: /^[A-Za-z0-9_\u4E00-\u9FD5\u3400-\u4DBF\u{20000}-\u{2A6DF}\u{2A700}-\u{2CEAF}\uF900–\uFAFF\u{2F800}-\u{2FA1D}\uAC00–\uD7AF\u3040-\u30FF\u31F0–\u31FF\u{1B000}–\u{1B0FF}\u3005]+$/u, pattern: /^[A-Za-z0-9_\u4E00-\u9FD5\u3400-\u4DBF\u{20000}-\u{2A6DF}\u{2A700}-\u{2CEAF}\uF900–\uFAFF\u{2F800}-\u{2FA1D}\uAC00–\uD7AF\u3040-\u30FF\u31F0–\u31FF\u{1B000}–\u{1B0FF}\u3005]+$/u,
}], }],
}, {})( }, {})(
...@@ -112,7 +112,7 @@ class Register extends React.Component { ...@@ -112,7 +112,7 @@ class Register extends React.Component {
<FormItem hasFeedback> <FormItem hasFeedback>
{getFieldDecorator('password', { {getFieldDecorator('password', {
rules: [{ required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/ }], rules: [{ required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/ }],
}, { }, {
validator: this.checkConfirm, validator: this.checkConfirm,
})( })(
...@@ -126,7 +126,7 @@ class Register extends React.Component { ...@@ -126,7 +126,7 @@ class Register extends React.Component {
<FormItem hasFeedback> <FormItem hasFeedback>
{getFieldDecorator('confirm', { {getFieldDecorator('confirm', {
rules: [{ rules: [{
required: true, message: messages['Password length must be between 8 and 24 characters'], pattern: /^.{8,24}$/, required: true, message: messages['Password-length-must-be-between-8-and-24-characters.'], pattern: /^.{8,24}$/,
}, { }, {
validator: this.checkPassword, validator: this.checkPassword,
}], }],
......
...@@ -71,7 +71,7 @@ class Reset extends React.Component { ...@@ -71,7 +71,7 @@ class Reset extends React.Component {
<FormItem> <FormItem>
{getFieldDecorator('confirm', { {getFieldDecorator('confirm', {
rules: [{ rules: [{
required: true, message: messages['Incorrect password.2'], required: true, message: messages['Incorrect-password.2'],
}, { }, {
validator: this.checkPassword, validator: this.checkPassword,
}], }],
......
import React from 'react'; import React, { PropTypes } from 'react';
import { connect } from 'dva'; import { connect } from 'dva';
import { FormattedMessage as Format } from 'react-intl';
import styles from './Verify.css'; import styles from './Verify.css';
import { Form, Input, Steps, Icon, Spin, Alert, Tag } from 'antd'; import { Form, Input, Steps, Icon, Spin, Alert, Tag } from 'antd';
import { routerRedux } from 'dva/router' import { routerRedux } from 'dva/router'
const FormItem = Form.Item; const FormItem = Form.Item;
import SubmitButton from '../components/SubmitButton' import SubmitButton from '../components/SubmitButton';
const Step = Steps.Step const Step = Steps.Step
class Verify extends React.Component { class Verify extends React.Component {
static contextTypes = {
intl: PropTypes.object.isRequired,
}
state = { state = {
isChangeEmail: false isChangeEmail: false
} }
...@@ -37,23 +41,24 @@ class Verify extends React.Component { ...@@ -37,23 +41,24 @@ class Verify extends React.Component {
dispatch({ type: 'user/updateEmail', payload: { email, password, user_id: id } }); dispatch({ type: 'user/updateEmail', payload: { email, password, user_id: id } });
}; };
render() { render(select) {
const { form, dispatch, user, checkEmail, isEmailExists, loading, input } = this.props const { form, dispatch, user, checkEmail, isEmailExists, loading, input } = this.props
const { getFieldDecorator } = form; const { getFieldDecorator } = form;
const { id, email } = user; const { id, email } = user;
const { intl: { messages } } = this.context
const emailProps = { const emailProps = {
fromItem: { fromItem: {
label: "修改邮箱", label: messages['reset-email'],
hasFeedback: true, hasFeedback: true,
validateStatus: checkEmail, validateStatus: checkEmail,
help: isEmailExists ? 'email exists' : '', help: isEmailExists ? messages.email_exists : '',
}, },
decorator: { decorator: {
initialValue: email initialValue: email
}, },
input: { input: {
placeholder: "email" placeholder: messages.email,
} }
} }
...@@ -63,8 +68,8 @@ class Verify extends React.Component { ...@@ -63,8 +68,8 @@ class Verify extends React.Component {
<Spin spinning={loading} delay={100}> <Spin spinning={loading} delay={100}>
<Steps size="large" current={1}> <Steps size="large" current={1}>
<Step title="Register" icon={<Icon type="solution" />} /> <Step title={messages['sign-up']} icon={<Icon type="solution" />} />
<Step title="Verify Email" icon={<Icon type="mail" />} /> <Step title={messages['verify-email']} icon={<Icon type="mail" />} />
</Steps> </Steps>
{id && input["password"] ? {id && input["password"] ?
...@@ -72,10 +77,10 @@ class Verify extends React.Component { ...@@ -72,10 +77,10 @@ class Verify extends React.Component {
style={{ marginTop: '24px' }} style={{ marginTop: '24px' }}
message={ message={
<div> <div>
<span style={{marginRight: '10px'}}>验证邮件已发送,请查收~</span> <span style={{marginRight: '10px'}}><Format id={'Your-account-has-been-created.'} /></span>
<Tag color="blue" onClick={this.onReSend}>重发</Tag> <Tag color="blue" onClick={this.onReSend}><Format id={'send-email2'} /></Tag>
<Tag color="orange" onClick={() => this.setState({ isChangeEmail: true })}> <Tag color="orange" onClick={() => this.setState({ isChangeEmail: true })}>
修改邮箱 <Format id={'reset-email'} />
</Tag> </Tag>
</div> </div>
} }
...@@ -87,8 +92,8 @@ class Verify extends React.Component { ...@@ -87,8 +92,8 @@ class Verify extends React.Component {
style={{ marginTop: '24px' }} style={{ marginTop: '24px' }}
message={ message={
<div> <div>
<span style={{marginRight: '10px'}}>您尚未登录,请先登录</span> <span style={{marginRight: '10px'}}><Format id={'Please-sign-in'} /></span>
<Tag color="blue" onClick={ () => dispatch(routerRedux.replace("/signin"))}>登录</Tag> <Tag color="blue" onClick={ () => dispatch(routerRedux.replace("/signin"))}><Format id={'sign-in'} /></Tag>
</div> </div>
} }
type="warning" type="warning"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment