28if (!defined(
'NOSESSION')) {
29 define(
'NOSESSION',
'1');
32$sapi_type = php_sapi_name();
33$script_file = basename(__FILE__);
37if (substr($sapi_type, 0, 3) ==
'cgi') {
38 echo
"Error: You are using PHP for CGI. To execute ".$script_file.
" from command line, you must use PHP for CLI mode.\n";
43define(
'EVEN_IF_ONLY_LOGIN_ALLOWED', 1);
46require_once $path.
"../../htdocs/master.inc.php";
47require_once DOL_DOCUMENT_ROOT.
'/core/lib/functionscli.lib.php';
48require_once DOL_DOCUMENT_ROOT.
"/product/class/product.class.php";
49require_once DOL_DOCUMENT_ROOT.
"/core/lib/files.lib.php";
62$version = DOL_VERSION;
66$hookmanager->initHooks(array(
'cli'));
73print
"***** ".$script_file.
" (".$version.
") pid=".
dol_getmypid().
" *****\n";
74dol_syslog($script_file.
" launched with arg ".join(
',', $argv));
76if (!isset($argv[1]) || $argv[1] !=
'product') {
77 print
"Usage: $script_file product\n";
81print
'--- start'.
"\n";
84if ($argv[1] ==
'product') {
87 $sql =
"SELECT rowid as pid from ".MAIN_DB_PREFIX.
"product";
88 $resql = $db->query($sql);
90 while ($obj = $db->fetch_object($resql)) {
91 $product->fetch($obj->pid);
92 print
" migrating product id=".$product->id.
" ref=".$product->ref.
"\n";
96 print
"\n sql error ".$sql;
115 $dir =
$conf->product->multidir_output[$product->entity];
116 $conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO = 1;
117 $origin = $dir.
'/'.
get_exdir($product->id, 2, 0, 0, $product,
'product').$product->id.
"/photos";
127 $handle = opendir($origin_osencoded);
128 if (is_resource($handle)) {
129 while (($file = readdir($handle)) !==
false) {
130 if ($file !=
'.' && $file !=
'..' && is_dir($origin_osencoded.
'/'.$file)) {
131 $thumbs = opendir($origin_osencoded.
'/'.$file);
132 if (is_resource($thumbs)) {
134 while (($thumb = readdir($thumbs)) !==
false) {
135 dol_move($origin.
'/'.$file.
'/'.$thumb, $destin.
'/'.$file.
'/'.$thumb);
141 dol_move($origin.
'/'.$file, $destin.
'/'.$file);
Class to manage products or services.
dol_move($srcfile, $destfile, $newmask='0', $overwriteifexists=1, $testvirus=0, $indexdatabase=1, $moreinfo=array())
Move a file into another name.
dol_is_file($pathoffile)
Return if path is a file.
dol_is_dir($folder)
Test if filename is a directory.
dol_getmypid()
Return getmypid() or random PID when function is disabled Some web hosts disable this php function fo...
dol_osencode($str)
Return a string encoded into OS filesystem encoding.
dol_sanitizeFileName($str, $newstr='_', $unaccent=1)
Clean a string to use it as a file name.
get_exdir($num, $level, $alpha, $withoutslash, $object, $modulepart='')
Return a path to have a the directory according to object where files are stored.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
dol_mkdir($dir, $dataroot='', $newmask='')
Creation of a directory (this can create recursive subdir)
global $conf
The following vars must be defined: $type2label $form $conf, $lang, The following vars may also be de...
migrate_product_photospath($product)
Migrate file from old path to new one for product $product.