Merge branch 'master' of github.com:esteemapp/esteem-mobile into feature/custom-push

This commit is contained in:
Mustafa Buyukcelebi 2019-03-14 13:00:25 +03:00
commit b531957c1b
24 changed files with 216 additions and 142 deletions

View File

@ -2,7 +2,8 @@ ACTIVITY_WEBSOCKET_URL=
BACKEND_URL=
NEW_IMAGE_API=
OLD_IMAGE_API=
PIN_KEY=
SEARCH_API_TOKEN=
SEARCH_API_URL=
SERVER_LIST_API=
PIN_KEY=
USER_AGENT=

View File

@ -22,7 +22,7 @@ cat $GOOGLE_JSON_FILE
printf "Old .env file:\n"
cat .env
printf "Started script:\n"
ENV_WHITELIST=${ENV_WHITELIST:-"/ACTIVITY|WEBSOCKET|BACKEND|API|TOKEN|PIN|URL/"}
ENV_WHITELIST=${ENV_WHITELIST:-"/ACTIVITY|WEBSOCKET|BACKEND|API|TOKEN|PIN|USER|URL/"}
printf "Creating an .env file with the following whitelist:\n"
printf "%s\n\n" $ENV_WHITELIST
set | egrep -e $ENV_WHITELIST | egrep -v "^_" | egrep -v "WHITELIST" | egrep -v "USER-DEFINED" > .env

View File

@ -9,119 +9,119 @@
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>10</integer>
<integer>6</integer>
</dict>
<key>AppCenterReactNativeShared.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>11</integer>
<integer>7</integer>
</dict>
<key>Base64.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>12</integer>
<integer>8</integer>
</dict>
<key>CodePush.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>14</integer>
<integer>10</integer>
</dict>
<key>DoubleConversion.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>15</integer>
<integer>11</integer>
</dict>
<key>FLAnimatedImage.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>16</integer>
<integer>12</integer>
</dict>
<key>Folly.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>17</integer>
<integer>13</integer>
</dict>
<key>JWT.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>19</integer>
<integer>15</integer>
</dict>
<key>Pods-eSteem-tvOS.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>21</integer>
<integer>17</integer>
</dict>
<key>Pods-eSteem-tvOSTests.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>22</integer>
<integer>18</integer>
</dict>
<key>Pods-eSteem.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>20</integer>
<integer>16</integer>
</dict>
<key>Pods-eSteemTests.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>23</integer>
<integer>19</integer>
</dict>
<key>QBImagePickerController-QBImagePicker.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>25</integer>
<integer>21</integer>
</dict>
<key>QBImagePickerController.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>24</integer>
<integer>20</integer>
</dict>
<key>RNImageCropPicker.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>28</integer>
<integer>25</integer>
</dict>
<key>RSKImageCropper.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>29</integer>
<integer>27</integer>
</dict>
<key>SDWebImage.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>30</integer>
<integer>29</integer>
</dict>
<key>SSZipArchive.xcscheme</key>
<dict>
@ -135,28 +135,28 @@
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>13</integer>
<integer>9</integer>
</dict>
<key>glog.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>18</integer>
<integer>14</integer>
</dict>
<key>react-native-fast-image.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>26</integer>
<integer>22</integer>
</dict>
<key>react-native-version-number.xcscheme</key>
<dict>
<key>isShown</key>
<false/>
<key>orderHint</key>
<integer>27</integer>
<integer>23</integer>
</dict>
</dict>
<key>SuppressBuildableAutocreation</key>

View File

@ -8,3 +8,4 @@ PODS_BUILD_DIR = ${BUILD_DIR}
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
PODS_ROOT = ${SRCROOT}/Pods
USER_HEADER_SEARCH_PATHS = $(inherited) $(SRCROOT)/FLAnimatedImage/FLAnimatedImage

View File

@ -8,3 +8,4 @@ PODS_BUILD_DIR = ${BUILD_DIR}
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
PODS_ROOT = ${SRCROOT}/Pods
USER_HEADER_SEARCH_PATHS = $(inherited) $(SRCROOT)/FLAnimatedImage/FLAnimatedImage

View File

