inital commit

This commit is contained in:
2026-06-19 20:08:01 +06:00
commit 8a5abeeae4
13128 changed files with 3192007 additions and 0 deletions

602
config/app.constant.php Normal file
View File

@@ -0,0 +1,602 @@
<?php
//application constant
define("TOKEN_EXPIRED_AFTER", "+15 min");
define("PIN_EXPIRED_AFTER", "+10 min");
define("APP_DEFAULT_LANGUAGE", "en_US");
define("TRUE_CODE", "1");
define("FALSE_CODE", "0");
define("SUCCESS_CODE", "+000");
define("FAIL_CODE", "-1");
define("TOKEN_CHAR_NO", "8");
define("BULK_ACTION_DELETE", "1");
define('PROFILE_PIC_UPLOAD_DIR', 'profileImages/');
define("APP_DEFAULT_IMAGE_PATH", "default/default_image.png");
define("APP_REG_EMAIL_TEMPLATE_NAME", "registration/email");
define("APP_FORGOT_PASS_EMAIL_TEMPLATE_NAME", "forgotpass/forgot_password");
define("REGISTRATION_EMAIL_SCHEDULE_TRACKING_FILE", "registration_email_schedule.txt");
define("APP_EMAIL_FROM", "no-reply@ygtimes.com");
define("APP_EMAIL_FROM_DISPLAY_NAME", "Zeerow");
define('COPY_RIGHT_YEAR','2017-2025');
define("FA_CONFEDERATION", json_encode(['AFC','UEFA','CAF','CONCACAF','CONMEBOL','OFC']));
define("TEAM_TYPES", json_encode(['Football' , 'Futsal' , 'Beach football']));
define("TEAM_AGE_CATEGORY", json_encode(
[
'RTG-V1S8-General-Attack-to-BUREAUS-Untrue-or-Inaccurate-or-incomplete-Information_FORMAT' =>'RTG-V1S8-General-Attack-to-BUREAUS-Untrue-or-Inaccurate-or-incomplete-Information',
'RTG-V1S6-Late-Payments-BUREAUS-Volume-1-Step-6-attackto-bureaus-for-LATE-PAYMENTS_FORMAT' => 'RTG-V1S6-Late-Payments-BUREAUS-Volume-1-Step-6-attackto-bureaus-for-LATE-PAYMENTS',
'RTG-V1S4-Equifax-Bureau-Inquiries-LETTER-Volume-1-Step-4-for-direct-Equifax-bureau-attack-for-alleged-inquiries_FORMAT' => 'RTG-V1S4-Equifax-Bureau-Inquiries-LETTER-Volume-1-Step-4-for-direct-Equifax-bureau-attack-for-alleged-inquiries',
'RTG-V1S3b-TransUnion-Inquiries-LETTER-after-doing-V1S3a-FIRST-which-is-the-so-called-TU-glitch-2016-2017_FORMAT' => 'RTG-V1S3b-TransUnion-Inquiries-LETTER-after-doing-V1S3a-FIRST-which-is-the-so-called-TU-glitch-2016-2017',
'RTG-V1S2-SEA-11-for-experian-inquiries-VOLUME-1-Step-2_FORMAT' => 'RTG-V1S2-SEA-11-for-experian-inquiries-VOLUME-1-Step-2',
'RTG-V1S1-HiDC-letter-Creditor-Inquiry-Letter-Volume-1-Step-1-RTG-letter_FORMAT' => 'RTG-V1S1-HiDC-letter-Creditor-Inquiry-Letter-Volume-1-Step-1-RTG-letter',
'RTG-SL-CRA-SMART-BOMB-M2C-Method-for-Student-Loans-FIRST-round-OR-after-you-used-a-killing-fields-letter_FORMAT' => 'RTG-SL-CRA-SMART-BOMB-M2C-Method-for-Student-Loans-FIRST-round-OR-after-you-used-a-killing-fields-letter',
'rtg-NM-COLLECTIONS-creditor-M2C-CRM-LETTER-ONLY_FORMAT' => 'rtg-NM-COLLECTIONS-creditor-M2C-CRM-LETTER-ONLY',
'rtg-NM-COLLECTIONS-CRAs-M2C-CRM-LETTER-ONLY_FORMAT' => 'rtg-NM-COLLECTIONS-CRAs-M2C-CRM-LETTER-ONLY',
'RTG-med-COLLECTIONS-cra_FORMAT' => 'RTG-med-COLLECTIONS-cra',
'rtg-cra-LATE-PAYMENTs-12-pack-BUREAUs-M2C-Method_FORMAT' => 'rtg-cra-LATE-PAYMENTs-12-pack-BUREAUs-M2C-Method',
'RTG-cra-Judgments-M2CMethod_FORMAT' => 'RTG-cra-Judgments-M2CMethod',
'rtg-CHARGE-OFF-M2C-CRM-LETTER-1_FORMAT' => 'rtg-CHARGE-OFF-M2C-CRM-LETTER-1',
'RTG-CHARGEOFF-creditor-M2C-CRM-LETTER-ONLY_FORMAT' => 'RTG-CHARGEOFF-creditor-M2C-CRM-LETTER-ONLY',
'RTG-711-M2C-Crm-INQUIRY-Letter-for-BUREAUS_FORMAT' => 'RTG-711-M2C-Crm-INQUIRY-Letter-for-BUREAUS',
'GTG-V1S5-LatePayment-to-Creditor-or-Data-Furnisher-attack-LETTER_FORMAT' => 'GTG-V1S5-LatePayment-to-Creditor-or-Data-Furnisher-attack-LETTER',
'gtg-15-CrackerJack-Bureau-M2C-Method-letter-for-FIRST-ROUND-ATTACKS-contesting-FCRA-and-Metro-2-for-COMPLIANCE-Proof_FORMAT' => 'gtg-15-CrackerJack-Bureau-M2C-Method-letter-for-FIRST-ROUND-ATTACKS-contesting-FCRA-and-Metro-2-for-COMPLIANCE-Proof',
'RTG-V1S7-creditor-GENERAL-attack_FORMAT' => 'RTG-V1S7-creditor-GENERAL-attack',
'RTG-CRAPIs-all-GENERAL-BUREAUS-ATTACK-for-PERSONAL-INFORMATION_FORMAT' => 'RTG-CRAPIs-all-GENERAL-BUREAUS-ATTACK-for-PERSONAL-INFORMATION',
]));
define("GENDER", json_encode(['Men','Women']));
define("FORM_TYPE", json_encode(['1'=>'Static','2'=>'Form']));
define('LANGUAGE_CODE_ENGLISH', 'en');
define('LANGUAGE_CODE_KOREAN', 'ko');
define('STATUS_ACTIVE', 1);
define('STATUS_NOT_ACTIVE', 0);
define('SUPER_SUPER_ADMIN_ID', 1);
define('STATUS_PAUSE_MEMBERSHIP', 2);
define("RANDOM_KEY_LENGTH", 4); // key lenght for generating sharing key.
define("WIDTH_OF_IMAGE", 100); // Set the width of thumbnail image
define("MAX_FILE_SIZE",1288490190); // Set Maximum File size for content page. 1.2 GB
define('MANDRILL_TEMPLATE_USER_CREATION', 'user-creation-cms-en');
define('MANDRILL_TEMPLATE_FORGOT_PASSWORD', 'cms-forgot-password');
define('MANDRILL_TEMPLATE_REPLY_MESSAGE', 'reply-message');
define('INVOICE_TEMPLATE', 'invoice');
define('ESTIMATE_TEMPLATE', 'estimate');
define('COMPANY_ID', 8);
define('PACKAGE_ID', 1);
define('PACKAGE_WAVE_1_ID', 2);
define('PACKAGE_WAVE_2_ID', 3);
define('PACKAGE_WAVE_3_ID', 4);
define('PACKAGE_WAVE_4_ID', 5);
define('PACKAGE_WAVE_5_ID', 6);
define('PACKAGE_WAVE_6_ID', 7);
define('PACKAGE_WAVE_UPGRADE_MINIMUM_DAYS', 15);
define('USER_GET_REWARDED_FORM_WITHIN_DAYS', 15);
define('MAXIMUM_ALLOW_IP', 2);
define('ADMIN_USER_GROUP_ID', 9);
define('ADMIN_USER_ROLE_ID', 9);
define('USER_GROUP_ID', 11);
define('USER_ROLE_ID', 11);
define('UNIT', 'USD');
define('RTG_PLAN_ID', json_encode(['0'=>'R.T.G LETTER GENERATO','1'=>'$97 DOLLAR VIP ACCESS']));
define('STAFF_GROUP_ID', 12);
define('INVOICE_ACTIVE', 0);
define('INVOICE_INACTIVE', 1);
define('INVOICE_STATUS', json_encode(['Open','Paid','Sent','Partially Paid','Canceled','Accepted','Declined','Invoiced','Revised']));// 0 = Open, 1 = paid, 2 = sent, 3= PartiallyPaid, 4=Canceled, 5= Accepted,6=Declined,7=Invoiced,8=Revised
define('INVOICE_CURRENCY', json_encode(['$'=>'$','£'=>'£','€'=>'€','¥'=>'¥']));
define('DATE_FORMAT', 'Y-m-d');
define('CURRENCY_INDICATOR', '');
define('DISCOUNT_TYPE_INDICATOR', '%');
define("PERMISSION", json_encode(['Only show own tasks for non super admins','Clients can create tasks']));
define("TYPES", json_encode(['Payment' , 'Refund']));
define("REBILL", json_encode(['Yes' , 'No']));
define("ATTACHMENT", "attach-documents/");
define("INVOICE_LOGO", "invoice-logo/");
define("PROJECT_MEDIA_FILES", "project-media-files/");
define("PRIORITY", json_encode(['Low' , 'Medium','High']));
define('TASK_STATUS', json_encode(['Open','Done']));
define('TASK_TYPE', json_encode(['Not Billable','Billable','Billed']));
define('SUBSCRIPTION_FREQUENCY', json_encode([7=>'weekly',30=>'Monthly']));
define('SUBSCRIPTION_STATUS', json_encode([0=>'Inactive',1=>'Active',2=>'Ended',3=>'All']));
define('USER_STATUS', json_encode(['Active','Inactive']));
define("USER_PHOTO", "user-photo/");
define('TICKET_STATUS', json_encode(['Open','Reopen','Closed'])); //0 = open, 1 = Reopen, 2 = close
define('TICKET_BULK_ACTION', json_encode(['Close'])); //0 = open, 1 = Reopen, 2 = close
define('INVOICE_ADDPAYMENT_TYPE', json_encode(['Cash','Credit', 'Card','Paypal','Bank Transfer','Check','Direct Debit'])); //0 = open, 1 = Reopen, 2 = close
define("CONTACT_PHOTO", "contact_photo/");//latest
define("CMSUSER_LOGO", "cmsuser_logo/");//latest
define("PROJECT_RATE_TYPE", json_encode(['Fixed price','Rate per hour','Subscription pricing']));
// we have 4 types of user & they can log in separately
define('CMS_USER_INDICATOR',1);
define('CONTACT_USER_INDICATOR',3);
define('CRM_USER_INDICATOR',2);
define('STAF_USER_INDICATOR',4);
/*define('CSV_HEADING', json_encode(['Id','First Name','Last Name',
'Address','City','State',
'ZIP Code','CR D.O.B',
'Password','Email','CR CRA Report','CR First Name',
'CR Last Name','CR Street No','CR Street Name',
'CR City','CR State','CR Credit Bureau Address',
'CR Social Security No','CR Sincerely','CR Credit Company Name',
'CR Credit Company username','CR Credit Company Password'
]));*/
define('CSV_HEADING', json_encode(['Id','First Name','Last Name',
'Address','City','State',
'ZIP Code','CR D.O.B','Send Credential',
'Password','Email','Phone',
'CR CRA Report','CR First Name',
'CR Last Name','CR Street No','CR Street Name',
'CR City','CR State','CR Credit Bureau Address',
'CR Social Security No','CR Sincerely','CR Credit Company Name',
'CR Credit Company username','CR Credit Company Password'
]));
define('TICKET_PRIORITY',['-1'=>'All','0'=>'Low','1'=>'Medium','2'=>'High','3'=>'Urgent','4'=>'Very Urgent']);
define('SUPPORT_EMAIL','support');
define('SUPPORT_TEAM_MAIL',json_encode(['rajibcuetcse@gmail.com']));
define("SUPPORT_STATUS",json_encode(['All','Open','Closed'])); //2=closed,1=open,3=archieved,0=All
define('SUPPORT_STATUS_OPEN', 1);
define('SUPPORT_STATUS_CLOSED', 2);
define('SUPPORT_STATUS_ARCHIEVED', 3);
define('CLOSE_TICKET_TIME', 15); //15 days
define('ARCHIEVE_TICKET_TIME', 30); //30 days
define('SUPPORT_MESSAGE','support_reply');
define("SUPPORT_MEDIA_FILES", "media/companies/");
define('TICKET_ATTACHMENT_SIZE', 2097152);
define('CLOSE_TICKET', 'close_ticket');
define('GUEST_STATUS',json_encode(['Inactive','Active']));
define('REGISTRATION','registration'); //guest registration email template
define('ADMIN_EMAIL','m2ca@gmail.com');
define('GUEST_FORGOT_PASSWORD','guests_forgot_password'); // guest forgot password email template
define('SERTG_PACKAGE_ID',12);
define('SERTG_VELOCITY_FORM_ID',69);
define('SERTG_FORM_NAME','Velocity "Super RTG"');
define('INQUIRY_IMAGE','inquiry_image');
define('ENHANCE_IMAGE','enhance_image');
define('APP_TRANSUNION', 3);
define('APP_EXPERIAN', 1);
define('APP_EQUIFAX', 2);
define("LETTER_TYPES_NAME", json_encode(['1'=>'PI - Personal Identifiers',
'2'=>'MIQ - Multiple Inquiries',
'3'=>'DF - Data Furnisher',
'4'=>'N - Negative Items',
'5'=>'IQ - Single Item inquiries',
'6'=>'MN - Multiple Negative Items',
'7'=>'PIDF - Personal Identifiers/Data Furnisher',
'8'=>'L - Late Payment PAANL',
'9'=>'PB - Public Records',
'10'=>'CL - Collection Letter',
'11'=>'CHOFF - Charge Off',
'12'=>'SL - Student Loans',
'13'=>'STT Preset Letter',
'14'=>'AAAF - AAAF Letter',
'15'=>'SA - SAGESTREAM LETTER'
]));
define("EMAIL_EXPORT_TYPE", 1);
define("DROPBOX_EXPORT_TYPE", 2);
define("GOOGLE_DRIVE_EXPORT_TYPE", 3);
define("ZAPIER_EXPORT_TYPE", 4);
define("RINGCENTRAL_EXPORT_TYPE", 5);
define("LETTER_STREAM_TYPE", 6);
define("ONE_DRIVE_TYPE", 7);
define("MEMBER_EXPORT_OPTIONS", [
EMAIL_EXPORT_TYPE=>['name'=>'Email'],
DROPBOX_EXPORT_TYPE=>['name'=>'Dropbox'],
GOOGLE_DRIVE_EXPORT_TYPE=>['name'=>'Google Drive'],
ZAPIER_EXPORT_TYPE=>['name'=>'Zapier'],
RINGCENTRAL_EXPORT_TYPE =>['name'=>'Ring Central'],
LETTER_STREAM_TYPE =>['name'=>'Letter Stream'],
ONE_DRIVE_TYPE =>['name'=>'One Drive']
]);
// Ring central
define('RING_CENTRAL_SERVER', 'https://platform.ringcentral.com');
define('RING_CENTRAL_CLIENT_ID', '-Ux96uS4QpeTMTNhtZ2RiQ');
define('RING_CENTRAL_CLIENT_SECRET', 'dxt6akizSMeZXvJkDYqGuAoqGI88yTRTW3hPt9HAcDRw');
define('RING_CENTRAL_PASSWORD', 'NewFunnel100');
define('RING_CENTRAL_ACCOUNT_PHONE', '+16143685004');
define('RING_CENTRAL_EXTENSION', 101);
define('RING_CENTRAL_DATE_FORMAT', 'yyyy-mm-dd');
define('RING_CENTRAL_SMS_NUMBER', '+16143685004');
define('ADMIN_TO_MEMBER_EMAIL_TEMPLATE', 'admintomembers');
define('PROJECT_DIR_NAME','html');
define('CUSTOMER_USER_GROUP_ID',11);
define("MEMBER_ACTIVE_INACTIVE_LIST", [
''=>'All',
'1'=>'Member',
'2'=>'Not Member',
]);
define("MEMBER_EXPORT_CSV_HEADING", ['id','Username','Email','Member','Stripe Customer','Phone','Created on']);
/*m2cacademy@gmail.com, m2cacademy5@gmail.com, francine@m2cacademy.com, lila@m2cacademy.com, rajibcuetcse@gmail.com*/
define("GUEST_ADMIN_EMAIL",[
"m2cacademy@gmail.com",
"francine@m2cacademy.com",
"lila@m2cacademy.com",
"rajibcuetcse@gmail.com",
"kelly@m2cacademy.com"
]);
define("GUEST_ADMIN_REG_EMAIL_TEMPLATE","guest_registration_to_admin");
define("GUEST_DOWNLOAD_COUNT",5);
define("MEMBER_STATUS_LIST", [
'3'=>'All',
'1'=>'Active Member',
'2'=>'Inactive Member',
'4'=>'Trial User'
]);
define("MEMBER_CATEGORY_LIST", [
'3'=>'All',
'1'=>'Velocity activated members',
'2'=>'Velocity inactivated members'
]);
define('NEXT_SELECTION_NEAREST_DAY',3);
define("LETTER_TYPE_FOR_MAIL", [
'1'=>'First',
'2'=>'Second',
'3'=>'Third',
'4'=>'4th',
'5'=>'5th',
'6'=>'6th',
'7'=>'7th',
'8'=>'8th',
'9'=>'9th',
'10'=>'10th',
'11'=>'11th',
'12'=>'12th',
]);
define('AFFILIATE_USER_TYPE', 2);
define('AFFILIATE_TEMPLATE_USER_CREATION', 'affiliate_user_creation');
define('EPIC_VELOCITY_PACKAGE_ID',13);
define("EPIC_AND_SERTG_DROPDOWN", ['3'=>'Super RTG','1'=>'Velocity','2'=>'Epic Velocity']);
define('EPIC_VELOCITY_FORM_ID',78);
define("HTML_SAVE_COUNT", 20);
define('AUTOMATION_SCHEDULE_TYPES',['1'=>'One Time','2'=>'Recurring','3'=>'Pause','4'=>'Send Later']);
define('REPORT_SOURCE_TYPES',['1'=>'Identity IQ','2'=>"Privacy Guard",'3'=>'SmartCredit']);
define('IDENTITY_IQ_LINK', 'https://www.identityiq.com');
define('IDENTITY_IQ_LINK_FOR_MEMBER', 'http://bit.ly/IdentityIQSetup');
define('SMART_CREDIT_LINK', 'https://www.smartcredit.com/login/');
define('PRIVACY_GUARD_LINK', 'https://www.privacyguard.com/');
define('CRM_USER_VELOCITY_COUNT', 2);
define('UPLOAD_HTML_CONTROLLER_ID', 12);
define('CLIENT_CONTROLLER_ID', 3);
define('SUPPORT_CONTROLLER_ID', 13);
define('AFFILIATE_CONTROLLER_ID', 14);
define('EPICVELOCITY_CONTROLLER_ID', 15);
define('EMPLOYEE_TYPE', 1);
define('SKIP_CONTROLLER_IDS', [UPLOAD_HTML_CONTROLLER_ID,SUPPORT_CONTROLLER_ID]);
define('WAVE_1_PKG_HOW_TO_START_FORM_ID',58);
define('WAVE_2_PKG_HOW_TO_START_FORM_ID',80);
define('WAVE_1_PKG_HOW_TO_START_IMAGE_URL','images/wave_pkg_1_how_to_start.png');
define('WAVE_2_PKG_HOW_TO_START_IMAGE_URL','images/wave_pkg_2_how_to_start.png');
define('CRM_USER_MAX_INSERT', 2);
define('AUTOMATION_ACTION_TYPES',['1'=>'Delete all','2'=>'Make pause','3'=>'Make one time','4'=>'Make recurring','5'=>'Send Later']);
define('CHAT_AFFILIATE_USER', 1);
define('CHAT_CLIENT_USER', 3);
define('CHAT_MEMBER_USER', 2);
define('AGREEMENT_STATUS',['1'=>'Active','2'=>'Inactive']);
define('AUTHORIZE_DOT_NET_TYPE', 1);
define('AGREEMENT_PRIFIX', '[Prifix]');
define('AGREEMENT_CUSTOMERNAME', '[Customer Name]');
define('AGREEMENT_FIRSTNAME', '[Customer First Name]');
define('AGREEMENT_LASTNAME', '[Customer Last Name]');
define('AGREEMENT_SUFFIX', '[Suffix]');
define('AGREEMENT_SSN', '[Customer SSN]');
define('AGREEMENT_BIRTHDAY', '[Customer Birthday]');
define('AGREEMENT_ADDRESS', '[Customer Address]');
define('AGREEMENT_CITY_STATE_POSTCODE', '[Customer City State Postcode]');
define('AGREEMENT_PRICE_FOR_SERVICE', '[Price for Service]');
define('AGREEMENT_COMPANYNAME', '[Company Name]');
define('AGREEMENT_COMPANYADDRESS', '[Company Address]');
define('AGREEMENT_COMPANY_CITY_STATE_ZIP', '[Company City State Zip]');
define('AGREEMENT_COMPANYPHONE', '[Company Phone]');
define('AGREEMENT_COMPANYFAX', '[Company Fax]');
define('AGREEMENT_COMPANYWEBSITE', '[Company Website]');
define('AGREEMENT_ADMINEMAIL', '[Admin Email]');
define('AGREEMENT_TODAYDATE', '[Today Date]');
define('AGREEMENT_ACTION_TYPES', ['1'=>'Delete all','2'=>'Make all active','3'=>'Make all inactive']);
define('PUBLIC_RECORD_DROPDOWN_INFO', ['Chapter 7'=>'Chapter 7','Chapter 13'=>'Chapter 13','Chapter 11'=>'Chapter 11','Tax Lien'=>'Tax Lien']);
define('NEGATIVE_DROPDOWN_INFO', ['Late Payment'=>'Late Payment','Late Payment 30'=>'Late Payment 30','30/60'=>'30/60','30/60/90'=>'30/60/90','Charge-off'=>'Charge-off','Chargeoff/Collections'=>'Chargeoff/Collections','Collections'=>'Collections']);
define("PAYMENT_TYPES", [
'1'=>'Authorized.net',
]);
define('INVOICE_CONTROLLER_ID', 4);
define('PROFILE_IMAGE_SIZE',['height'=>600,'width'=>500]);
define('LOGO_SIZE',['height'=>1372,'width'=>2527]);
define('SUPER_RTG_ACCESS_PKG_ID', 14);
define('SETUP_MESSAGE_STATUS',['1'=>'Active','2'=>'Inactive']);
define('AUTHORIZE_DOT_NET_SIGN_UP_URL','https://account.authorize.net/'); // test
define('NMI_DOT_COM_SIGN_UP_URL','https://www.nmi.com/');
define('GUEST_REMINDER_EMAIL_TEMPLATE','guest_reminder_email');
define('CLIENT_MESSAGE_EMAIL_TEMPLATE','client_message_email');
//client upload medias type id
define('IDENTIFICATION_IMAGE_ID',1);
define('MAIL_DOC_IMAGE_ID',2);
define('SSN_IMAGE_ID',3);
define('STATE_PHOTO_IMAGE_ID',4);
define('NOTARIZED_LETTER_IMAGE_ID',5);
define('CR_REPORT_IMAGE_ID',6);
define('TROUBLE_MARK_FILE_IMAGE_ID',7);
define('ITEM_CHALLENGE_FILE_IMAGE_ID',8);
define('EPIC_VELOCITY_CLIENT_FILE_PATH','epicvelocity/letters/');
define('SOFTWARE_VERSION_STATUS',['1'=>'Active','2'=>'Inactive']);
define('SUPER_RTG_LS_FAX_PKG_ID',15);
define('AUTH_ID_FOR_DEPLOYMENT',[3,2]);
define('DEPLOYMENT_SUBMODULE_ID',3227);
define('SETUP_EMAIL_ACTION_TYPES', ['1'=>'Delete all','2'=>'Send Email']);
define('EMAIL_SENT_OUT_LIST_TYPE', 1);
define('EMAIL_TEMPLATE_LIST_TYPE', 2);
define('EMAIL_CAMPAIGN_LIST_TYPE', 3);
define('EMAIL_CAMPAIGN_SENTOUT_LIST_TYPE', 4);
define('SETUP_EMAIL_ACTION_LIST_TYPES', [
EMAIL_SENT_OUT_LIST_TYPE=>'Email Sent out List',
EMAIL_TEMPLATE_LIST_TYPE=>'Template List',
EMAIL_CAMPAIGN_LIST_TYPE=>'Campaign List',
EMAIL_CAMPAIGN_SENTOUT_LIST_TYPE=>'Campaign Sent out List',
]);
define('EMAIL_CAMPAIGN_STATUS', ['1'=>'Active','2'=>'Inactive']);
define('CRM_USER_RTG_ACCESS_COUNT',1);
define('CRA_ACCOUNT__ANALYSIS','[ACCOUNT_ANALYSIS]');
define('CRA_SUMMARY_HTML','[SUMMARY_HTML]');
define('CRA_CREDIT_SCORE','[CREDIT_SCORE]');
define('CRA_PUBLIC_RECORD','[PUBLIC_RECORD]');
define('CRA_INQUIRES','[INQUIRES]');
define('CRA_INQUIRES_COUNT','[INQUIRES_COUNT]');
define('CRA_CREDIT_UTILIZATION','[CREDIT_UTILIZATION]');
define('CRA_CREDIT_UTILIZATION_SUMMARY','[CREDIT_UTILIZATION_SUMMARY]');
define('CRA_DEROGETORY','[DEROGETORY]');
define('CRA_PUBLIC_RECORD_COUNT','[PUBLIC_RECORD_COUNT]');
define('CRA_PERSONAL_INFO','[PERSONAL_INFORMATION]');
//if(ENVIROMENT == 1){
// define('CLIENT_PORTAL_DOMAIN','https://www.secureclientportalaccess.com/');
//}else if(ENVIROMENT == 2){
// define('CLIENT_PORTAL_DOMAIN','https://test.readytogoletters.com/');
//}else{
// define('CLIENT_PORTAL_DOMAIN','http://localhost/rtgv4/');
//}
define('CLIENT_PORTAL_DOMAIN','https://www.secureclientportalaccess.com/');
define('CLIENT_PORTAL_FAVICON','images/favicon/lock_favicon.ico');
define('CLIENT_PORTAL_LOGO','/images/logo/secure_portal.svg');
define('CLIENT_PORTAL_DEFAULT_HEADER','Secure Client Portal');
define('CLIENT_PORTAL_DEFAULT_FOOTER','Secure SSL Area | This website is protected by secure portal © '.COPY_RIGHT_YEAR.' All rights reserved.');
define('UPGRADE_BUTTON_ALERT_TEXT', 'Please contact customer support for details to upgrade your account (614-547-6222)');
define('MAIN_DOMAIN_FOOTER','<strong>Secure SSL Area | This website is protected by secure portal © '.COPY_RIGHT_YEAR.' <a href="https://readytogoletters.com/" target="_blank">Clickletters/M2C Academy LLC</a>. </strong> All rights reserved.');
define('CREDIT_ANALYSIS_EMAIL_SUB','Congratulations! Your Credit Analysis is Ready');
define('CREDIT_ANALYSIS_EMAIL_BODY','Congratulations! Your Credit Analysis is Ready to View Below. Please contact us if you have any further questions');
define('CREDIT_ANALYZER_EMAIL_SUB','Congratulations! Your Credit Analyzer is Ready');
define('CREDIT_ANALYZER_EMAIL_BODY','Congratulations! Your Credit Analyzer is Ready to View Below. Please contact us if you have any further questions');
define('LIMITED_VERSION_EXCEED_MESSAGE','OOPS! You have exceeded your #_LIMITED_VERSION_CLIENT_COUNT_# Person Access Limit, If you would like to Add more People Please contact Us At 614-547-6222.');
define('SAME_AS_BY', 'same_as_by');
define('LIMITED_VERSION_PKG_ID', 16);
define('USER_TYPE_DROPDOW_LIST',['1'=>'Everyone','2'=>'Me','3'=>'Team Member','4'=>'Client']);
define('LIMITED_TIME_PKG_ID', 17);
define('LIMITED_TIME_PKG_MESSAGE',
'Your #_DAYS_#'
.' days has expired, you are now ready to upgrade to the '
. 'full version of Clickletters. Please contact our customer support '
. 'team at 614-547-622 for more assistance.');
define('CLIENT_ACTION_TYPES', ['1'=>'Delete all','2'=>'Make all Active','3'=>'Make all Inactive','4'=>'Make All Graduated/Completed','5'=>'Export All']);
define('AUTOMATION_WARRING',"This letter has automations and by deleting this account all automations will also be deleted do you want to continue ?");
define('LETTER_SET_LIST',[
'1'=>'SET 1',
'2'=>'SET 2',
'3'=>'SET 3',
'4'=>'SET 4',
'5'=>'SET 5',
'6'=>'SET 6',
'7'=>'SET 7',
'8'=>'SET 8',
'9'=>'SET 9',
'10'=>'SET 10',
'11'=>'SET 11',
'12'=>'SET 12',
]);
define('NMI_DOT_COM_TYPE', 2);
define('CLIENT_POPUPS_LIST',[
'1'=>'Image',
'2'=>'Video',
]);
define('MESSAGE_LENGTH',1000); // for client message limit.
define('LETTER_COUNT_MESSAGE','#_maxlength_# character limit, #_remlength_# remaining.');
define('EMPLOYEE_USER_TYPE_DROPDOW_LIST',['1'=>'Everyone','2'=>'Me','4'=>'Client']);
define('MEMBER_EMPLOYEE_MESSAGE_TO_CLIENT','Customer Support');
define('NEXT_DATE_INTERVAL_DAYS',['15'=>'15 days','21'=>'21 days','45'=>'45 days','65'=>'65 days']);
define('UPLOAD_MEDIA_SIZE', 1048576*3);//1MB = 1048576bytes
define('UPLOAD_MEDIA_WIDTH', 900);
define('UPLOAD_MEDIA_HEIGHT', 500);
define('UPLOAD_CLIENT_MEDIA_SIZE',UPLOAD_MEDIA_SIZE/1048576); // Size in MB
define('UPLOAD_MEDIA_MESSAGE', 'Please keep upload image size less than '.UPLOAD_CLIENT_MEDIA_SIZE.'MB and proportion '.UPLOAD_MEDIA_WIDTH.' X '.UPLOAD_MEDIA_HEIGHT);
define('NOTE_CHAR_LENGTH',2000);
define("LETTER_TYPES_SHORT_NAME", json_encode(['1'=>'PI',
'2'=>'MIQ',
'3'=>'DF',
'4'=>'N',
'5'=>'IQ',
'6'=>'MN',
'7'=>'PIDF',
'8'=>'L',
'9'=>'PB',
'10'=>'CL',
'11'=>'CHOFF',
'12'=>'SL',
'13'=>'STT'
]));
define('STT_PI_LETTER_SET',[
'13'=>'STT',
'14'=>'PI',
'1'=>'SET 1',
'2'=>'SET 2',
'3'=>'SET 3',
'4'=>'SET 4',
'5'=>'SET 5',
'6'=>'SET 6',
'7'=>'SET 7',
'8'=>'SET 8',
'9'=>'SET 9',
'10'=>'SET 10',
'11'=>'SET 11',
'12'=>'SET 12'
]);
define('CLIENT_SEND_EMAIL_ACTION_TYPES', ['1'=>'Delete all']);
define('QUEUE_MONITOR_USER_EMAIL',[
'rajibcuetcse@gmail.com'
]);
define('EPIVELOCITY_FOR_EMPLOYEES_PKG_ID',20);
define('RTG_FOR_EMPLOYEES_PKG_ID',21);
define('DATE_SELECTION_BY_DAYS',[
'15'=>'15 days',
'21'=>'21 days',
'30'=>'30 days',
'45'=>'45 days',
'60'=>'60 days',
'65'=>'65 days',
'90'=>'90 days',
'180'=>'180 days',
]);
define('LETTER_STREAM_SIGNUP_LINK','https://www.letterstream.com/ls/signup?api=m2ca&partner=');
define('LETTER_STREAM_API','https://www.letterstream.com/apis/'); //'https://secure.letterstream.com/apis/'
define('TRIAL_ACCOUNT_URL',APP_SERVER_HOST_URL."cmsusers/trialaccount/");
define('TRIAL_USER_PACKAGES',[
EPIC_VELOCITY_PACKAGE_ID,
//SUPER_RTG_LS_FAX_PKG_ID,
LIMITED_TIME_PKG_ID,
//SUPER_RTG_ACCESS_PKG_ID
]);
define('VIDEO_SETTINGS_STATUS',['1'=>'Active','0'=>'Inactive']);
define('ALREADY_CERTIFICATE_DOWNLOADED_MESSAGE','It looks like you have Already Created This Certificate, if you feel this is a mistake please contact support for more assistance at support@clickletters.com.');
define('ALREADY_TSHIRT_ORDERED_MESSAGE','You already did this. Please contact support for more assistance at support@clickletters.com.');
define('NO_REPLY_EMAIL','no-reply@readytogoletters.com');
define('TSHIRT_SIZES',[
'S'=>'Small',
'M'=>'Medium',
'L'=>'Large',
'XL'=>'Extra Large',
'XXL'=>'Extra Extra Large',
]);
define('ADMIN_IDS',[1,2,1477]);
define('NO_IMAGE_FILE_PATH',APP_SERVER_HOST_URL.'rtgv3/images/nopreview-available.jpg');
// these all are from controllers table id
define('EMPLOYEE_COMPLETED_MESSENGER_BUTTON_ID',22);
define('CLIENT_LIST_ACTION_ID',23);
define('DOWNLOAD_TEMPLATE_BUTTON_ID',24);
define('CLIENT_PORTAL_BUTTON_ID',25);
define('CLIENT_EDIT_PANEL_ID',26);
define('CLIENT_DASHBOARD_PANEL_ID',27);
define('SEND_EMAIL_POPUP_ID',28);
define('UPLOAD_MEDIA_PANEL_ID',29);
define('PROJECT_CONTROLLER_ID',2);
define('AGGREMENT_CONTROLLER_ID',2);
define('SUBSCRIPTION_CONTROLLER_ID',8);
define('CALENDER_CONTROLLER_ID',10);
define('SETUP_MEGGAGE_CONTROLLER_ID',20);
define('EVERYTHING_CONTROLLER_ID',19);
define('MEMBER_EMAIL_SENT_CONTROLLER_ID',21);
define('PAYMENT_SETUP_CONTROLLER_ID',18);
define('CREDIT_REPORT_STATUS_CONTROLLER_ID',16);
define('SECURE_PORTAL_CONTROLLER_ID',30);
define('TEAM_MESSAGING_CONTROLLER_ID',31);
define('CRMUSER_CONTROLLER_ID',11);
define('EPLOYEE_ACCESS_CONTROLLER_ID',32);
define('EPLOYEE_MESSAGING_CONTROLLER_ID',33);
define('STAISTICS_CONTROLLER_ID',1);
define('SAVE_DOWNLOAD_PRINT_LETTER_CONTROLLER_ID',34);
define('EDIT_REMINDER_TASKS_CONTROLLER_ID',35);
define('EDIT_CLIENT_INFO_CONTROLLER_ID',36);
define('EDIT_CLIENT_CREDIT_REPORT_CONTROLLER_ID',37);
define('ADD_CLIENT_CONTROLLER_ID',39);
// these all are from controllers table id
define('LETTER_DELETION_DAYS',30);
define("IQ_CALL_HISTORY_STATUS",json_encode(['All','Ip Blocked','Success'])); //2=Success,1=Ip Blocked,0=All
define("IQCALLHISTORY_EXPORT_CSV_HEADING", ['Id','Ip','Port','Page','Status Code','Status','Created on']);
define("DELETED_MEMBER_STATUS",[3,4]); //1= active , 2= in_active,3,4 = deleted member
define("DESTINATION_DIRECTORY", ROOT . DS . 'webrootcopy' . DS);
define("SOURCE_DIRECTORY", WWW_ROOT);
define("SERVER",0);
define("MAX_BANK_CLIENT_IDS",[19665,19657,37110,39574]);
?>

