Example #1
0
							print "<td align=\"center\">\n";
							//if ($conf->global->COMPANY_ADDON_PDF != "$name")
							//{
								print '<a href="'.$_SERVER["PHP_SELF"].'?action=del&amp;value='.$name.'&amp;scandir='.$module->scandir.'&amp;label='.urlencode($module->name).'">';
								print img_picto($langs->trans("Enabled"),'on');
								print '</a>';
							//}
							//else
							//{
							//	print img_picto($langs->trans("Enabled"),'on');
							//}
							print "</td>";
						}
						else
						{
							if (versioncompare($module->phpmin,versionphparray()) > 0)
							{
								print "<td align=\"center\">\n";
								print img_picto(dol_escape_htmltag($langs->trans("ErrorModuleRequirePHPVersion",join('.',$module->phpmin))),'off');
								print "</td>";
							}
							else
							{
								print "<td align=\"center\">\n";
								print '<a href="'.$_SERVER["PHP_SELF"].'?action=set&amp;value='.$name.'&amp;scandir='.$module->scandir.'&amp;label='.urlencode($module->name).'">'.img_picto($langs->trans("Disabled"),'off').'</a>';
								print "</td>";
							}
						}

						// Info
						$htmltooltip =    ''.$langs->trans("Name").': '.$module->name;
Example #2
0
/**
 *  Enable a module
 *  @param      value       Name of module to activate
 *  @param      withdeps    Activate/Disable also all dependencies
 *  @return     string      Error message or '';
 */
function Activate($value,$withdeps=1)
{
    global $db, $modules, $langs, $conf;

    $modName = $value;

    $ret='';

    // Activate module
    if ($modName)
    {
        $modFile = $modName . ".class.php";

        // Loop on each directory
        $found=false;
    	foreach ($conf->file->dol_document_root as $type => $dirroot)
        {
            $modulesdir[] = $dirroot."/includes/modules/";
            
            if ($type == 'alt')
			{	
				$handle=@opendir($dirroot);
				if (is_resource($handle))
				{
					while (($file = readdir($handle))!==false)
					{
					    if (is_dir($dirroot.'/'.$file) && substr($file, 0, 1) <> '.' && substr($file, 0, 3) <> 'CVS' && $file != 'includes')
					    {
					    	if (is_dir($dirroot . '/' . $file . '/includes/modules/'))
					    	{
					    		$modulesdir[] = $dirroot . '/' . $file . '/includes/modules/';
					    	}
					    }
					}
					closedir($handle);
				}
			}
        }

        foreach ($modulesdir as $dir)
        {
        	if (file_exists($dir.$modFile))
        	{
        		$found=@include_once($dir.$modFile);
        		if ($found) break;
        	}
        }

        $objMod = new $modName($db);

        // Test if PHP version ok
        $verphp=versionphparray();
        $vermin=isset($objMod->phpmin)?$objMod->phpmin:0;
        if (is_array($vermin) && versioncompare($verphp,$vermin) < 0)
        {
            return $langs->trans("ErrorModuleRequirePHPVersion",versiontostring($vermin));
        }

        // Test if Dolibarr version ok
        $verdol=versiondolibarrarray();
        $vermin=isset($objMod->need_dolibarr_version)?$objMod->need_dolibarr_version:0;
        //print 'eee'.versioncompare($verdol,$vermin).join(',',$verdol).' - '.join(',',$vermin);exit;
        if (is_array($vermin) && versioncompare($verdol,$vermin) < 0)
        {
            return $langs->trans("ErrorModuleRequireDolibarrVersion",versiontostring($vermin));
        }

        // Test if javascript requirement ok
        if (! empty($objMod->need_javascript_ajax) && empty($conf->use_javascript_ajax))
        {
            return $langs->trans("ErrorModuleRequireJavascript");
        }

        $result=$objMod->init();
        if ($result <= 0) $ret=$objMod->error;
    }

    if (! $ret && $withdeps)
    {
        if (is_array($objMod->depends) && !empty($objMod->depends))
        {
            // Activation des modules dont le module depend
            for ($i = 0; $i < sizeof($objMod->depends); $i++)
            {
                if (file_exists(DOL_DOCUMENT_ROOT."/includes/modules/".$objMod->depends[$i].".class.php"))
                {
                    Activate($objMod->depends[$i]);
                }
            }
        }

        if (isset($objMod->conflictwith) && is_array($objMod->conflictwith))
        {
            // Desactivation des modules qui entrent en conflit
            for ($i = 0; $i < sizeof($objMod->conflictwith); $i++)
            {
                if (file_exists(DOL_DOCUMENT_ROOT."/includes/modules/".$objMod->conflictwith[$i].".class.php"))
                {
                    UnActivate($objMod->conflictwith[$i],0);
                }
            }
        }
    }

    return $ret;
}
Example #3
0
    if ($browsername == 'ie' && $browserversion < 7) {
        print '<img src="../theme/eldy/img/warning.png" alt="Error"> ' . $langs->trans("WarningBrowserTooOld") . "<br>\n";
    }
}
// Check PHP version
if (versioncompare(versionphparray(), array(5, 2, 3)) < 0) {
    print '<img src="../theme/eldy/img/error.png" alt="Error"> ' . $langs->trans("ErrorPHPVersionTooLow", '5.2.3');
    $checksok = 0;
    // 0=error, 1=warning
} else {
    if (versioncompare(versionphparray(), array(5, 3, 0)) < 0) {
        print '<img src="../theme/eldy/img/warning.png" alt="Error"> ' . $langs->trans("ErrorPHPVersionTooLow", '5.3.0');
        $checksok = 0;
        // 0=error, 1=warning
    } else {
        print '<img src="../theme/eldy/img/tick.png" alt="Ok"> ' . $langs->trans("PHPVersion") . " " . versiontostring(versionphparray());
    }
}
if (empty($force_install_nophpinfo)) {
    print ' (<a href="phpinfo.php" target="_blank">' . $langs->trans("MoreInformation") . '</a>)';
}
print "<br>\n";
// Check PHP support for $_POST
if (!isset($_GET["testget"]) && !isset($_POST["testpost"])) {
    print '<img src="../theme/eldy/img/warning.png" alt="Warning"> ' . $langs->trans("PHPSupportPOSTGETKo");
    print ' (<a href="' . $_SERVER["PHP_SELF"] . '?testget=ok">' . $langs->trans("Recheck") . '</a>)';
    print "<br>\n";
    $checksok = 0;
} else {
    print '<img src="../theme/eldy/img/tick.png" alt="Ok"> ' . $langs->trans("PHPSupportPOSTGETOk") . "<br>\n";
}
Example #4
0
/**
 *  Enable a module
 *
 *  @param      string		$value      Name of module to activate
 *  @param      int			$withdeps   Activate/Disable also all dependencies
 *  @return     string      			Error message or '';
 */