@ -8,3 +8,4 @@ PODS_BUILD_DIR = ${BUILD_DIR}
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
PODS_ROOT = ${SRCROOT}/Pods
USER_HEADER_SEARCH_PATHS = $(inherited) $(SRCROOT)/FLAnimatedImage/FLAnimatedImage

View File

@ -8,3 +8,4 @@ PODS_BUILD_DIR = ${BUILD_DIR}
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
PODS_ROOT = ${SRCROOT}/Pods
USER_HEADER_SEARCH_PATHS = $(inherited) $(SRCROOT)/FLAnimatedImage/FLAnimatedImage

View File

@ -7,7 +7,7 @@
<key>eSteem-release.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>9</integer>
<integer>5</integer>
</dict>
<key>eSteem-tvOS.xcscheme_^#shared#^_</key>
<dict>

View File

@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>2.0.8</string>
<string>2.0.9</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleURLTypes</key>
@ -31,7 +31,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>777</string>
<string>778</string>
<key>CodePushDeploymentKey</key>
<string>13ThFZsgwk6UZp6mIe95IDbnfw8iHy1jfsn-E</string>
<key>LSRequiresIPhoneOS</key>
@ -57,7 +57,7 @@
<key>NSCameraUsageDescription</key>
<string>To access your photos, eSteem needs your permission to help you share your photos.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string/>
<string></string>
<key>NSMainNibFile</key>
<string>LaunchScreen</string>
<key>NSMicrophoneUsageDescription</key>

View File