326
config/app.default.php Normal file
View File

@@ -0,0 +1,326 @@
<?php
return [
/**
* Debug Level:
*
* Production Mode:
* false: No error messages, errors, or warnings shown.
*
* Development Mode:
* true: Errors and warnings shown.
*/
'debug' => true,
/**
* Configure basic information about the application.
*
* - namespace - The namespace to find app classes under.
* - encoding - The encoding used for HTML + database connections.
* - base - The base directory the app resides in. If false this
* will be auto detected.
* - dir - Name of app directory.
* - webroot - The webroot directory.
* - wwwRoot - The file path to webroot.
* - baseUrl - To configure CakePHP to *not* use mod_rewrite and to
* use CakePHP pretty URLs, remove these .htaccess
* files:
* /.htaccess
* /webroot/.htaccess
* And uncomment the baseUrl key below.
* - fullBaseUrl - A base URL to use for absolute links.
* - imageBaseUrl - Web path to the public images directory under webroot.
* - cssBaseUrl - Web path to the public css directory under webroot.
* - jsBaseUrl - Web path to the public js directory under webroot.
* - paths - Configure paths for non class based resources. Supports the
* `plugins`, `templates`, `locales` subkeys, which allow the definition of
* paths for plugins, view templates and locale files respectively.
*/
'App' => [
'namespace' => 'App',
'encoding' => 'UTF-8',
'base' => false,
'dir' => 'src',
'webroot' => 'webroot',
'wwwRoot' => WWW_ROOT,
// 'baseUrl' => env('SCRIPT_NAME'),
'fullBaseUrl' => false,
'imageBaseUrl' => 'img/',
'cssBaseUrl' => 'css/',
'jsBaseUrl' => 'js/',
'paths' => [
'plugins' => [ROOT . DS . 'plugins' . DS],
'templates' => [APP . 'Template' . DS],
'locales' => [APP . 'Locale' . DS],
],
],
/**
* Security and encryption configuration
*
* - salt - A random string used in security hashing methods.
* The salt value is also used as the encryption key.
* You should treat it as extremely sensitive data.
*/
'Security' => [
'salt' => '__SALT__',
],
/**
* Apply timestamps with the last modified time to static assets (js, css, images).
* Will append a querystring parameter containing the time the file was modified.
* This is useful for busting browser caches.
*
* Set to true to apply timestamps when debug is true. Set to 'force' to always
* enable timestamping regardless of debug value.
*/
'Asset' => [
// 'timestamp' => true,
],
/**
* Configure the cache adapters.
*/
'Cache' => [
'default' => [
'className' => 'File',
'path' => CACHE,
],
/**
* Configure the cache used for general framework caching.
* Translation cache files are stored with this configuration.
*/
'_cake_core_' => [
'className' => 'File',
'prefix' => 'myapp_cake_core_',
'path' => CACHE . 'persistent/',
'serialize' => true,
'duration' => '+2 minutes',
],
/**
* Configure the cache for model and datasource caches. This cache
* configuration is used to store schema descriptions, and table listings
* in connections.
*/
'_cake_model_' => [
'className' => 'File',
'prefix' => 'myapp_cake_model_',
'path' => CACHE . 'models/',
'serialize' => true,
'duration' => '+2 minutes',
],
],
/**
* Configure the Error and Exception handlers used by your application.
*
* By default errors are displayed using Debugger, when debug is true and logged
* by Cake\Log\Log when debug is false.
*
* In CLI environments exceptions will be printed to stderr with a backtrace.
* In web environments an HTML page will be displayed for the exception.
* With debug true, framework errors like Missing Controller will be displayed.
* When debug is false, framework errors will be coerced into generic HTTP errors.
*
* Options:
*
* - `errorLevel` - int - The level of errors you are interested in capturing.
* - `trace` - boolean - Whether or not backtraces should be included in
* logged errors/exceptions.
* - `log` - boolean - Whether or not you want exceptions logged.
* - `exceptionRenderer` - string - The class responsible for rendering
* uncaught exceptions. If you choose a custom class you should place
* the file for that class in src/Error. This class needs to implement a
* render method.
* - `skipLog` - array - List of exceptions to skip for logging. Exceptions that
* extend one of the listed exceptions will also be skipped for logging.
* E.g.:
* `'skipLog' => ['Cake\Network\Exception\NotFoundException', 'Cake\Network\Exception\UnauthorizedException']`
*/
'Error' => [
'errorLevel' => E_ALL & ~E_DEPRECATED,
'exceptionRenderer' => 'Cake\Error\ExceptionRenderer',
'skipLog' => [],
'log' => true,
'trace' => true,
],
/**
* Email configuration.
*
* By defining transports separately from delivery profiles you can easily
* re-use transport configuration across multiple profiles.
*
* You can specify multiple configurations for production, development and
* testing.
*
* Each transport needs a `className`. Valid options are as follows:
*
* Mail - Send using PHP mail function
* Smtp - Send using SMTP
* Debug - Do not send the email, just return the result
*
* You can add custom transports (or override existing transports) by adding the
* appropriate file to src/Mailer/Transport. Transports should be named
* 'YourTransport.php', where 'Your' is the name of the transport.
*/
'EmailTransport' => [
'default' => [
'className' => 'Mail',
// The following keys are used in SMTP transports
'host' => 'localhost',
'port' => 25,
'timeout' => 30,
'username' => 'root',
'password' => '',
'client' => null,
'tls' => null,
],
],
/**
* Email delivery profiles
*
* Delivery profiles allow you to predefine various properties about email
* messages from your application and give the settings a name. This saves
* duplication across your application and makes maintenance and development
* easier. Each profile accepts a number of keys. See `Cake\Network\Email\Email`
* for more information.
*/
'Email' => [
'default' => [
'transport' => 'default',
'from' => 'you@localhost',
//'charset' => 'utf-8',
//'headerCharset' => 'utf-8',
],
],
/**
* Connection information used by the ORM to connect
* to your application's datastores.
* Drivers include Mysql Postgres Sqlite Sqlserver
* See vendor\cakephp\cakephp\src\Database\Driver for complete list
*/
'Datasources' => [
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'nonstandard_port_number',
'username' => 'my_app',
'password' => 'secret',
'database' => 'my_app',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
'log' => false,
/**
* Set identifier quoting to true if you are using reserved words or
* special characters in your table or column names. Enabling this
* setting will result in queries built using the Query Builder having
* identifiers quoted when creating SQL. It should be noted that this
* decreases performance because each query needs to be traversed and
* manipulated before being executed.
*/
'quoteIdentifiers' => false,
/**
* During development, if using MySQL < 5.6, uncommenting the
* following line could boost the speed at which schema metadata is
* fetched from the database. It can also be set directly with the
* mysql configuration directive 'innodb_stats_on_metadata = 0'
* which is the recommended value in production environments
*/
//'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
],
/**
* The test connection is used during the test suite.
*/
'test' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
//'port' => 'nonstandard_port_number',
'username' => 'my_app',
'password' => 'secret',
'database' => 'test_myapp',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
'quoteIdentifiers' => false,
'log' => false,
//'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
],
],
/**
* Configures logging options
*/
'Log' => [
'debug' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'debug',
'levels' => ['notice', 'info', 'debug'],
],
'error' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'error',
'levels' => ['warning', 'error', 'critical', 'alert', 'emergency'],
],
],
/**
* Session configuration.
*
* Contains an array of settings to use for session configuration. The
* `defaults` key is used to define a default preset to use for sessions, any
* settings declared here will override the settings of the default config.
*
* ## Options
*
* - `cookie` - The name of the cookie to use. Defaults to 'CAKEPHP'.
* - `cookiePath` - The url path for which session cookie is set. Maps to the
* `session.cookie_path` php.ini config. Defaults to base path of app.
* - `timeout` - The time in minutes the session should be valid for.
* Pass 0 to disable checking timeout.
* Please note that php.ini's session.gc_maxlifetime must be equal to or greater
* than the largest Session['timeout'] in all served websites for it to have the
* desired effect.
* - `defaults` - The default configuration set to use as a basis for your session.
* There are four built-in options: php, cake, cache, database.
* - `handler` - Can be used to enable a custom session handler. Expects an
* array with at least the `engine` key, being the name of the Session engine
* class to use for managing the session. CakePHP bundles the `CacheSession`
* and `DatabaseSession` engines.
* - `ini` - An associative array of additional ini values to set.
*
* The built-in `defaults` options are:
*
* - 'php' - Uses settings defined in your php.ini.
* - 'cake' - Saves session files in CakePHP's /tmp directory.
* - 'database' - Uses CakePHP's database sessions.
* - 'cache' - Use the Cache class to save sessions.
*
* To define a custom session handler, save it at src/Network/Session/<name>.php.
* Make sure the class implements PHP's `SessionHandlerInterface` and set
* Session.handler to <name>
*
* To use database sessions, load the SQL file located at config/Schema/sessions.sql
*/
'Session' => [
'defaults' => 'php',
],
];

