// session functions
require_once 'attributeManager/includes/attributeManagerSessionFunctions.inc.php';
// config
require_once 'attributeManager/classes/attributeManagerConfig.class.php';
// misc functions
require_once 'attributeManager/includes/attributeManagerGeneralFunctions.inc.php';
// parent class
require_once 'attributeManager/classes/attributeManager.class.php';
// instant class
require_once 'attributeManager/classes/attributeManagerInstant.class.php';
// atomic class
require_once 'attributeManager/classes/attributeManagerAtomic.class.php';
// security class
require_once 'attributeManager/classes/stopDirectAccess.class.php';
// check that the file is allowed to be accessed
stopDirectAccess::checkAuthorisation(AM_SESSION_VALID_INCLUDE);
// get an instance of one of the attribute manager classes
$attributeManager =& amGetAttributeManagerInstance($_GET);
// do any actions that should be done
$globalVars = $attributeManager->executePageAction($_GET);
// set any global variables from the page action execution
if (0 !== count($globalVars) && is_array($globalVars)) {
    foreach ($globalVars as $varName => $varValue) {
        ${$varName} = $varValue;
    }
}
// get the current products options and values
$allProductOptionsAndValues = $attributeManager->getAllProductOptionsAndValues(true);
//$SortedProductAttributes = $attributeManager->sortArrSessionVar();
// count the options
$numOptions = count($allProductOptionsAndValues);