diff --git a/wrenchboard/src/include/media.h b/wrenchboard/src/include/media.h index 17705e20..1f4f7573 100644 --- a/wrenchboard/src/include/media.h +++ b/wrenchboard/src/include/media.h @@ -7,5 +7,6 @@ //long WrenchRefferHx( CVars in, CVars &out ); //long WrenchMyFilesList( CVars in, CVars &out ); long WrenchFindStoredMedia(CVars in, CVars &out); +long WrenchSaveStoredMedia(CVars in, CVars &out); #endif \ No newline at end of file diff --git a/wrenchboard/src/include/wrenchboard_api.h b/wrenchboard/src/include/wrenchboard_api.h index 767e828a..77685870 100644 --- a/wrenchboard/src/include/wrenchboard_api.h +++ b/wrenchboard/src/include/wrenchboard_api.h @@ -6,6 +6,11 @@ enum { FLAG_INIT,FLAG_START,FLAG_CANCEL,FLAG_FAIL,FLAG_OK }; enum { WHAT_NEW_CARDADD, WHAT_PICKUP_INITIALPAYMENT }; enum { PARTNER_STRIPE }; +#define WRENCH_FILE_PROFILE 100 +#define WRENCH_FILE_MYFILE 200 +#define WRENCH_FILE_CONTRACTS 300 +#define WRENCH_FILE_FAMILY 400 + #define PHP_API_OK 0 #define PHP_CREATED_OK 10 #define PHP_UPDATED_OK 15 @@ -135,7 +140,8 @@ enum { PARTNER_STRIPE }; #define WRENCHBOARD_CREATE_ACCOUNT 320 -#define WRENCHBOARD_GET_MEDIA 650 +#define WRENCHBOARD_GET_MEDIA 650 +#define WRENCHBOARD_SAVE_MEDIA 652 // -- CRON JOBS #define WRB_JOB_CRONJOB 770 diff --git a/wrenchboard/src/shared_tool/media.cc b/wrenchboard/src/shared_tool/media.cc index f8db3951..5a5b9652 100644 --- a/wrenchboard/src/shared_tool/media.cc +++ b/wrenchboard/src/shared_tool/media.cc @@ -43,10 +43,7 @@ CREATE TABLE members_myfiles ( */ -#define WRENCH_FILE_PROFILE 100 -#define WRENCH_FILE_MYFILE 200 -#define WRENCH_FILE_CONTRACTS 300 -#define WRENCH_FILE_FAMILY 400 + long WrenchFindStoredMedia(CVars in, CVars &out) { logfmt(logINFO, "WrenchFindStoredMedia()"); @@ -65,9 +62,11 @@ long WrenchFindStoredMedia(CVars in, CVars &out) { case WRENCH_FILE_PROFILE: //file_uid is the UID of the user + /* REQ_STRING(in, "profile", 5, 40, "(.*)"); pgsql_exec("UPDATE members SET profile_pic='%s' " " WHERE uid='%s'",in["profile"].c_str(), in["file_uid"].c_str()); + */ snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE uid ='%s'", in["file_uid"].c_str()); break; @@ -96,3 +95,56 @@ long WrenchFindStoredMedia(CVars in, CVars &out) { logfmt(logINFO, "/WrenchFindStoredMedia()"); return ret; } + + +long WrenchSaveStoredMedia(CVars in, CVars &out) { + logfmt(logINFO, "WrenchSaveStoredMedia()"); + long ret = PHP_API_BAD_PARAM; + char vname[500]; + char file_section[50]; + try { + REQ_STRING(in, "file_section", 5, 40, "(.*)"); + REQ_STRING(in, "sessionid", 3, 150, "(.*)"); + REQ_STRING(in, "file_uid", 3, 150, "(.*)"); + long file_section_no = REQ_LONG( in, "file_section_no", 1, -1 ); + + snprintf(file_section, sizeof (file_section), "%s", in["file_section"].c_str()); + + switch(file_section_no){ + + case WRENCH_FILE_PROFILE: + //file_uid is the UID of the user + REQ_STRING(in, "profile", 5, 40, "(.*)"); + pgsql_exec("UPDATE members SET profile_pic='%s' " + " WHERE uid='%s'",in["profile"].c_str(), in["file_uid"].c_str()); + */ + snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE uid ='%s'", in["file_uid"].c_str()); + break; + + case WRENCH_FILE_MYFILE: + snprintf(vname, sizeof (vname), "SELECT m.uid AS member_uid, mm.uid AS flie_uid, mm.* " + " FROM members_myfiles mm LEFT JOIN members m ON m.id=mm.member_id " + " WHERE mm.uid ='%s'", in["file_uid"].c_str()); + break; + + case WRENCH_FILE_CONTRACTS: + snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE id =1", in["file_uid"].c_str()); + break; + + case WRENCH_FILE_FAMILY: + snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE id =1", in["file_uid"].c_str()); + break; + } + + if ( load_db_record(out, "%s", vname) > 0){ + ret = PHP_API_OK; + } + + } catch (bad_parameter) { + logfmt(logINFO, "ERROR CALL long WrenchSaveStoredMedia(CVars in, CVars &out)"); + } + logfmt(logINFO, "/WrenchSaveStoredMedia()"); + return ret; +} +//ALTER TABLE members_family ADD profile_pic VARCHAR(35); + diff --git a/wrenchboard/src/shared_tool/wrenchboard_api_main.cc b/wrenchboard/src/shared_tool/wrenchboard_api_main.cc index 9d38cbd8..b91a6216 100644 --- a/wrenchboard/src/shared_tool/wrenchboard_api_main.cc +++ b/wrenchboard/src/shared_tool/wrenchboard_api_main.cc @@ -56,6 +56,11 @@ long wrenchboard_api_main(CVars in, CVars &out) { return SendSMSMessage(in, out); } + + if( action == WRENCHBOARD_SAVE_MEDIA ){ + return WrenchSaveStoredMedia(in, out); + } + if( action == WRENCHBOARD_GET_MEDIA ){ return WrenchFindStoredMedia(in, out); } diff --git a/www-api/app/Config/Constants.php b/www-api/app/Config/Constants.php index 9a9ff4f5..ae6d87ee 100644 --- a/www-api/app/Config/Constants.php +++ b/www-api/app/Config/Constants.php @@ -145,6 +145,8 @@ define('CONTRACT_ACCEPT_COMPLETE', 5); define('CONTRACT_REJECT_COMPLETE', 1); const WRENCHBOARD_GET_MEDIA = 650; +const WRENCHBOARD_SAVE_MEDIA = 652; + //************************************************************** define('WRENCHBOARD_BKO_START', 10000); diff --git a/www-api/app/Controllers/WrenchMedia.php b/www-api/app/Controllers/WrenchMedia.php index a12a11b2..b9a988d3 100644 --- a/www-api/app/Controllers/WrenchMedia.php +++ b/www-api/app/Controllers/WrenchMedia.php @@ -51,7 +51,7 @@ class WrenchMedia extends BaseController $fileSection = $uriSegments[$segLen-2]; $fileUID = $uriSegments[$segLen-1]; - $supportedSections = ['nn'=>100,'myfile'=>200,'contracts'=>300,'family'=>400]; + $supportedSections = ['profile'=>100,'myfile'=>200,'contracts'=>300,'family'=>400]; if (!in_array($fileSection, $supportedSections)) { // section not supported // return; @@ -59,6 +59,10 @@ class WrenchMedia extends BaseController /* * VERIFY ALL PARAMETERS ARE GOOD + #define WRENCH_FILE_PROFILE 100 + #define WRENCH_FILE_MYFILE 200 + #define WRENCH_FILE_CONTRACTS 300 + #define WRENCH_FILE_FAMILY 400 */ if( $this->sessionCheckString($sessionId)== PHP_API_OK ){ @@ -89,9 +93,23 @@ class WrenchMedia extends BaseController } //print_r($out); ///opt/wrenchboard/TEST/PROFILE/dfc9d601-780f-4d78-839f-422f0928f911/PORTRAIT/ + switch($supportedSections[$fileSection]){ + case 'profile': + ///opt/wrenchboard/TEST/PROFILE/3119b744-42ad-4834-bb83-b737588754ca/PORTRAIT + $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/PORTRAIT/". $out["saved_file_name"]; + break; + case 'family': + ///opt/wrenchboard/TEST/PROFILE/3119b744-42ad-4834-bb83-b737588754ca/FAMILY/3119b744-42ad-4834-bb83-b737588754ca/ + $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/FAMILY/family_uid/". $out["saved_file_name"]; + break; + + case 'myfile': + $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/MYFILES/". $out["saved_file_name"]; + break; + } // MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE - $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/MYFILES/". $out["saved_file_name"]; + log_message('critical', "wrenchboard_api-CALL MEDIA selectedFile DATA".$selectedFile ); diff --git a/www-api/app/Models/UploadManager.php b/www-api/app/Models/UploadManager.php index f36ebbf6..f1f8b40e 100644 --- a/www-api/app/Models/UploadManager.php +++ b/www-api/app/Models/UploadManager.php @@ -65,7 +65,8 @@ class UploadManager extends Model $out["call_backend"] = false; // flag ready to save data entry $data['file_uid'] =$in["uid"]; $data['profile'] = $in["profile"]; - $out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_PICTURE_PROFILE,$data); + $data['file_section'] = WRENCHBOARD_PICTURE_PROFILE; + $out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_SAVE_MEDIA,$data); /* * public function specififBackendCall($action,$data){ $in["action"] = $action; @@ -111,7 +112,8 @@ class UploadManager extends Model $out["call_backend"] = false; // flag ready to save data entry $data['file_uid'] = $in["uid"]; $data['profile'] = $in["profile"]; - $out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_PICTURE_FAMMEMBER, $data); + $data['file_section'] = WRENCHBOARD_PICTURE_FAMMEMBER; + $out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_SAVE_MEDIA, $data); } break;