388
config/app.php Normal file
View File

@@ -0,0 +1,388 @@
<?php
return [
/**
* Debug Level:
*
* Production Mode:
* false: No error messages, errors, or warnings shown.
*
* Development Mode:
* true: Errors and warnings shown.
*/
'debug' => APP_CONFIG_DEBUG_MODE,
/**
* Configure basic information about the application.
*
* - namespace - The namespace to find app classes under.
* - encoding - The encoding used for HTML + database connections.
* - base - The base directory the app resides in. If false this
* will be auto detected.
* - dir - Name of app directory.
* - webroot - The webroot directory.
* - wwwRoot - The file path to webroot.
* - baseUrl - To configure CakePHP to *not* use mod_rewrite and to
* use CakePHP pretty URLs, remove these .htaccess
* files:
* /.htaccess
* /webroot/.htaccess
* And uncomment the baseUrl key below.
* - fullBaseUrl - A base URL to use for absolute links.
* - imageBaseUrl - Web path to the public images directory under webroot.
* - cssBaseUrl - Web path to the public css directory under webroot.
* - jsBaseUrl - Web path to the public js directory under webroot.
* - paths - Configure paths for non class based resources. Supports the
* `plugins`, `templates`, `locales` subkeys, which allow the definition of
* paths for plugins, view templates and locale files respectively.
*/
'App' => [
'namespace' => 'App',
'encoding' => 'UTF-8',
'base' => false,
'dir' => 'src',
'webroot' => 'webroot',
'wwwRoot' => WWW_ROOT,
// 'baseUrl' => env('SCRIPT_NAME'),
'fullBaseUrl' => false,
'imageBaseUrl' => 'img/',
'cssBaseUrl' => 'css/',
'jsBaseUrl' => 'js/',
'paths' => [
'plugins' => [ROOT . DS . 'plugins' . DS],
'templates' => [APP . 'Template' . DS],
'locales' => [APP . 'Locale' . DS],
],
],
/**
* Security and encryption configuration
*
* - salt - A random string used in security hashing methods.
* The salt value is also used as the encryption key.
* You should treat it as extremely sensitive data.
*/
'Security' => [
'salt' => 'a26ac8c6a0c4277c3df4251dce80897b36ac331293a7dcdf220ca307b26e897c',
],
/**
* Apply timestamps with the last modified time to static assets (js, css, images).
* Will append a querystring parameter containing the time the file was modified.
* This is useful for busting browser caches.
*
* Set to true to apply timestamps when debug is true. Set to 'force' to always
* enable timestamping regardless of debug value.
*/
'Asset' => [
// 'timestamp' => true,
],
/**
* Configure the cache adapters.
*/
'Cache' => [
'default' => [
'className' => DEFAULT_CACHE,
'path' => CACHE,
],
'redis'=>[
'port'=>REDIS_PORT,
'duration'=>REDIS_DURATION,
'host '=>REDIS_HOST,
'database'=>REDIS_DB,
'password'=>REDIS_PASSWORD,
'persistent '=>REDIS_PERSISTENT,
'timeout'=>REDIS_TIMEOUT,
'unix_socket'=>REDIS_UNIX_SOCKET,
],
/**
* Configure the cache used for general framework caching.
* Translation cache files are stored with this configuration.
*/
'_cake_core_' => [
'className' => 'File',
'prefix' => 'myapp_cake_core_',
'path' => CACHE . 'persistent/',
'serialize' => true,
'duration' => '+2 minutes',
],
/**
* Configure the cache for model and datasource caches. This cache
* configuration is used to store schema descriptions, and table listings
* in connections.
*/
'_cake_model_' => [
'className' => 'File',
'prefix' => 'myapp_cake_model_',
'path' => CACHE . 'models/',
'serialize' => true,
'duration' => '+2 minutes',
],
],
/**
* Configure the Error and Exception handlers used by your application.
*
* By default errors are displayed using Debugger, when debug is true and logged
* by Cake\Log\Log when debug is false.
*
* In CLI environments exceptions will be printed to stderr with a backtrace.
* In web environments an HTML page will be displayed for the exception.
* With debug true, framework errors like Missing Controller will be displayed.
* When debug is false, framework errors will be coerced into generic HTTP errors.
*
* Options:
*
* - `errorLevel` - int - The level of errors you are interested in capturing.
* - `trace` - boolean - Whether or not backtraces should be included in
* logged errors/exceptions.
* - `log` - boolean - Whether or not you want exceptions logged.
* - `exceptionRenderer` - string - The class responsible for rendering
* uncaught exceptions. If you choose a custom class you should place
* the file for that class in src/Error. This class needs to implement a
* render method.
* - `skipLog` - array - List of exceptions to skip for logging. Exceptions that
* extend one of the listed exceptions will also be skipped for logging.
* E.g.:
* `'skipLog' => ['Cake\Network\Exception\NotFoundException', 'Cake\Network\Exception\UnauthorizedException']`
*/
'Error' => [
'errorLevel' => '',
'exceptionRenderer' => 'Cake\Error\ExceptionRenderer',
'skipLog' => [],
'log' => true,
'trace' => true,
],
/**
* Email configuration.
*
* By defining transports separately from delivery profiles you can easily
* re-use transport configuration across multiple profiles.
*
* You can specify multiple configurations for production, development and
* testing.
*
* Each transport needs a `className`. Valid options are as follows:
*
* Mail - Send using PHP mail function
* Smtp - Send using SMTP
* Debug - Do not send the email, just return the result
*
* You can add custom transports (or override existing transports) by adding the
* appropriate file to src/Mailer/Transport. Transports should be named
* 'YourTransport.php', where 'Your' is the name of the transport.
*/
'EmailTransport' => [
'default' => [
'className' => APP_EMAIL_CLASS,
'host' =>APP_SMTP_HOST,
'port' => APP_SMTP_PORT,
'timeout' => APP_SMTP_TIMEOUT,
'username' => APP_SMTP_USERNAME,
'password' => APP_SMTP_PASSWORD,
'tls' => APP_SMTP_IS_TLS,
],
'Debug' => [
'className' => 'Debug'
]
],
/**
* Email delivery profiles
*
* Delivery profiles allow you to predefine various properties about email
* messages from your application and give the settings a name. This saves
* duplication across your application and makes maintenance and development
* easier. Each profile accepts a number of keys. See `Cake\Network\Email\Email`
* for more information.
*/
'Email' => [
'default' => [
'transport' => 'default',
'from' => 'cloudhighttest@gmail.com',
//'charset' => 'utf-8',
//'headerCharset' => 'utf-8',
],
],
/**
* Connection information used by the ORM to connect
* to your application's datastores.
* Drivers include Mysql Postgres Sqlite Sqlserver
* See vendor\cakephp\cakephp\src\Database\Driver for complete list
*/
'Datasources' => [
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => APP_DB_IS_PERSISTENT,
'host' => APP_DB_HOST,
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'nonstandard_port_number',
'username' => APP_DB_USERNAME,
'password' => APP_DB_PASSWORD,
'database' => APP_DB_DATABASE_NAME,
'encoding' => APP_DB_ENCODING,
'timezone' => 'UTC',
'cacheMetadata' => true,
'log' => true,
/**
* Set identifier quoting to true if you are using reserved words or
* special characters in your table or column names. Enabling this
* setting will result in queries built using the Query Builder having
* identifiers quoted when creating SQL. It should be noted that this
* decreases performance because each query needs to be traversed and
* manipulated before being executed.
*/
'quoteIdentifiers' => false,
/**
* During development, if using MySQL < 5.6, uncommenting the
* following line could boost the speed at which schema metadata is
* fetched from the database. It can also be set directly with the
* mysql configuration directive 'innodb_stats_on_metadata = 0'
* which is the recommended value in production environments
*/
//'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
],
'mybb' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => APP_DB_IS_PERSISTENT,
'host' => APP_DB_HOST,
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'nonstandard_port_number',
'username' => APP_DB_USERNAME,
'password' => APP_DB_PASSWORD,
'database' => MYBB_DB_NAME,
'encoding' => APP_DB_ENCODING,
'timezone' => 'UTC',
'cacheMetadata' => true,
'log' => true,
/**
* Set identifier quoting to true if you are using reserved words or
* special characters in your table or column names. Enabling this
* setting will result in queries built using the Query Builder having
* identifiers quoted when creating SQL. It should be noted that this
* decreases performance because each query needs to be traversed and
* manipulated before being executed.
*/
'quoteIdentifiers' => false,
/**
* During development, if using MySQL < 5.6, uncommenting the
* following line could boost the speed at which schema metadata is
* fetched from the database. It can also be set directly with the
* mysql configuration directive 'innodb_stats_on_metadata = 0'
* which is the recommended value in production environments
*/
//'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
],
/**
* The test connection is used during the test suite.
*/
'test' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
//'port' => 'nonstandard_port_number',
'username' => 'root',
'password' => '',
'database' => 'pdfgenerator',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
'quoteIdentifiers' => false,
//'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
],
],
/**
* Configures logging options
*/
'Log' => [
'debug' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'debug-'.date('Y-m-d'),
'levels' => ['notice', 'info', 'debug'],
],
'error' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'error-'.date('Y-m-d'),
'levels' => ['warning', 'error', 'critical', 'alert', 'emergency'],
],'cli_info' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'info-'.date('Y-m-d'),
'levels' => [ 'info'],
],
],
/**
* Session configuration.
*
* Contains an array of settings to use for session configuration. The
* `defaults` key is used to define a default preset to use for sessions, any
* settings declared here will override the settings of the default config.
*
* ## Options
*
* - `cookie` - The name of the cookie to use. Defaults to 'CAKEPHP'.
* - `cookiePath` - The url path for which session cookie is set. Maps to the
* `session.cookie_path` php.ini config. Defaults to base path of app.
* - `timeout` - The time in minutes the session should be valid for.
* Pass 0 to disable checking timeout.
* Please note that php.ini's session.gc_maxlifetime must be equal to or greater
* than the largest Session['timeout'] in all served websites for it to have the
* desired effect.
* - `defaults` - The default configuration set to use as a basis for your session.
* There are four built-in options: php, cake, cache, database.
* - `handler` - Can be used to enable a custom session handler. Expects an
* array with at least the `engine` key, being the name of the Session engine
* class to use for managing the session. CakePHP bundles the `CacheSession`
* and `DatabaseSession` engines.
* - `ini` - An associative array of additional ini values to set.
*
* The built-in `defaults` options are:
*
* - 'php' - Uses settings defined in your php.ini.
* - 'cake' - Saves session files in CakePHP's /tmp directory.
* - 'database' - Uses CakePHP's database sessions.
* - 'cache' - Use the Cache class to save sessions.
*
* To define a custom session handler, save it at src/Network/Session/<name>.php.
* Make sure the class implements PHP's `SessionHandlerInterface` and set
* Session.handler to <name>
*
* To use database sessions, load the SQL file located at config/Schema/sessions.sql
*/
'Session' => [
'defaults' => 'php',
'timeout'=>60//in minutes
],
];