@ -1,6 +1,6 @@
{
"name": "eSteem",
"version": "2.0.8",
"version": "2.0.9",
"private": true,
"rnpm": {
"assets": [

View File

@ -64,11 +64,11 @@
"push_notification": "دفع الإشعارات",
"pincode": "رمز PIN",
"reset": "إعادة",
"nsfw_content": "NSFW Content",
"nsfw_content": "محتوى NSFW",
"nsfw": {
"always_show": "Always show",
"always_hide": "Always hide",
"always_warn": "Always warn"
"always_show": "عرض دوماً",
"always_hide": "إخفاء دوماً",
"always_warn": "التحذير دوماً"
}
},
"voters": {

View File

@ -19,6 +19,7 @@
"unfollow": "unfollowed you",
"ignore": "ignored you",
"reblog": "reblogged your post",
"transfer": "transfered steem",
"comingsoon": "Leaderboard feature is coming soon!",
"notification": "Notifications",
"leaderboard": "Leaderboard",
@ -152,6 +153,7 @@
"invalid_pincode": "Invalid PIN code, please check and try again.",
"remove_alert": "Are you sure you want to remove?",
"clear_alert": "Are you sure you want to clear?",
"clear_user_alert": "Are you sure you want to clear all user data?",
"clear": "Clear",
"cancel": "Cancel",
"delete": "Delete",

View File

@ -1,13 +1,13 @@
{
"wallet": {
"curation_reward": "תגמול לניהול פעילויות ותוכן",
"curation_reward": "תגמול עבור פעילויות ותוכן",
"author_reward": "תגמול הסופר",
"comment_benefactor_reward": "הגב תגמול המיטיב",
"claim_reward_balance": "רכוש תגמול על מאזן כח",
"comment_benefactor_reward": "תגמולי המיטיב על תגובות",
"claim_reward_balance": "קבל תגמולים על יתרה",
"transfer": "העברה",
"transfer_to_vesting": "העבר בדי להוציא לפועל",
"transfer_to_vesting": "העבר לVesting",
"transfer_from_savings": "העבר מחסכונות",
"withdraw_vesting": "כבה כח",
"withdraw_vesting": "המרת כוח הסטים ליתרה נזילה",
"fill_order": "מלא בקשה"
},
"notification": {
@ -17,39 +17,39 @@
"mention": "הזכיר\\ה אותך",
"follow": "עקב\\ה אחרייך",
"unfollow": "הפסיק\\ה לעקוב אחרייך",
"ignore": "התעלם\\ה ממך (\\מהצעתך)",
"ignore": "התעלם\\ה ממך",
"reblog": "העלה\\תה את הפוסט שלך לבלוג שלו\\ה",
"comingsoon": "יישום ה-לידרבורד יוצא להשקה בקרוב!",
"comingsoon": "מאפיין לוח התוצאות יוצא להשקה בקרוב!",
"notification": "התראות",
"leaderboard": "לוח תוצאות",
"leaderboard_title": "משתמש יומי ברמה גבוהה",
"leaderboard_title": "המשתמשים המובילים היום",
"recent": "לאחרונה",
"yesterday": "אתמול",
"this_week": "בשבוע הזה",
"this_month": "בחודש הזה",
"older_then": "בוגר\\ת מחודש"
"this_week": "השבוע",
"this_month": "החודש הזה",
"older_then": "ישן יותר מחודש"
},
"messages": {
"comingsoon": ופציית תקשור דרך הודעות יוצאת בקרוב!"
"comingsoon": פשרות ההודעות יוצאת בקרוב!"
},
"profile": {
"following": "עוקב\\ת",
"follower": "עוקב\\ת",
"post": "Post",
"post": "פוסטים",
"details": "פרטי פרופיל",
"comments": "תגובות",
"replies": גובות",
"replies": שובות",
"wallet": "ארנק",
"wallet_details": "פרטי ארנק",
"unclaimed_rewards": "תגמולים שלא נלקחו",
"full_in": "מלא ב",
"unclaimed_rewards": "תגמולים שטרם נדרשו",
"full_in": "יתמלא ב",
"hours": "שעות",
"voting_power": ח הצבעה",
"voting_power": וח הצבעה",
"login_to_see": "התחבר\\י כדי לראות",
"havent_commented": "לא הגיב\\ה עדיין",
"havent_posted": "לא העלה\\תה פוסט עדיין",
"steem_power": ח Steem",
"next_power_text": "כח כבוי הבא נמצא ב",
"havent_commented": "לא הגיבו עדיין",
"havent_posted": "לא העלו פוסט עדיין",
"steem_power": וח Steem",
"next_power_text": "הנזלת יתרת כוח הסטים הבאה נמצאת ב",
"days": "ימים",
"day": "יום",
"steem_dollars": "דולר Steem",
@ -57,56 +57,56 @@
},
"settings": {
"settings": "הגדרות",
"currency": "יתרת מטבע",
"currency": "יתרה",
"language": "שפה",
"server": "שרת",
"dark_theme": "ערכת נושא כהה",
"push_notification": תראת דחיפה",
"pincode": "סיסמה",
"reset": "אתחול מחדש",
"push_notification": ודעות דחיפה",
"pincode": "קוד PIN",
"reset": "אתחל",
"nsfw_content": "תוכן NSFW",
"nsfw": {
"always_show": "הצג תמיד",
"always_hide": "הסתר תמיד",
"always_warn": "תמיד לתת אזהרה"
"always_warn": "הזהר תמיד"
}
},
"voters": {
"voters_info": "פרטי מצביעים",
"no_user": "לא נמצא משתמש\\ת בשם זה."
"voters_info": "פרטי המצביעים",
"no_user": "לא נמצא שום משתמש\\ת."
},
"login": {
"signin": "התחבר\\י לחשבון",
"signin": "התחבר\\י",
"signup": "הירשם\\י",
"signin_title": "על מנת לקבל את כל ההטבות שeSteem מציע",
"signin_title": "על מנת לקבל את כל ההטבות שמגיעות עם שימוש בeSteem",
"username": "שם משתמש",
"password": "סיסמה או WIF",
"description": "מידע של המשתמש שמור באופן מקומי על המכשיר. הפרטים נמחקים בעת התנתקות מהחשבון!",
"cancel": "בטל\\י",
"login": "כניסה",
"steemconnect_description": "אם אינך מעוניין\\ת להמשיך את סיסמתך מוצפנת ושמורה על מכשירך, את\\ה רשאי\\ת להשתמש בSteemconnect.",
"steemconnect_fee_description": "Steemconnect עשוי לגבות תשלומים מסוימים מהעברות תגמולותיך"
"steemconnect_description": "אם אינך מעוניין\\ת לשמור יותר את סיסמתך מוצפנת ועל מכשירך, את\\ה רשאי\\ת להתחבר דרךSteemconnect.",
"steemconnect_fee_description": "Steemconnect עשוי לגבות תשלומים מסוימים מיתרת תגמוליך"
},
"home": {
"feed": "פיד",
"popular": "פופולרי"
"popular": "מקובל"
},
"side_menu": {
"profile": "פרופיל",
"bookmarks": "סימניות",
"favorites": "מועדפים",
"drafts": "טיוטות",
"drafts": "טיוטה",
"schedules": "לוחות זמנים",
"gallery": "גלריה",
"settings": "הגדרות",
"add_account": "הוסף\/י חשבון",
"logout": "יציאה מהמערכת",
"logout": "התנתק\/י",
"cancel": "ביטול",
"logout_text": "האם את\\ה בטוח\\ה שברצונך להתנתק?"
},
"header": {
"title": "התחבר\\י כדי לעצב אישית את הפיד שלך",
"search": יפוש..."
"search": פש..."
},
"basic_header": {
"publish": "פרסם\\י",
@ -116,47 +116,47 @@
},
"editor": {
"title": "כותרת",
"tags": "מתויגים",
"default_placeholder": "מה ברצונך לכתוב על אודות יומך?",
"reply_placeholder": "מה ברצונך לכתוב בנוגע לעברך?",
"tags": "תיוגים",
"default_placeholder": "על מה תרצה לכתוב, היום?",
"reply_placeholder": "מה תרצה לכתוב לגבי הפוסט הנ\"ל?",
"publish": "פרסם\\י",
"reply": "השב\\י",
"open_galery": "פתח\\י גלריה",
"capture_photo": "צלם תמונה"
"capture_photo": "לכידת תמונה"
},
"pincode": {
"enter_text": "תקליד\\י סיסמה בכדי לבטל נעילה",
"enter_text": "תקליד\\י PIN כדי לבטל נעילה",
"set_new": "הגדר PIN חדש",
"write_again": "כתוב שנית",
"forgot_text": "אוי, אני שכחתי..."
"write_again": "כתוב שוב",
"forgot_text": "אוי, אני שכחתי את זה..."
},
"alert": {
"success": "הצלחה!",
"allRead": "סימן את כל ההתראות כנקראו",
"claim_reward_balance_ok": "תגמול מאזן נאסף",
"fail": "כישלון!",
"allRead": "סימון כל ההודעות כנקראו",
"claim_reward_balance_ok": "תגמול יתרה נתקבלה",
"fail": "נכשל!",
"success_shared": "הפוסט שלך שותף בהצלחה",
"permission_denied": "הרשאה\\ בקשה נדחתה",
"permission_text": "אנא, שנה את ההרשאות באפליקציית הeSteem. ניתן להיכנס דרך ההגדרות בטלפון.",
"permission_denied": "בקשה נדחתה",
"permission_text": "אנא, שנה את ההרשאות באפליקציית הeSteem, דרך ההגדרות בטלפון.",
"success_rebloged": "שותף!",
"already_rebloged": "כבר פרסמת מחדש!",
"warning": "אזהרה",
"invalid_pincode": "קוד PIN לא תקין\\ה, אנא בדק\\י ונסה\\י שנית.",
"remove_alert": "בוודאות ברצונך להסיר?",
"invalid_pincode": "קוד PIN לא תקין, אנא בדוק ונסה שנית.",
"remove_alert": "האם בוודאות ברצונך להסיר?",
"clear_alert": "האם את\\ה בטוח שברצונך למחוק הכל?",
"clear": "נקי",
"clear": "ריק",
"cancel": "בטל\\י",
"delete": "מחק\\י",
"copied": "הועתק!",
"no_internet": "אין חיבור!"
},
"post": {
"reblog_alert": "ברצונך לעלות מחדש פוסט זה לבלוגך?"
"reblog_alert": "האם ברצונך לעלות מחדש פוסט זה לבלוגך?"
},
"drafts": {
"title": "טיוטות",
"title": "טיוטה",
"load_error": "לא ניתן לעלות טיוטה",
"empty_list": "לא נמצא כאן",
"empty_list": "ריק כאן",
"deleted": "טיוטה נמחקה"
},
"schedules": {
@ -169,8 +169,8 @@
"bookmarks": {
"title": "סימניות",
"load_error": "לא ניתן לעלות סימניות",
"empty_list": "אין כאן מידע",
"deleted": "סימנייה הוסרה",
"empty_list": "ריק כאן",
"deleted": "הסימנייה הוסרה",
"search": "חפש בסימניות",
"added": "הוסף לסימניות",
"add": "הוסף\\י לסימניות"
@ -178,40 +178,40 @@
"favorites": {
"title": "מועדפים",
"load_error": "לא ניתן לעלות מועדפים",
"empty_list": "לא נמצא כאן דבר",
"empty_list": "ריק כאן",
"search": "חפש\\י במועדפים"
},
"auth": {
"invalid_pin": "קוד PIN לא תקין\\ה, אנא בדק\\י ונסה\\י שנית",
"invalid_username": "שם משתמש לא תקין, אנא בדק\\י ונסה\\י שנית",
"already_logged": "הינך כבר מחובר\\ת למערכת, אנא נסה להוסיף חשבון אחר",
"invalid_credentials": "הישגים\\פרטים לא תקינים, אנא בדוק\\י ונסה\\י שנית",
"invalid_pin": "קוד PIN לא תקין, אנא בדק\\י ונסה\\י שנית",
"invalid_username": "שם משתמש לא תקין, אנא בדוק\\י ונסה\\י שנית",
"already_logged": "הינך כבר מחובר\\ת למערכת, אנא נסה\/י להוסיף חשבון אחר",
"invalid_credentials": "פרטים אינם תקינים, אנא בדק\\י ונסה\\י שנית",
"unknow_error": "תקלה לא מזוהה, אנא איתנו צור קשר בsupport@esteem.app"
},
"payout": {
"potential_payout": "תשלום אפשרי",
"promoted": "קודם",
"author_payout": "תשלום הכותב",
"curation_payout": "תשלום מושגח",
"promoted": "מקודמים",
"author_payout": "תשלום הסופר",
"curation_payout": "תשלום אוצרות התוכן",
"payout_date": "תשלום"
},
"post_dropdown": {
"copy": "העתק קישור",
"reblog": "העלה מחדש לבלוג",
"reblog": "שתף\/י שוב",
"reply": "השב",
"share": "שתף\\י",
"bookmarks": "הוסף\\י לסימניות"
},
"deep_link": {
"no_existing_user": "אין משתמש קיים בשם זה",
"no_existing_post": "אין פוסט קיים"
"no_existing_user": "המשתמש אינו קיים",
"no_existing_post": "הפוסט אינו קיים"
},
"search": {
"posts": "פוסטים\\ העלאות",
"posts": "העלאות",
"comments": "תגובות"
},
"comment_filter": {
"trending": "חם כעת",
"trending": "פופולארי כעת",
"reputation": "מוניטין",
"votes": "הצבעות",
"age": "גיל"

View File

@ -68,7 +68,7 @@
"nsfw": {
"always_show": "항상 보여주기",
"always_hide": "항상 숨기기",
"always_warn": "Always warn"
"always_warn": "항상 경고 표시하기"
}
},
"voters": {

View File

@ -64,11 +64,11 @@
"push_notification": "Aktyvieji pranešimai",
"pincode": "Pincode",
"reset": "Atstatyti",
"nsfw_content": "NSFW Content",
"nsfw_content": "NSFW Turinys",
"nsfw": {
"always_show": "Always show",
"always_hide": "Always hide",
"always_warn": "Always warn"
"always_show": "Visada rodyti",
"always_hide": "Visada paslėpti",
"always_warn": "Visada įspėti"
}
},
"voters": {

View File

@ -186,8 +186,7 @@ export const updateUserData = userData => new Promise((resolve, reject) => {
export const removeUserData = username => new Promise((resolve, reject) => {
try {
const account = realm.objects(USER_SCHEMA).filtered('username = $0', username);
const account = realm.objects(USER_SCHEMA).filtered('username = $0', username)
if (Array.from(account).length > 0) {
realm.write(() => {
realm.delete(account);
@ -201,6 +200,21 @@ export const removeUserData = username => new Promise((resolve, reject) => {
}
});
export const removeAllUserData = () => new Promise((resolve, reject) => {
try {
const accounts = realm.objects(USER_SCHEMA);
const scAccount = realm.objects(SC_ACCOUNTS);
realm.write(() => {
realm.delete(accounts);
realm.delete(scAccount);
resolve();
});
} catch (error) {
reject(error);
}
});
// // TODO: This method deleting ALL users. This should delete just a user.
// export const removeUserData = () => new Promise((resolve, reject) => {
// setAuthStatus({ isLoggedIn: false }).then(() => {

View File

@ -92,7 +92,7 @@ class ApplicationContainer extends Component {
isConnected = _isConnected;
});
NetInfo.isConnected.addEventListener('connectionChange', this._handleConntectionChange);
// NetInfo.isConnected.addEventListener('connectionChange', this._handleConntectionChange);
if (!isIos) BackHandler.addEventListener('hardwareBackPress', this._onBackPress);
if (isConnected) {
@ -127,7 +127,7 @@ class ApplicationContainer extends Component {
if (!isIos) BackHandler.removeEventListener('hardwareBackPress', this._onBackPress);
NetInfo.isConnected.removeEventListener('connectionChange', this._handleConntectionChange);
// NetInfo.isConnected.removeEventListener('connectionChange', this._handleConntectionChange);
clearInterval(this.globalInterval);
}
@ -145,8 +145,8 @@ class ApplicationContainer extends Component {
}
// TODO: solve this work arround
NetInfo.isConnected.removeEventListener('connectionChange', this._handleConntectionChange);
NetInfo.isConnected.addEventListener('connectionChange', this._handleConntectionChange);
// NetInfo.isConnected.removeEventListener('connectionChange', this._handleConntectionChange);
// NetInfo.isConnected.addEventListener('connectionChange', this._handleConntectionChange);
};
_onBackPress = () => {

View File

@ -90,7 +90,7 @@ class EditorContainer extends Component {
this.setState(
{
isEdit,
draftPost: { title: post.title, tags: post.json_metadata.tags },
draftPost: { title: post.title, body: post.markdownBody, tags: post.json_metadata.tags },
},
() => {
this._getPurePost(post.author, post.permlink);

View File

@ -10,11 +10,19 @@ import {
verifyPinCode,
updatePinCode,
} from '../../../providers/steem/auth';
import { closePinCodeModal } from '../../../redux/actions/applicationActions';
import { getExistUser, setExistUser, getUserDataWithUsername } from '../../../realm/realm';
import { closePinCodeModal, login, logoutDone } from '../../../redux/actions/applicationActions';
import {
getExistUser,
setExistUser,
getUserDataWithUsername,
removeAllUserData,
removePinCode,
setAuthStatus,
} from '../../../realm/realm';
import {
updateCurrentAccount,
setPinCode as savePinCode,
removeOtherAccount,
} from '../../../redux/actions/accountAction';
import { getUser } from '../../../providers/steem/dsteem';
@ -112,11 +120,14 @@ class PinCodeContainer extends Component {
resolve();
})
.catch((err) => {
Alert.alert(intl.formatMessage({
id: 'alert.warning',
}), intl.formatMessage({
id: err.message,
}));
Alert.alert(
intl.formatMessage({
id: 'alert.warning',
}),
intl.formatMessage({
id: err.message,
}),
);
reject(err);
});
}
@ -154,12 +165,7 @@ class PinCodeContainer extends Component {
_verifyPinCode = pin => new Promise((resolve, reject) => {
const {
currentAccount,
dispatch,
accessToken,
navigateTo,
navigation,
intl,
currentAccount, dispatch, accessToken, navigateTo, navigation, intl,
} = this.props;
// If the user is exist, we are just checking to pin and navigating to home screen
@ -183,11 +189,14 @@ class PinCodeContainer extends Component {
}
})
.catch((err) => {
Alert.alert(intl.formatMessage({
id: 'alert.warning',
}), intl.formatMessage({
id: err.message,
}));
Alert.alert(
intl.formatMessage({
id: 'alert.warning',
}),
intl.formatMessage({
id: err.message,
}),
);
reject(err);
});
});
@ -264,6 +273,42 @@ class PinCodeContainer extends Component {
}, 1000);
};
_handleForgotButton = () => {
const { intl } = this.props;
Alert.alert(
intl.formatMessage({
id: 'alert.warning',
}),
intl.formatMessage({
id: 'alert.clear_user_alert',
}),
[
{ text: intl.formatMessage({ id: 'alert.clear' }), onPress: () => this._forgotPinCode() },
{ text: intl.formatMessage({ id: 'alert.cancel' }), style: 'destructive' },
]
);
};
_forgotPinCode = async () => {
const { otherAccounts, dispatch } = this.props;
await removeAllUserData()
.then(async () => {
dispatch(updateCurrentAccount({}));
dispatch(login(false));
removePinCode();
setAuthStatus({ isLoggedIn: false });
setExistUser(false);
if (otherAccounts.length > 0) {
otherAccounts.map(item => dispatch(removeOtherAccount(item.username)));
}
dispatch(logoutDone());
dispatch(closePinCodeModal());
})
.catch(() => {});
};
render() {
const { currentAccount, intl, isReset } = this.props;
const { informationText, isExistUser } = this.state;
@ -274,6 +319,7 @@ class PinCodeContainer extends Component {
showForgotButton={isExistUser}
username={currentAccount.name}
intl={intl}
handleForgotButton={() => this._handleForgotButton()}
{...this.props}
/>
);
@ -283,6 +329,7 @@ class PinCodeContainer extends Component {
const mapStateToProps = state => ({
currentAccount: state.account.currentAccount,
applicationPinCode: state.account.pin,
otherAccounts: state.account.otherAccounts,
});
export default injectIntl(connect(mapStateToProps)(PinCodeContainer));

View File

@ -51,7 +51,7 @@ class PinCodeScreen extends PureComponent {
render() {
const {
informationText, showForgotButton, username, intl,
informationText, showForgotButton, username, intl, handleForgotButton,
} = this.props;
const { pin, loading } = this.state;
@ -73,7 +73,7 @@ class PinCodeScreen extends PureComponent {
<NumericKeyboard onPress={this._handleKeyboardOnPress} />
</View>
{showForgotButton ? (
<TouchableOpacity style={styles.forgotButtonView}>
<TouchableOpacity onPress={() => handleForgotButton()} style={styles.forgotButtonView}>
<Text style={styles.forgotButtonText}>
{intl.formatMessage({
id: 'pincode.forgot_text',

View File

@ -173,22 +173,24 @@ const RootContainer = () => (WrappedComponent) => {
Push.setListener({
onPushNotificationReceived(pushNotification) {
const extra = JSON.parse(pushNotification.customProperties.extra);
const push = pushNotification.customProperties;
if (extra.parent_permlink || extra.permlink) {
if (push.parent_permlink1 || push.permlink1) {
params = {
author: extra.parent_permlink
? extra.parent_author
: pushNotification.customProperties.target,
permlink: extra.parent_permlink ? extra.parent_permlink : extra.permlink,
author: push.parent_permlink1 ? push.parent_author : push.target,
permlink: push.parent_permlink1
? `${push.parent_permlink1}${push.parent_permlink2}${push.parent_permlink3}`
: `${push.permlink1}${push.permlink2}${push.permlink3}`,
};
key = extra.parent_permlink ? extra.parent_permlink : extra.permlink;
key = push.parent_permlink1
? `${push.parent_permlink1}${push.parent_permlink2}${push.parent_permlink3}`
: `${push.permlink1}${push.permlink2}${push.permlink3}`;
routeName = ROUTES.SCREENS.POST;
} else {
params = {
username: pushNotification.customProperties.source,
username: push.source,
};
key = pushNotification.customProperties.source;
key = push.source;
routeName = ROUTES.SCREENS.PROFILE;
}

View File

@ -28,6 +28,10 @@ export const parsePost = (post, currentUserName, isSummary = false) => {
_post.is_voted = false;
}
if (currentUserName === _post.author) {
_post.markdownBody = post.body;
}
const totalPayout = parseFloat(_post.pending_payout_value)
+ parseFloat(_post.total_payout_value)
+ parseFloat(_post.curator_payout_value);