Esempio n. 1
0
 if ($Inventory && $Inventory->isValid()) {
     $SnapinJob = $Host->get('snapinjob');
     //Get Snapin(s) Used/Queued
     if ($SnapinJob && $SnapinJob->isValid()) {
         $SnapinTasks = $FOGCore->getClass('SnapinTaskManager')->find(array('stateID' => array(-1, 0, 1), 'jobID' => $SnapinJob->get('id')));
         foreach ($SnapinTasks as $SnapinTask) {
             if ($SnapinTask && $SnapinTask->isValid()) {
                 $Snapin = new Snapin($SnapinTask->get('snapinID'));
                 if ($Snapin && $Snapin->isValid()) {
                     $SnapinNames[] = $Snapin->get('name');
                 }
             }
         }
     }
     $StorageNode = new StorageNode($Task->get('NFSMemberID'));
     $emailbinary = $FOGCore->getSetting('FOG_EMAIL_BINARY') ? preg_replace('#\\$\\{server-name\\}#', $StorageNode && $StorageNode->isValid() ? $StorageNode->get('name') : 'fogserver', $FOGCore->getSetting('FOG_EMAIL_BINARY')) : '/usr/sbin/sendmail -t -f noreply@fogserver.com -i';
     ini_set('sendmail_path', $emailbinary);
     $snpusd = implode(', ', (array) $SnapinNames);
     //to list snapins as 1, 2, 3,  etc
     $engineer = ucwords($Task->get('createdBy'));
     //ucwords purely aesthetics
     $puser = ucwords($Inventory->get('primaryUser'));
     //ucwords purely aesthetics
     $to = $FOGCore->getSetting('FOG_EMAIL_ADDRESS');
     //Email address(es) to be used
     $headers = 'From: ' . $FOGCore->getSetting('FOG_FROM_EMAIL') . "\r\n" . 'X-Mailer: PHP/' . phpversion();
     $headers = preg_replace('#\\$\\{server-name\\}#', $StorageNode && $StorageNode->isValid() ? $StorageNode->get('name') : 'fogserver', $headers);
     //$Email - is just the context of the email put in variable saves repeating
     $email = array("Machine Details:-\n" => '', "\nHostName: " => $Host->get('name'), "\nComputer Model: " => $Inventory->get('sysproduct'), "\nSerial Number: " => $Inventory->get('sysserial'), "\nMAC Address: " => $Host->get('mac')->__toString(), "\n" => '', "\nImage Used: " => $ImagingLog->get('image'), "\nSnapin Used: " => $snpusd, "\n" => '', "\nImaged By (Engineer): " => $engineer, $puser ? "\nImaged For (User): " : '' => $puser ? $puser : '');
     $HookManager->processEvent('EMAIL_ITEMS', array('email' => &$email, 'Host' => &$Host));
     $emailMe = '';
 /** clientCount()
 		Display's the current client count on the activity graph
 	*/
 public function clientcount()
 {
     $ActivityActive = $ActivityQueued = $ActivityTotalClients = 0;
     $StorageNode = new StorageNode($_REQUEST['id']);
     if ($StorageNode && $StorageNode->isValid()) {
         foreach ($this->getClass('StorageNodeManager')->find(array('isEnabled' => 1, 'storageGroupID' => $StorageNode->get('storageGroupID'))) as $SN) {
             if ($SN && $SN->isValid()) {
                 $ActivityActive += $SN->getUsedSlotCount();
                 $ActivityQueued += $SN->getQueuedSlotCount();
                 $ActivityTotalClients += $SN->get('maxClients') - $SN->getUsedSlotCount();
             }
         }
     }
     $data = array('ActivityActive' => $ActivityActive, 'ActivityQueued' => $ActivityQueued, 'ActivitySlots' => $ActivityTotalClients);
     print json_encode($data);
 }