211
config/bootstrap.php Normal file
View File

@@ -0,0 +1,211 @@
<?php
/**
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @since 0.10.8
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
/**
* Configure paths required to find CakePHP + general filepath
* constants
*/
require __DIR__ . '/paths.php';
// Use composer to load the autoloader.
require ROOT . DS . 'vendor' . DS . 'autoload.php';
require ROOT . DS . 'config' . DS . 'app.settings.php';
require ROOT . DS . 'config' . DS . 'app.constant.php';
//echo "yyy";exit;
/**
* Bootstrap CakePHP.
*
* Does the various bits of setup that CakePHP needs to do.
* This includes:
*
* - Registering the CakePHP autoloader.
* - Setting the default application paths.
*/
require CORE_PATH . 'config' . DS . 'bootstrap.php';
//echo "mmm";exit;
// You can remove this if you are confident you have intl installed.
if (!extension_loaded('intl')) {
trigger_error('You must enable the intl extension to use CakePHP.', E_USER_ERROR);
}
//echo "hello";exit;
use Cake\Cache\Cache;
use Cake\Console\ConsoleErrorHandler;
use Cake\Core\App;
use Cake\Core\Configure;
use Cake\Core\Configure\Engine\PhpConfig;
use Cake\Core\Plugin;
use Cake\Database\Type;
use Cake\Datasource\ConnectionManager;
use Cake\Error\ErrorHandler;
use Cake\Log\Log;
use Cake\Network\Email\Email;
use Cake\Network\Request;
use Cake\Routing\DispatcherFactory;
use Cake\Utility\Inflector;
use Cake\Utility\Security;
/**
* Read configuration file and inject configuration into various
* CakePHP classes.
*
* By default there is only one configuration file. It is often a good
* idea to create multiple configuration files, and separate the configuration
* that changes from configuration that does not. This makes deployment simpler.
*/
try {
Configure::config('default', new PhpConfig());
Configure::load('app', 'default', false);
} catch (\Exception $e) {
die($e->getMessage() . "\n");
}
// Load an environment local configuration file.
// You can use a file like app_local.php to provide local overrides to your
// shared configuration.
//Configure::load('app_local', 'default');
// When debug = false the metadata cache should last
// for a very very long time, as we don't want
// to refresh the cache while users are doing requests.
if (!Configure::read('debug')) {
Configure::write('Cache._cake_model_.duration', '+1 years');
Configure::write('Cache._cake_core_.duration', '+1 years');
}
/**
* Set server timezone to UTC. You can change it to another timezone of your
* choice but using UTC makes time calculations / conversions easier.
*/
date_default_timezone_set('UTC');
/**
* Configure the mbstring extension to use the correct encoding.
*/
mb_internal_encoding(Configure::read('App.encoding'));
/**
* Set the default locale. This controls how dates, number and currency is
* formatted and sets the default language to use for translations.
*/
ini_set('intl.default_locale', 'en_US');
/**
* Register application error and exception handlers.
*/
$isCli = php_sapi_name() === 'cli';
if ($isCli) {
(new ConsoleErrorHandler(Configure::read('Error')))->register();
} else {
(new ErrorHandler(Configure::read('Error')))->register();
}
// Include the CLI bootstrap overrides.
if ($isCli) {
require __DIR__ . '/bootstrap_cli.php';
}
/**
* Set the full base URL.
* This URL is used as the base of all absolute links.
*
* If you define fullBaseUrl in your config file you can remove this.
*/
if (!Configure::read('App.fullBaseUrl')) {
$s = null;
if (env('HTTPS')) {
$s = 's';
}
$httpHost = env('HTTP_HOST');
if (isset($httpHost)) {
Configure::write('App.fullBaseUrl', 'http' . $s . '://' . $httpHost);
}
unset($httpHost, $s);
}
Cache::config(Configure::consume('Cache'));
ConnectionManager::config(Configure::consume('Datasources'));
Email::configTransport(Configure::consume('EmailTransport'));
Email::config(Configure::consume('Email'));
Log::config(Configure::consume('Log'));
Security::salt(Configure::consume('Security.salt'));
//default language
ini_set('intl.default_locale', 'en_US');
/**
* The default crypto extension in 3.0 is OpenSSL.
* If you are migrating from 2.x uncomment this code to
* use a more compatible Mcrypt based implementation
*/
// Security::engine(new \Cake\Utility\Crypto\Mcrypt());
/**
* Setup detectors for mobile and tablet.
*/
Request::addDetector('mobile', function ($request) {
$detector = new \Detection\MobileDetect();
return $detector->isMobile();
});
Request::addDetector('tablet', function ($request) {
$detector = new \Detection\MobileDetect();
return $detector->isTablet();
});
/**
* Custom Inflector rules, can be set to correctly pluralize or singularize
* table, model, controller names or whatever other string is passed to the
* inflection functions.
*
* Inflector::rules('plural', ['/^(inflect)or$/i' => '\1ables']);
* Inflector::rules('irregular', ['red' => 'redlings']);
* Inflector::rules('uninflected', ['dontinflectme']);
* Inflector::rules('transliteration', ['/å/' => 'aa']);
*/
/**
* Plugins need to be loaded manually, you can either load them one by one or all of them in a single call
* Uncomment one of the lines below, as you need. make sure you read the documentation on Plugin to use more
* advanced ways of loading plugins
*
* Plugin::loadAll(); // Loads all plugins at once
* Plugin::load('Migrations'); //Loads a single plugin named Migrations
*
*/
Plugin::load('Migrations');
// Only try to load DebugKit in development mode
// Debug Kit should not be installed on a production system
if (Configure::read('debug')) {
Plugin::load('DebugKit', ['bootstrap' => true]);
}
/**
* Connect middleware/dispatcher filters.
*/
DispatcherFactory::add('Asset');
DispatcherFactory::add('Routing');
DispatcherFactory::add('ControllerFactory');
/**
* Enable default locale format parsing.
* This is needed for matching the auto-localized string output of Time() class when parsing dates.
*/
Type::build('datetime')->useLocaleParser();

