Dotclear


Ignore:
Timestamp:
12/02/16 11:54:52 (9 years ago)
Author:
franck <carnet.franck.paul@…>
Branch:
default
Message:

Ugly hack for SQLite CB driver for value beginning or ending by a single quote

File:
1 edited

Legend:

Unmodified
Added
Removed
  • inc/dbschema/upgrade.php

    r3423 r3432  
    602602                    sprintf($strReq,'csp_admin_report_only',false,'boolean','CSP Report only violations (admin)')); 
    603603 
     604               // SQlite Clearbricks driver does not allow using single quote at beginning or end of a field value 
     605               // so we have to use neutral values (localhost and 127.0.0.1) for some CSP directives 
     606               $csp_prefix = $core->con->driver() == 'sqlite' ? 'localhost ' : '';   // Hack for SQlite Clearbricks driver 
     607               $csp_suffix = $core->con->driver() == 'sqlite' ? ' 127.0.0.1' : '';   // Hack for SQlite Clearbricks driver 
     608 
     609               # Try to fix some CSP directive wrongly stored for SQLite drivers 
     610               $strReq = 'UPDATE '.$core->prefix.'setting '. 
     611                         " SET setting_value = '".$csp_prefix."''self''".$csp_suffix."' ". 
     612                         " WHERE setting_id = 'csp_admin_default' ". 
     613                         " AND setting_ns = 'system' ". 
     614                         " AND setting_value = 'self' "; 
     615               $core->con->execute($strReq); 
     616               $strReq = 'UPDATE '.$core->prefix.'setting '. 
     617                         " SET setting_value = '".$csp_prefix."''self'' ''unsafe-inline'' ''unsafe-eval''".$csp_suffix."' ". 
     618                         " WHERE setting_id = 'csp_admin_script' ". 
     619                         " AND setting_ns = 'system' ". 
     620                         " AND setting_value = 'self'' ''unsafe-inline'' ''unsafe-eval' "; 
     621               $core->con->execute($strReq); 
     622               $strReq = 'UPDATE '.$core->prefix.'setting '. 
     623                         " SET setting_value = '".$csp_prefix."''self'' ''unsafe-inline''".$csp_suffix."' ". 
     624                         " WHERE setting_id = 'csp_admin_style' ". 
     625                         " AND setting_ns = 'system' ". 
     626                         " AND setting_value = 'self'' ''unsafe-inline' "; 
     627               $core->con->execute($strReq); 
     628               $strReq = 'UPDATE '.$core->prefix.'setting '. 
     629                         " SET setting_value = '".$csp_prefix."''self'' data: media.dotaddict.org blob:' ". 
     630                         " WHERE setting_id = 'csp_admin_img' ". 
     631                         " AND setting_ns = 'system' ". 
     632                         " AND setting_value = 'self'' data: media.dotaddict.org' "; 
     633               $core->con->execute($strReq); 
     634 
    604635               # Update CSP img-src default directive 
    605636               $strReq = 'UPDATE '.$core->prefix.'setting '. 
    606                          " SET setting_value = '''self'' data: media.dotaddict.org blob:' ". 
     637                         " SET setting_value = '".$csp_prefix."''self'' data: media.dotaddict.org blob:' ". 
    607638                         " WHERE setting_id = 'csp_admin_img' ". 
    608639                         " AND setting_ns = 'system' ". 
Note: See TracChangeset for help on using the changeset viewer.

Sites map