// History Listing #include "clog.h" #include "cgi.h" #include "input.h" #include "wrenchboard_api.h" #include "history.h" #include "media.h" #include "email.h" #include "payments.h" #include "safestring.h" #include #include "pgsql.h" #include "pgsql_wrapper.h" #include "cfg.h" #include /* CREATE TABLE members_myfiles ( id SERIAL, member_id INT REFERENCES members(id) NOT NULL, uid uuid DEFAULT uuid_generate_v4(), file_name VARCHAR(35), saved_file_name VARCHAR(35) UNIQUE NOT NULL, file_size INT DEFAULT 0, file_type VARCHAR(15), title VARCHAR(35), description VARCHAR(100), status INT DEFAULT 1, added timestamp without time zone DEFAULT now(), updated timestamp without time zone DEFAULT now() ); ALTER TABLE ONLY members_myfiles ADD CONSTRAINT members_myfiles_id_key UNIQUE (id); $data = [ 'action' => WRENCHBOARD_GET_MEDIA, 'sessionid' => $sessionId, 'file_section' => $fileSection, 'file_uid' => $fileUID, ]; */ long WrenchFindStoredMedia(CVars in, CVars &out) { logfmt(logINFO, "WrenchFindStoredMedia()"); 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 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, "(.*)"); long file_section_no = REQ_LONG( in, "file_section_no", 1, -1 ); REQ_STRING(in, "sessionid", 3, 150, "(.*)"); //snprintf(file_section, sizeof (file_section), "%s", in["file_section"].c_str()); switch(file_section_no){ case WRENCH_FILE_PROFILE: REQ_STRING(in, "uid", 3, 150, "(.*)"); 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()); snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE id =1"); break; case WRENCH_FILE_CONTRACTS: // snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE id =1", in["file_uid"].c_str()); snprintf(vname, sizeof (vname), "SELECT * FROM members WHERE id =1"); break; case WRENCH_FILE_FAMILY: REQ_STRING(in, "uid", 3, 150, "(.*)"); REQ_STRING(in, "family_uid", 5, 40, "(.*)"); snprintf(vname, sizeof (vname), "SELECT * FROM members_family WHERE uid ='%s'", in["family_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);