33
config/bootstrap_cli.php Normal file
View File

@@ -0,0 +1,33 @@
<?php
/**
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @since 3.0.0
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
use Cake\Core\Configure;
use Cake\Core\Exception\MissingPluginException;
use Cake\Core\Plugin;
/**
* Additional bootstrapping and configuration for CLI environments should
* be put here.
*/
// Set logs to different files so they don't have permission conflicts.
Configure::write('Log.cli_info.file', 'cli-info-'.date('Y-m-d'));
Configure::write('Log.debug.file', 'cli-debug');
Configure::write('Log.error.file', 'cli-error-'.date('Y-m-d'));
try {
Plugin::load('Bake');
} catch (MissingPluginException $e) {
// Do not halt if the plugin is missing
}

40
config/dynamic_domain.php Normal file
View File

@@ -0,0 +1,40 @@
<?php
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
if (isset($_SERVER['HTTP_REFERER'])) {
$host_dynamic_array = parse_url($_SERVER['HTTP_REFERER']);
$host_dynamic = $host_dynamic_array["scheme"] . "://" . $host_dynamic_array["host"] . "/";
define("APP_SERVER_HOST_URL", $host_dynamic);
define("SITE_DOMAIN", $host_dynamic_array["host"]);
} else if (isset($_SERVER['HTTP_HOST'])) {
if ($_SERVER['HTTP_HOST'] == APP_DEFAULT_DOMAIN) {
define("APP_SERVER_HOST_URL", "https://" . APP_DEFAULT_DOMAIN . "/");
define('SITE_DOMAIN', APP_DEFAULT_DOMAIN);
} else {
$ssl = "http://";
if(ENVIROMENT == 1){
$ssl = "https://";
}
$host_dynamic = $ssl. $_SERVER['HTTP_HOST'] . "/";
define("APP_SERVER_HOST_URL", $host_dynamic);
define('SITE_DOMAIN', $_SERVER['HTTP_HOST']);
}
}else{
define("APP_SERVER_HOST_URL", APP_SERVER_HOST_URL_DEFAULT);
define('SITE_DOMAIN', APP_DEFAULT_DOMAIN);
}

