| Server IP : 103.161.17.216 / Your IP : 216.73.216.1 Web Server : nginx/1.18.0 System : Linux tipsysaigoncharming 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/app.houseland.info/application/migrations/ |
Upload File : |
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Migration_Version_120 extends CI_Migration
{
function __construct()
{
parent::__construct();
}
public function up()
{
if(!is_dir(ESTIMATE_ATTACHMENTS_FOLDER)){
mkdir(ESTIMATE_ATTACHMENTS_FOLDER, 0755);
fopen(ESTIMATE_ATTACHMENTS_FOLDER . '.htaccess', 'w');
$fp = fopen(ESTIMATE_ATTACHMENTS_FOLDER.'.htaccess','a+');
if($fp)
{
fwrite($fp,'Order Deny,Allow'.PHP_EOL.'Deny from all');
fclose($fp);
}
}
if(!is_dir(PROPOSAL_ATTACHMENTS_FOLDER)){
mkdir(PROPOSAL_ATTACHMENTS_FOLDER, 0755);
fopen(PROPOSAL_ATTACHMENTS_FOLDER . '.htaccess', 'w');
$fp = fopen(PROPOSAL_ATTACHMENTS_FOLDER.'.htaccess','a+');
if($fp)
{
fwrite($fp,'Order Deny,Allow'.PHP_EOL.'Deny from all');
fclose($fp);
}
}
add_option('pdf_format_invoice','A4');
add_option('pdf_format_estimate','A4');
add_option('pdf_format_proposal','A4');
add_option('pdf_format_payment','A4');
add_option('pdf_format_contract','A4');
add_option('pdf_text_color','#000000');
add_option('auto_check_for_new_notifications','0');
add_option('swap_pdf_info','0');
$this->db->query("ALTER TABLE `tblestimates` CHANGE `discount_percent` `discount_percent` DECIMAL(11,2) NULL DEFAULT '0.00';");
$this->db->query("ALTER TABLE `tblestimates` CHANGE `discount_total` `discount_total` DECIMAL(11,2) NULL DEFAULT '0.00';");
$this->db->query("ALTER TABLE `tblinvoices` CHANGE `discount_percent` `discount_percent` DECIMAL(11,2) NULL DEFAULT '0.00';");
$this->db->query("ALTER TABLE `tblinvoices` CHANGE `discount_total` `discount_total` DECIMAL(11,2) NULL DEFAULT '0.00';");
$this->db->query("ALTER TABLE `tblinvoices` ADD `recurring_ends_on` DATE NULL AFTER `recurring`;");
$this->db->query("ALTER TABLE `tblexpenses` ADD `recurring_ends_on` DATE NULL AFTER `recurring`;");
$this->db->query("ALTER TABLE `tblstafftaskassignees` ADD `assigned_from` INT NOT NULL DEFAULT '0' AFTER `taskid`;");
$this->db->query("ALTER TABLE `tblestimates` CHANGE `currency` `currency` INT NOT NULL;");
$this->db->query("ALTER TABLE `tblsurveysemailsendcron` ADD `log_id` INT NOT NULL AFTER `listid`;");
$this->db->query("ALTER TABLE `tblcontacts` ADD INDEX(`userid`);");
$this->db->query("ALTER TABLE `tblstafftaskassignees` ADD INDEX(`taskid`);");
$this->db->query("ALTER TABLE `tblstafftaskassignees` ADD INDEX(`staffid`);");
$this->db->query("ALTER TABLE `tblcustomergroups_in` ADD INDEX(`groupid`);");
$this->db->query("ALTER TABLE `tblcustomergroups_in` ADD INDEX(`customer_id`);");
$this->db->query("ALTER TABLE `tblinvoices` ADD INDEX(`currency`);");
$this->db->query("ALTER TABLE `tblinvoices` ADD INDEX(`clientid`);");
$this->db->query("ALTER TABLE `tblexpenses` ADD INDEX(`clientid`);");
$this->db->query("ALTER TABLE `tblexpenses` ADD INDEX(`project_id`);");
$this->db->query("ALTER TABLE `tblexpenses` ADD INDEX(`category`);");
$this->db->query("ALTER TABLE `tblestimates` ADD INDEX(`clientid`);");
$this->db->query("ALTER TABLE `tblestimates` ADD INDEX(`currency`);");
$this->db->query("ALTER TABLE `tblactivitylog` ADD INDEX(`staffid`);");
$this->db->query("ALTER TABLE `tblcontracts` ADD INDEX(`client`);");
$this->db->query("ALTER TABLE `tblcontracts` ADD INDEX(`contract_type`);");
$this->db->query("ALTER TABLE `tblleads` ADD INDEX(`status`);");
$this->db->query("ALTER TABLE `tblleads` ADD INDEX(`assigned`);");
$this->db->query("ALTER TABLE `tblprojects` ADD INDEX(`clientid`);");
$this->db->query("ALTER TABLE `tbltickets` ADD INDEX(`service`);");
$this->db->query("ALTER TABLE `tbltickets` ADD INDEX(`department`);");
$this->db->query("ALTER TABLE `tbltickets` ADD INDEX(`status`);");
$this->db->query("ALTER TABLE `tbltickets` ADD INDEX(`userid`);");
$this->db->query("ALTER TABLE `tbltickets` ADD INDEX(`priority`);");
$this->db->query("ALTER TABLE `tblleads` ADD INDEX(`source`);");
$this->db->query("ALTER TABLE `tblinvoiceattachments` ADD `attachment_key` VARCHAR(32) NOT NULL AFTER `datecreated`;");
$this->db->query("ALTER TABLE `tblinvoiceattachments` CHANGE `invoiceid` `rel_id` INT(11) NOT NULL;");
$this->db->query("ALTER TABLE `tblinvoiceattachments` ADD `rel_type` VARCHAR(15) NOT NULL AFTER `rel_id`;");
$attachments = $this->db->get(db_prefix().'invoiceattachments')->result_array();
foreach($attachments as $attachment){
$this->db->where('id',$attachment['id']);
$this->db->update(db_prefix().'invoiceattachments',array('rel_type'=>'invoice','attachment_key'=>md5(date('Y-m-d H:i:s').$attachment['rel_id'])));
}
$this->db->query("ALTER TABLE `tblinvoiceattachments` ADD `visible_to_customer` INT NOT NULL DEFAULT '0' AFTER `attachment_key`;");
$this->db->query("RENAME TABLE tblinvoiceattachments TO tblsalesattachments");
if(file_exists(APPPATH.'views/admin/invoices/invoice_attach_file.php')){
@unlink(APPPATH.'views/admin/invoices/invoice_attach_file.php');
}
update_option('update_info_message', '<div class="col-md-12">
<div class="alert alert-success bold">
<h4 class="bold">Hi! Thanks for updating Perfex CRM - You are using version 1.2.0</h4>
<p>
This window will reload automaticaly in 5 seconds and will try to clear your browser cache, however its recomended to clear your browser cache manually.
</p>
</div>
</div>
<script>
setTimeout(function(){
window.location.reload();
},5000);
</script>
');
}
}