function activateModule($value, $withdeps = 1)
{
    global $db, $modules, $langs, $conf;
    // Check parameters
    if (empty($value)) {
        return 'ErrorBadParameter';
    }
    $ret = '';
    $modName = $value;
    $modFile = $modName . ".class.php";
    // Loop on each directory to fill $modulesdir
    $modulesdir = dolGetModulesDirs();
    // Loop on each modulesdir directories
    $found = false;
    foreach ($modulesdir as $dir) {
        if (file_exists($dir . $modFile)) {
            $found = @(include_once $dir . $modFile);
            if ($found) {
                break;
            }
        }
    }
    $objMod = new $modName($db);
    // Test if PHP version ok
    $verphp = versionphparray();
    $vermin = isset($objMod->phpmin) ? $objMod->phpmin : 0;
    if (is_array($vermin) && versioncompare($verphp, $vermin) < 0) {
        return $langs->trans("ErrorModuleRequirePHPVersion", versiontostring($vermin));
    }
    // Test if Dolibarr version ok
    $verdol = versiondolibarrarray();
    $vermin = isset($objMod->need_dolibarr_version) ? $objMod->need_dolibarr_version : 0;
    //print 'eee '.versioncompare($verdol,$vermin).' - '.join(',',$verdol).' - '.join(',',$vermin);exit;
    if (is_array($vermin) && versioncompare($verdol, $vermin) < 0) {
        return $langs->trans("ErrorModuleRequireDolibarrVersion", versiontostring($vermin));
    }
    // Test if javascript requirement ok
    if (!empty($objMod->need_javascript_ajax) && empty($conf->use_javascript_ajax)) {
        return $langs->trans("ErrorModuleRequireJavascript");
    }
    $result = $objMod->init();
    if ($result <= 0) {
        $ret = $objMod->error;
    }
    if (!$ret && $withdeps) {
        if (isset($objMod->depends) && is_array($objMod->depends) && !empty($objMod->depends)) {
            // Activation des modules dont le module depend
            $num = count($objMod->depends);
            for ($i = 0; $i < $num; $i++) {
                foreach ($modulesdir as $dir) {
                    if (file_exists($dir . $objMod->depends[$i] . ".class.php")) {
                        activateModule($objMod->depends[$i]);
                    }
                }
            }
        }
        if (isset($objMod->conflictwith) && is_array($objMod->conflictwith) && !empty($objMod->conflictwith)) {
            // Desactivation des modules qui entrent en conflit
            $num = count($objMod->conflictwith);
            for ($i = 0; $i < $num; $i++) {
                foreach ($modulesdir as $dir) {
                    if (file_exists($dir . $objMod->conflictwith[$i] . ".class.php")) {
                        unActivateModule($objMod->conflictwith[$i], 0);
                    }
                }
            }
        }
    }
    return $ret;
}