85
config/paths.php Normal file
View File

@@ -0,0 +1,85 @@
<?php
/**
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @since 3.0.0
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
*/
/**
* Use the DS to separate the directories in other defines
*/
if (!defined('DS')) {
define('DS', DIRECTORY_SEPARATOR);
}
/**
* These defines should only be edited if you have cake installed in
* a directory layout other than the way it is distributed.
* When using custom settings be sure to use the DS and do not add a trailing DS.
*/
/**
* The full path to the directory which holds "src", WITHOUT a trailing DS.
*/
define('ROOT', dirname(__DIR__));
/**
* The actual directory name for the application directory. Normally
* named 'src'.
*/
define('APP_DIR', 'src');
/**
* Path to the application's directory.
*/
define('APP', ROOT . DS . APP_DIR . DS);
/**
* Path to the config directory.
*/
define('CONFIG', ROOT . DS . 'config' . DS);
/**
* File path to the webroot directory.
*/
define('WWW_ROOT', ROOT . DS . 'webroot' . DS);
/**
* Path to the tests directory.
*/
define('TESTS', ROOT . DS . 'tests' . DS);
/**
* Path to the temporary files directory.
*/
define('TMP', ROOT . DS . 'tmp' . DS);
/**
* Path to the logs directory.
*/
define('LOGS', ROOT . DS . 'logs' . DS);
/**
* Path to the cache files directory. It can be shared between hosts in a multi-server setup.
*/
define('CACHE', TMP . 'cache' . DS);
/**
* The absolute path to the "cake" directory, WITHOUT a trailing DS.
*
* CakePHP should always be installed with composer, so look there.
*/
define('CAKE_CORE_INCLUDE_PATH', ROOT . DS . 'vendor' . DS . 'cakephp' . DS . 'cakephp');
/**
* Path to the cake directory.
*/
define('CORE_PATH', CAKE_CORE_INCLUDE_PATH . DS);
define('CAKE', CORE_PATH . 'src' . DS);

167
config/routes.php Normal file
View File

@@ -0,0 +1,167 @@
<?php
/**
* Routes configuration
*
* In this file, you set up routes to your controllers and their actions.
* Routes are very important mechanism that allows you to freely connect
* different URLs to chosen controllers and their actions (functions).
*
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
use Cake\Core\Plugin;
use Cake\Routing\Router;
/**
* The default class to use for all routes
*
* The following route classes are supplied with CakePHP and are appropriate
* to set as the default:
*
* - Route
* - InflectedRoute
* - DashedRoute
*
* If no call is made to `Router::defaultRouteClass()`, the class used is
* `Route` (`Cake\Routing\Route\Route`)
*
* Note that `Route` does not do any inflections on URLs which will result in
* inconsistently cased URLs when used with `:plugin`, `:controller` and
* `:action` markers.
*
*/
Router::defaultRouteClass('DashedRoute');
Router::scope('/', function ($routes) {
/**
* Here, we are connecting '/' (base path) to a controller called 'Pages',
* its action called 'display', and we pass a param to select the view file
* to use (in this case, src/Template/Pages/home.ctp)...
*/
$url = $_SERVER['REQUEST_URI'];
$exploded_url = explode("/", $url);
$params_array = [];
$cmsuser_id = 0;
$client_id = 0;
if(!empty($exploded_url)){
foreach ($exploded_url as $ex_value){
if($ex_value > 0){
$params_array[] = $ex_value;
}
}
}
if(isset($params_array[0]) && $params_array[0] > 0){
$cmsuser_id = $params_array[0];
}
if(isset($params_array[1]) && $params_array[1] > 0){
$client_id = $params_array[1];
if(isset($_SESSION['userType']) && $_SESSION['userType'] == 1){
return $this->redirect(['controller'=>'Client','action'=>'edit',$client_id]);
}
}
if($cmsuser_id > 0 && $client_id == 0){
$routes->connect('/:pass', ['controller' => 'Cmsusers', 'action' => 'login']);
}else if($cmsuser_id > 0 && $client_id > 0){
$routes->connect('/:pass/:client_id', ['controller' => 'Cmsusers', 'action' => 'login']);
}
$routes->connect('crm/*', ['controller' => 'Mycrm', 'action' => 'display']);
$routes->connect('/', ['controller' => 'Cmsusers', 'action' => 'login']);
$routes->connect('/guest', ['controller' => 'Guest', 'action' => 'login']);
$routes->connect('/admin', ['controller' => 'Cmsusers', 'action' => 'login']);
$routes->connect('/admin/reset_password/*', ['controller' => 'Cmsusers', 'action' => 'resetPassword']);
//$routes->connect('/guest/*', ['controller' => 'Registrations', 'action' => 'guest']);
$routes->connect('/stripe/*', ['controller' => 'Registrations', 'action' => 'stripe']);
$routes->connect('/termsconditions/*', ['controller' => 'Registrations', 'action' => 'terms']);
$routes->connect('/guest/forgot_password', ['controller' => 'Guest', 'action' => 'forgotPassword']);
$routes->connect('/guest/reset_password', ['controller' => 'Guest', 'action' => 'resetPassword']);
/**
* ...and connect the rest of 'Pages' controller's URLs.
*/
$routes->connect('/users/logout/', ['controller' => 'Cmsusers', 'action' => 'logout']);
$routes->connect('/users/edit-profile/', ['controller' => 'Cmsusers', 'action' => 'editProfile']);
$routes->connect('/users/add/', ['controller' => 'Cmsusers', 'action' => 'add']);
$routes->connect('/users/forgot_password', ['controller' => 'Cmsusers', 'action' => 'forgotPassword']);
$routes->connect('/users/bulk-action', ['controller' => 'Cmsusers', 'action' => 'bulkAction']);
$routes->connect('/users/allowaction/*', ['controller' => 'Cmsusers', 'action' => 'allowaction']);
$routes->connect('/users/revokeaction/*', ['controller' => 'Cmsusers', 'action' => 'revokeaction']);
$routes->connect('/users/revokePassword/*', ['controller' => 'Cmsusers', 'action' => 'revokePassword']);
$routes->connect('/users/edit/*', ['controller' => 'Cmsusers', 'action' => 'edit']);
$routes->connect('/users/view/*', ['controller' => 'Cmsusers', 'action' => 'view']);
$routes->connect('/users/addmembership/*', ['controller' => 'Cmsusers', 'action' => 'addmembership']);
$routes->connect('/users/revokemembership/*', ['controller' => 'Cmsusers', 'action' => 'revokemembership']);
$routes->connect('/users/*', ['controller' => 'Cmsusers']);
$routes->connect('/pages/*', ['controller' => 'Pages']);
$routes->connect('/pages/edit/*', ['controller' => 'Pages', 'action' => 'edit']);
$routes->connect('/pages/add', ['controller' => 'Pages', 'action' => 'add']);
$routes->connect('/pages/delete/*', ['controller' => 'Pages', 'action' => 'delete']);
$routes->connect('/pages/bulk-action', ['controller' => 'Pages', 'action' => 'bulkAction']);
$routes->connect('/submodules/*', ['controller' => 'SubModules']);
$routes->connect('/submodules/add', ['controller' => 'SubModules', 'action' => 'add']);
$routes->connect('/submodules/edit/*', ['controller' => 'SubModules', 'action' => 'edit']);
$routes->connect('/submodules/delete/*', ['controller' => 'SubModules', 'action' => 'delete']);
$routes->connect('/submodules/bulk-action', ['controller' => 'SubModules', 'action' => 'bulkAction']);
$routes->connect('/companies/*', ['controller' => 'Companies']);
$routes->connect('/companies/add', ['controller' => 'Companies', 'action' => 'add']);
$routes->connect('/companies/edit/*', ['controller' => 'Companies', 'action' => 'edit']);
$routes->connect('/companies/delete/*', ['controller' => 'Companies', 'action' => 'delete']);
$routes->connect('/companies/view/*', ['controller' => 'Companies', 'action' => 'view']);
$routes->connect('/companies/bulk-action', ['controller' => 'Companies', 'action' => 'bulkAction']);
$routes->connect('/companies/uploadPicture', ['controller' => 'Companies', 'action' => 'uploadPicture']);
$routes->connect('/companies/companyActive', ['controller' => 'Companies', 'action' => 'companyActive']);
$routes->connect('/companies/trnsToaws/*', ['controller' => 'Companies', 'action' => 'trnsToaws']);
$routes->connect('/settings/edit/*', ['controller' => 'Settings', 'action' => 'edit']);
$routes->connect('/lg/update/*', ['controller' => 'Epicvelocity', 'action' => 'generatePdf']);
$routes->connect('/client/notelist/*', ['controller' => 'Affiliate', 'action' => 'note']);
$routes->connect('/client/note', ['controller' => 'Affiliate', 'action' => 'affiliatechat']);
$routes->connect('/client/addnote', ['controller' => 'Affiliate', 'action' => 'addnote']);
$routes->connect('/test',['controller'=>'Test','action'=>'testing']);
/**
* Connect catchall routes for all controllers.
*
* Using the argument `DashedRoute`, the `fallbacks` method is a shortcut for
* `$routes->connect('/:controller', ['action' => 'index'], ['routeClass' => 'DashedRoute']);`
* `$routes->connect('/:controller/:action/*', [], ['routeClass' => 'DashedRoute']);`
*
* Any route class can be used with this method, such as:
* - DashedRoute
* - InflectedRoute
* - Route
* - Or your own route class
*
* You can remove these routes once you've connected the
* routes you want in your application.
*/
$routes->fallbacks('DashedRoute');
});
/**
* Load all plugin routes. See the Plugin documentation on
* how to customize the loading of plugin routes.
*/
Plugin::routes();

27
config/schema/i18n.sql Normal file
View File

@@ -0,0 +1,27 @@
# $Id$
#
# Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
#
# Licensed under The MIT License
# For full copyright and license information, please see the LICENSE.txt
# Redistributions of files must retain the above copyright notice.
# MIT License (http://www.opensource.org/licenses/mit-license.php)
CREATE TABLE i18n (
id int(10) NOT NULL auto_increment,
locale varchar(6) NOT NULL,
model varchar(255) NOT NULL,
foreign_key int(10) NOT NULL,
field varchar(255) NOT NULL,
content mediumtext,
PRIMARY KEY (id),
# UNIQUE INDEX I18N_LOCALE_FIELD(locale, model, foreign_key, field),
# INDEX I18N_LOCALE_ROW(locale, model, foreign_key),
# INDEX I18N_LOCALE_MODEL(locale, model),
# INDEX I18N_FIELD(model, foreign_key, field),
# INDEX I18N_ROW(model, foreign_key),
INDEX locale (locale),
INDEX model (model),
INDEX row_id (foreign_key),
INDEX field (field)
);

View File

@@ -0,0 +1,54 @@
--
-- Dumping data for table `modules`
--
INSERT INTO `modules` (`id`, `name`, `icon`, `sequence`, `created_on`, `modified_on`) VALUES
(2000, 'CRM', '<i class=\"fa fa-th-list\" aria-hidden=\"true\"></i>', 6, '2018-01-16 05:08:52', '0000-00-00 00:00:00');
--
-- Dumping data for table `sub_modules`
--
INSERT INTO `sub_modules` (`id`, `module_id`, `name`, `controller_name`, `icon`, `sequence`, `created_on`, `modified_on`) VALUES
(2100, 2000, 'Project Management', 'Project', '<i class=\"fa fa-lightbulb-o\"></i>', 1, '2018-01-16 05:12:19', '2018-01-16 06:10:31'),
(2200, 2000, 'Client Management', 'Client', '<i class=\"fa fa-building-o\" aria-hidden=\"true\"></i>', 2, '2018-01-18 11:32:58', '0000-00-00 00:00:00'),
(2300, 2000, 'Invoice Management', 'Invoice', '<i class=\"fa fa-bell\"></i>', 3, '2018-01-16 05:35:05', '2018-01-17 13:01:51'),
(2400, 2000, 'Expense Management', 'Expense', '<i class=\"fa fa-angle-double-right\"></i>', 4, '2018-01-17 05:32:17', '2018-01-19 09:42:57'),
(2500, 2000, 'Estimate Management', 'Estimate', '<i class=\"fa fa-files-o\" aria-hidden=\"true\"></i>', 5, '2018-01-18 11:27:30', '2018-01-19 09:43:12');
--
-- Dumping data for table `pages`
--
INSERT INTO `pages` (`id`, `module_id`, `sub_module_id`, `name`, `method_name`, `available_to_company`, `created_on`, `modified_on`) VALUES
(2101, 2000, 2100, 'Index', 'index', 1, '2018-01-16 05:14:05', '0000-00-00 00:00:00'),
(2102, 2000, 2100, 'View', 'view', 1, '2018-01-16 06:11:56', '0000-00-00 00:00:00'),
(2103, 2000, 2100, 'Add', 'add', 1, '2018-01-16 06:12:11', '0000-00-00 00:00:00'),
(2104, 2000, 2100, 'Edit', 'edit', 1, '2018-01-16 06:12:24', '0000-00-00 00:00:00'),
(2105, 2000, 2100, 'Delete', 'delete', 1, '2018-01-16 06:12:45', '0000-00-00 00:00:00'),
(2106, 2000, 2100, 'BulkAction', 'bulkaction', 1, '2018-01-16 06:13:04', '0000-00-00 00:00:00'),
(2201, 2000, 2200, 'Index', 'index', 1, '2018-01-18 11:33:24', '0000-00-00 00:00:00'),
(2202, 2000, 2200, 'View', 'view', 1, '2018-01-18 11:33:51', '0000-00-00 00:00:00'),
(2203, 2000, 2200, 'Add', 'add', 1, '2018-01-18 11:34:32', '0000-00-00 00:00:00'),
(2204, 2000, 2200, 'Edit', 'edit', 1, '2018-01-18 11:34:56', '0000-00-00 00:00:00'),
(2205, 2000, 2200, 'Delete', 'delete', 1, '2018-01-18 11:35:17', '0000-00-00 00:00:00'),
(2206, 2000, 2200, 'BulkAction', 'bulkaction', 1, '2018-01-18 11:35:42', '0000-00-00 00:00:00'),
(2310, 2000, 2300, 'index', 'index', 1, '2018-01-16 05:36:29', '0000-00-00 00:00:00'),
(2320, 2000, 2300, 'add', 'add', 1, '2018-01-16 05:37:22', '0000-00-00 00:00:00'),
(2330, 2000, 2300, 'edit', 'edit', 1, '2018-01-16 05:37:47', '0000-00-00 00:00:00'),
(2340, 2000, 2300, 'delete', 'delete', 1, '2018-01-16 05:39:47', '0000-00-00 00:00:00'),
(2350, 2000, 2300, 'view', 'view', 1, '2018-01-16 13:33:49', '0000-00-00 00:00:00'),
(2360, 2000, 2300, 'bulkaction', 'bulkaction', 1, '2018-01-17 07:20:53', '0000-00-00 00:00:00'),
(2401, 2000, 2400, 'Index', 'index', 1, '2018-01-17 05:33:32', '0000-00-00 00:00:00'),
(2402, 2000, 2400, 'View', 'view', 1, '2018-01-17 05:33:51', '0000-00-00 00:00:00'),
(2403, 2000, 2400, 'Add', 'add', 1, '2018-01-17 05:34:18', '0000-00-00 00:00:00'),
(2404, 2000, 2400, 'Edit', 'edit', 1, '2018-01-17 05:34:41', '0000-00-00 00:00:00'),
(2405, 2000, 2400, 'Delete', 'delete', 1, '2018-01-17 05:35:03', '0000-00-00 00:00:00'),
(2406, 2000, 2400, 'Bulk Action', 'bulkaction', 1, '2018-01-17 05:35:51', '0000-00-00 00:00:00'),
(2501, 2000, 2500, 'Index', 'index', 1, '2018-01-18 11:28:41', '0000-00-00 00:00:00'),
(2502, 2000, 2500, 'Add', 'add', 1, '2018-01-18 11:29:35', '0000-00-00 00:00:00'),
(2503, 2000, 2500, 'View', 'view', 1, '2018-01-18 11:30:06', '0000-00-00 00:00:00'),
(2504, 2000, 2500, 'Edit', 'edit', 1, '2018-01-18 11:31:52', '0000-00-00 00:00:00'),
(2505, 2000, 2500, 'Delete', 'delete', 1, '2018-01-18 11:32:29', '0000-00-00 00:00:00'),
(2506, 2000, 2500, 'Bulk Action', 'bulkaction', 1, '2018-01-18 11:32:59', '0000-00-00 00:00:00');

View File

@@ -0,0 +1,423 @@
-- phpMyAdmin SQL Dump
-- version 4.7.4
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Jan 19, 2018 at 01:45 PM
-- Server version: 10.1.28-MariaDB
-- PHP Version: 5.6.32
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Database: `rtgv3`
--
-- --------------------------------------------------------
--
-- Table structure for table `crm_categories`
--
CREATE TABLE `crm_categories` (
`id` int(11) NOT NULL,
`name` varchar(150) NOT NULL COMMENT 'category name',
`created_on` date NOT NULL,
`modified_on` date NOT NULL,
`created_by` int(11) NOT NULL,
`modified_by` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Dumping data for table `crm_categories`
--
INSERT INTO `crm_categories` (`id`, `name`, `created_on`, `modified_on`, `created_by`, `modified_by`) VALUES
(1, 'Accommodation', '2018-01-17', '0000-00-00', 2, 0),
(2, 'Accounting Fees', '2018-01-17', '0000-00-00', 2, 0);
-- --------------------------------------------------------
--
-- Table structure for table `expenses`
--
CREATE TABLE `expenses` (
`id` int(11) NOT NULL,
`type` tinyint(4) NOT NULL COMMENT '0=Payment and 1=Refund',
`category_id` int(11) NOT NULL COMMENT 'from categories table id',
`description` text NOT NULL,
`date` date NOT NULL,
`value` float NOT NULL,
`currency` varchar(50) NOT NULL,
`vat` float NOT NULL,
`project_id` int(11) NOT NULL COMMENT 'from projects table id',
`rebill` tinyint(4) NOT NULL COMMENT '0=yes and 1=no',
`receipt_reference` int(11) NOT NULL,
`invoice_id` int(11) NOT NULL COMMENT 'from invoice table id',
`attachment` varchar(255) NOT NULL,
`attachment_description` text NOT NULL,
`created_on` datetime NOT NULL,
`modified_on` datetime NOT NULL,
`created_by` int(11) NOT NULL,
`modified_by` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Dumping data for table `expenses`
--
INSERT INTO `expenses` (`id`, `type`, `category_id`, `description`, `date`, `value`, `currency`, `vat`, `project_id`, `rebill`, `receipt_reference`, `invoice_id`, `attachment`, `attachment_description`, `created_on`, `modified_on`, `created_by`, `modified_by`) VALUES
(1, 1, 1, 'wetryui', '2018-01-17', 100, '$10', 5, 3, 0, 2, 0, 'flower_1.png', 'sfedgfhkjl', '2018-01-17 00:00:00', '2018-01-19 00:00:00', 51, 51),
(2, 0, 1, 'lorem ipsum', '2018-01-19', 266, '$20', 10, 4, 1, 2, 0, 'circle_2.jpg', 'sdfghmj', '2018-01-17 00:00:00', '2018-01-19 09:50:38', 51, 51),
(3, 1, 1, 'dfhgjhkjl', '2018-01-17', 150, '$89', 5, 9, 0, 1, 0, 'bookating-logo_3.png', 'asfdgfhj', '2018-01-17 00:00:00', '2018-01-18 00:00:00', 51, 2),
(4, 0, 2, 'dummy test', '2018-01-18', 250, '$10', 6, 2, 1, 4, 0, 'lion_4.jpg', 'nothing to say', '2018-01-18 00:00:00', '2018-01-18 00:00:00', 51, 2),
(11, 0, 1, 'sdfghjk', '2018-01-19', 100, '$80', 7, 3, 0, 2, 0, 'lion_11.jpg', 'esrdctvgbhnj', '2018-01-19 12:43:03', '2018-01-19 12:44:08', 51, 51);
-- --------------------------------------------------------
--
-- Table structure for table `invoices`
--
CREATE TABLE `invoices` (
`id` int(11) NOT NULL,
`reference` int(11) DEFAULT NULL,
`client_id` int(11) NOT NULL COMMENT 'id from client table',
`status` tinyint(4) NOT NULL COMMENT '0 = inactive & 1 = active',
`currency` decimal(10,0) NOT NULL,
`issue_date` datetime NOT NULL,
`due_date` datetime NOT NULL,
`sent_date` datetime DEFAULT NULL,
`paid_date` datetime DEFAULT NULL,
`terms` text NOT NULL,
`discount` decimal(10,0) NOT NULL,
`subscription_id` varchar(255) DEFAULT NULL,
`project_id` int(11) NOT NULL COMMENT 'id from project table',
`tax` decimal(10,0) NOT NULL,
`estimate` int(11) DEFAULT NULL,
`estimate_status` tinyint(4) DEFAULT NULL,
`etimate_accepted_date` datetime DEFAULT NULL,
`estimate_sent` varchar(150) DEFAULT NULL,
`sum` float NOT NULL,
`second_tax` decimal(10,0) NOT NULL,
`estimate_reference` varchar(150) DEFAULT NULL,
`paid` float DEFAULT NULL,
`outstanding` float DEFAULT NULL,
`created_on` datetime NOT NULL,
`modified_on` datetime NOT NULL,
`created_by` int(11) NOT NULL COMMENT 'id from cmsusers table',
`modified_by` int(11) NOT NULL COMMENT 'id from cmsusers table'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `invoices`
--
INSERT INTO `invoices` (`id`, `reference`, `client_id`, `status`, `currency`, `issue_date`, `due_date`, `sent_date`, `paid_date`, `terms`, `discount`, `subscription_id`, `project_id`, `tax`, `estimate`, `estimate_status`, `etimate_accepted_date`, `estimate_sent`, `sum`, `second_tax`, `estimate_reference`, `paid`, `outstanding`, `created_on`, `modified_on`, `created_by`, `modified_by`) VALUES
(1, NULL, 1, 1, '200', '2018-01-19 00:00:00', '2018-01-20 00:00:00', NULL, NULL, 'sdfghj', '5', NULL, 3, '5', NULL, NULL, NULL, NULL, 0, '10', NULL, NULL, NULL, '2018-01-19 11:01:20', '0000-00-00 00:00:00', 51, 0),
(2, NULL, 2, 1, '100', '2018-01-19 00:00:00', '2018-01-27 00:00:00', NULL, NULL, 'sdgfhjk', '5', NULL, 2, '7', NULL, NULL, NULL, NULL, 0, '9', NULL, NULL, NULL, '2018-01-19 11:02:12', '0000-00-00 00:00:00', 51, 0),
(3, NULL, 2, 1, '100', '2018-01-26 00:00:00', '2018-01-27 00:00:00', NULL, NULL, 'sdfgfhghjk', '4', NULL, 2, '7', NULL, NULL, NULL, NULL, 0, '9', NULL, NULL, NULL, '2018-01-19 11:02:49', '2018-01-19 11:04:42', 51, 51),
(4, NULL, 1, 1, '200', '2018-01-19 00:00:00', '2018-01-12 00:00:00', NULL, NULL, 'sdfghjk', '6', NULL, 3, '5', NULL, NULL, NULL, NULL, 0, '10', NULL, NULL, NULL, '2018-01-19 12:39:32', '2018-01-19 12:39:51', 51, 51);
--
-- Indexes for dumped tables
--
--
-- Indexes for table `crm_categories`
--
ALTER TABLE `crm_categories`
ADD PRIMARY KEY (`id`);
--
-- Indexes for table `expenses`
--
ALTER TABLE `expenses`
ADD PRIMARY KEY (`id`);
--
-- Indexes for table `invoices`
--
ALTER TABLE `invoices`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `crm_categories`
--
ALTER TABLE `crm_categories`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
--
-- AUTO_INCREMENT for table `expenses`
--
ALTER TABLE `expenses`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=12;
--
-- AUTO_INCREMENT for table `invoices`
--
ALTER TABLE `invoices`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
--
-- Table structure for table `clients`
--
CREATE TABLE `clients` (
`id` int(11) NOT NULL,
`reference` int(11) DEFAULT NULL,
`name` varchar(40) NOT NULL,
`website` varchar(50) DEFAULT NULL,
`phone` varchar(20) DEFAULT NULL,
`mobile` varchar(20) DEFAULT NULL,
`address` varchar(100) DEFAULT NULL,
`zip_code` int(10) DEFAULT NULL,
`city` varchar(30) DEFAULT NULL,
`country` varchar(30) DEFAULT NULL,
`state` varchar(30) DEFAULT NULL,
`vat_number` varchar(50) DEFAULT NULL,
`inactive` tinyint(4) DEFAULT NULL,
`note` varchar(255) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `contacts`
--
CREATE TABLE `contacts` (
`id` int(11) NOT NULL,
`company_id` tinyint(4) DEFAULT NULL,
`first_name` varchar(40) DEFAULT NULL,
`last_name` varchar(40) DEFAULT NULL,
`email` varchar(60) DEFAULT NULL,
`phone` varchar(50) DEFAULT NULL,
`mobile` varchar(50) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
`zip_code` varchar(40) DEFAULT NULL,
`photo` varchar(255) DEFAULT NULL,
`city` varchar(50) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL,
`inactive` tinyint(4) DEFAULT NULL,
`access` varchar(50) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_categories`
--
CREATE TABLE `project_categories` (
`id` int(11) NOT NULL,
`name` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Dumping data for table `project_categories`
--
INSERT INTO `project_categories` (`id`, `name`) VALUES
(1, 'It/Software'),
(2, 'Finance'),
(3, 'Electronis'),
(4, 'Networking');
--
-- Table structure for table `projects`
--
CREATE TABLE `projects` (
`id` int(11) NOT NULL,
`reference` int(11) DEFAULT NULL,
`client_id` tinyint(4) NOT NULL,
`category_id` tinyint(4) NOT NULL,
`company_id` tinyint(4) DEFAULT NULL,
`rate_per_hour` decimal(10,0) DEFAULT NULL,
`progress` decimal(10,0) DEFAULT NULL,
`project_name` varchar(50) NOT NULL,
`start_date` date NOT NULL,
`deadline` date NOT NULL,
`track` int(11) DEFAULT NULL,
`time_spent` int(11) DEFAULT NULL,
`phase` varchar(255) NOT NULL,
`description` varchar(255) DEFAULT NULL,
`progress_calculate` tinyint(4) DEFAULT NULL,
`note` varchar(255) DEFAULT NULL,
`sticky` enum('1','0') DEFAULT NULL,
`permission` int(11) NOT NULL COMMENT '0=Only show own tasks for non super admins,1=Clients can create tasks',
`enable_client_task` int(11) DEFAULT NULL,
`hide_task` int(11) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_activities`
--
CREATE TABLE `project_has_activities` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) DEFAULT NULL,
`user_id` tinyint(4) DEFAULT NULL,
`client_id` tinyint(4) DEFAULT NULL,
`subject` varchar(100) DEFAULT NULL,
`message` varchar(255) DEFAULT NULL,
`type` varchar(150) DEFAULT NULL,
`note` varchar(255) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_filies`
--
CREATE TABLE `project_has_filies` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) DEFAULT NULL,
`user_id` tinyint(4) DEFAULT NULL,
`client_id` tinyint(4) DEFAULT NULL,
`type` varchar(100) DEFAULT NULL,
`name` varchar(100) DEFAULT NULL,
`file_name` varchar(100) DEFAULT NULL,
`description` varchar(255) DEFAULT NULL,
`save_name` varchar(100) DEFAULT NULL,
`phase` varchar(255) DEFAULT NULL,
`download_counter` int(11) DEFAULT NULL,
`note` varchar(255) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_invoices`
--
CREATE TABLE `project_has_invoices` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) DEFAULT NULL,
`invoice` tinyint(4) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_milestones`
--
CREATE TABLE `project_has_milestones` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) NOT NULL,
`name` varchar(100) DEFAULT NULL,
`description` varchar(255) DEFAULT NULL,
`start_date` datetime DEFAULT NULL,
`due_date` datetime DEFAULT NULL,
`order_index` int(11) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_tasks`
--
CREATE TABLE `project_has_tasks` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) NOT NULL,
`user_id` tinyint(4) NOT NULL,
`name` varchar(100) DEFAULT NULL,
`status` varchar(50) DEFAULT NULL,
`type` tinyint(4) DEFAULT NULL,
`public` int(11) DEFAULT NULL,
`date_time` datetime DEFAULT NULL,
`due_time` datetime DEFAULT NULL,
`description` varchar(255) DEFAULT NULL,
`value` decimal(10,0) DEFAULT NULL,
`priority` smallint(6) NOT NULL,
`client_id` int(11) NOT NULL,
`milestone_id` tinyint(4) NOT NULL,
`invoice_id` tinyint(4) NOT NULL,
`track` int(11) DEFAULT NULL,
`time_spent` int(11) DEFAULT NULL,
`milestone_order` int(11) NOT NULL,
`task_order` int(11) DEFAULT NULL,
`progress` int(11) DEFAULT NULL,
`start_date` int(11) DEFAULT NULL,
`time` int(11) DEFAULT NULL,
`note` varchar(255) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_time_sheets`
--
CREATE TABLE `project_has_time_sheets` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) NOT NULL,
`user_id` tinyint(4) NOT NULL,
`task_id` tinyint(4) NOT NULL,
`client_id` tinyint(4) NOT NULL,
`invoice_id` tinyint(4) NOT NULL,
`time` time DEFAULT NULL,
`start_date` datetime DEFAULT NULL,
`end_date` datetime DEFAULT NULL,
`description` varchar(255) DEFAULT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;
--
-- Table structure for table `project_has_workers`
--
CREATE TABLE `project_has_workers` (
`id` int(11) NOT NULL,
`project_id` tinyint(4) NOT NULL,
`user_id` tinyint(4) NOT NULL,
`created_on` datetime NOT NULL,
`created_by` tinyint(4) NOT NULL,
`modified_on` datetime NOT NULL,
`modified_by` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf32;

View File

@@ -0,0 +1,15 @@
# $Id$
#
# Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
#
# Licensed under The MIT License
# For full copyright and license information, please see the LICENSE.txt
# Redistributions of files must retain the above copyright notice.
# MIT License (http://www.opensource.org/licenses/mit-license.php)
CREATE TABLE sessions (
id varchar(40) NOT NULL default '',
data text,
expires INT(11) NOT NULL,
PRIMARY KEY (id)
);