public function setvif() { $filelist = lfile_trim("__path_program_etc/xeninterface.list"); $list = $this->main->getViflist(); foreach ($list as $l) { $filelist = array_push_unique($filelist, $l); } dprintr($filelist); lfile_put_contents("__path_program_etc/xeninterface.list", implode("\n", $filelist)); }
function GetFlistIds($flistString, $allowPages = false, $allowMultipleMatches = true, $failOnEmpty = true) { global $fbcmdPrefs; global $flistMatchArray; global $flistMatchIdString; $unknownNames = array(); $flistMatchArray = array(); $flistFQL = array('FriendId', 'FriendBaseInfo'); $flistItems = explode(',', $flistString); // Pre-process to see if Friend Lists or Pages or Groups are required foreach ($flistItems as $item) { if (substr($item, 0, 1) == $fbcmdPrefs['prefix_friendlist']) { array_push_unique($flistFQL, 'FriendListNames'); array_push_unique($flistFQL, 'FriendListMembers'); } if (substr($item, 0, 1) == $fbcmdPrefs['prefix_page'] || strtoupper($item) == '=PAGES') { array_push_unique($flistFQL, 'PageId'); array_push_unique($flistFQL, 'PageNames'); } if (substr($item, 0, 1) == $fbcmdPrefs['prefix_group']) { array_push_unique($flistFQL, 'GroupNames'); } if (substr($item, 0, 1) == $fbcmdPrefs['prefix_tag']) { array_push_unique($flistFQL, 'PageId'); array_push_unique($flistFQL, 'PageNames'); array_push_unique($flistFQL, 'GroupNames'); } } MultiFQL($flistFQL); global $dataFriendId; global $dataFriendBaseInfo; global $indexFriendBaseInfo; global $fbUser; global $flistChunkCounter; $flistChunkCounter = 0; foreach ($flistItems as $item) { $itemUC = strtoupper($item); // =KEYWORDS ///////////////////////////////////////////////////////////// if (substr($item, 0, 1) == '=') { if ($itemUC == '=ME') { array_push_unique($flistMatchArray, $fbUser); continue; } if ($itemUC == '=ALL') { foreach ($dataFriendId as $fid) { array_push_unique($flistMatchArray, $fid['uid2']); } continue; } if (substr($itemUC, 0, 5) == '=BDAY') { $matchTime = time(); if (preg_match("/=BDAY\\+(\\d+)?\$/", $itemUC, $matches)) { if (isset($matches[1])) { $matchTime += 24 * 60 * 60 * $matches[1]; } else { $matchTime += 24 * 60 * 60; } } if (preg_match("/=BDAY-(\\d+)?\$/", $itemUC, $matches)) { if (isset($matches[1])) { $matchTime -= 24 * 60 * 60 * $matches[1]; } else { $matchTime -= 24 * 60 * 60; } } if (preg_match("/=BDAY=(.+)\$/", $itemUC, $matches)) { $matchTime = strtotime($matches[1]); if (!$matchTime) { FbcmdWarning("Bad BDAY Syntax: [{$item}] using today"); $matchTime = time(); } } $matchDate = date('m/d', $matchTime); foreach ($dataFriendBaseInfo as $fbi) { if (substr($fbi['birthday_date'], 0, 5) == $matchDate) { array_push_unique($flistMatchArray, $fbi['uid']); } } continue; } if ($itemUC == '=ONLINE') { foreach ($dataFriendBaseInfo as $fbi) { if ($fbi['online_presence'] == 'active' || $fbi['online_presence'] == 'idle' && $fbcmdPrefs['online_idle']) { array_push_unique($flistMatchArray, $fbi['uid']); } } continue; } if ($itemUC == '=PAGES') { if (!$allowPages) { global $fbcmdCommand; FbcmdWarning("{$fbcmdCommand} does not support pages: {$item} ignored"); } else { global $dataPageId; foreach ($dataPageId as $page_id) { array_push_unique($flistMatchArray, $page_id['page_id']); } } continue; } FbcmdWarning("Unknown flist entry: {$item}"); continue; } // _FRIEND LIST ////////////////////////////////////////////////////////// if (substr($item, 0, 1) == $fbcmdPrefs['prefix_friendlist']) { global $dataFriendListNames; global $dataFriendListMembers; $flidMatches = FlistMatch($item, true, $dataFriendListNames, 'flid', 'name', $allowMultipleMatches); if (count($flidMatches)) { foreach ($dataFriendListMembers as $flm) { // http://bugs.developers.facebook.com/show_bug.cgi?id=5977 // if (in_array($flm[0],$flidMatches)) { // array_push_unique($flistMatchArray,$flm[1]); // } if (in_array($flm['flid'], $flidMatches)) { array_push_unique($flistMatchArray, $flm['uid']); } } } continue; } // !USERNAME ///////////////////////////////////////////////////////////// if (substr($item, 0, 1) == $fbcmdPrefs['prefix_username']) { $uidMatches = FlistMatch($item, true, $dataFriendBaseInfo, 'uid', 'username', $allowMultipleMatches); array_merge_unique($flistMatchArray, $uidMatches); continue; } // +PAGES //////////////////////////////////////////////////////////////// if (substr($item, 0, 1) == $fbcmdPrefs['prefix_page']) { if (!$allowPages) { global $fbcmdCommand; FbcmdWarning("{$fbcmdCommand} does not support pages: {$item} ignored"); } else { global $dataPageNames; $pidMatches = FlistMatch($item, true, $dataPageNames, 'page_id', 'name', $allowMultipleMatches); array_merge_unique($flistMatchArray, $pidMatches); } continue; } // ~GROUPS /////////////////////////////////////////////////////////////// if (substr($item, 0, 1) == $fbcmdPrefs['prefix_group']) { global $dataGroupNames; global $fbObject; $gidMatches = FlistMatch($item, true, $dataGroupNames, 'gid', 'name', false); if (isset($gidMatches[0])) { $fql = "SELECT uid FROM group_member WHERE gid={$gidMatches[0]}"; try { $fbReturn = $fbObject->api_client->fql_query($fql); TraceReturn($fbReturn); } catch (Exception $e) { FbcmdException($e); } if (!empty($fbReturn)) { foreach ($fbReturn as $u) { $flistMatchArray[] = $u['uid']; } } else { FbcmdWarning("Could Not get Group Members for GROUP {$gidMatches[0]}"); } } continue; } // @TAG FORMAT /////////////////////////////////////////////////////////// if (substr($item, 0, 1) == $fbcmdPrefs['prefix_tag']) { $tagList = MatchTag(substr($item, 1), $allowPages, false); if ($tagList) { array_merge_unique($flistMatchArray, array($tagList[0][0])); } continue; } // REGULAR NAMES ///////////////////////////////////////////////////////// $uidMatches = FlistMatch($item, false, $dataFriendBaseInfo, 'uid', 'name', $allowMultipleMatches); array_merge_unique($flistMatchArray, $uidMatches); } if (count($flistMatchArray) == 0) { if ($failOnEmpty) { if (substr(strtoupper($flistString), 0, 5) == '=BDAY') { print "No Friends With Birthday Matches\n"; exit; } else { FbcmdFatalError("Empty flist: {$flistString}"); } } else { $flistMatchIdString = ''; } } else { $flistMatchIdString = implode(',', $flistMatchArray); } foreach ($flistMatchArray as $id) { if (ProfileName($id) == 'unknown') { $unknownNames[] = $id; } } if (count($unknownNames) > 0) { global $fqlFlistNames; global $keyFlistNames; $fqlFlistNames = 'SELECT id,name FROM profile WHERE id IN (' . implode(',', $unknownNames) . ')'; $keyFlistNames = 'id'; MultiFQL(array('FlistNames')); } return; }
function makeVirtual($class) { $this->__virtual_list = array_push_unique($this->__virtual_list, $class); }
function save_non_existant_image($path) { global $gbl, $sgbl, $login, $ghtml; return; #[FIXME] // We need only the form images, and the normal non form action images need not be saved. if (!csa($path, "list") && !csa($path, "form")) { return; } if ($sgbl->dbg <= 1) { return; } if (lfile_exists(getreal($path))) { return; } $cont = null; $icon = $login->getSpecialObject('sp_specialplay')->icon_name; $file = "__path_program_htmlbase/{$icon}.missing_image.txt"; if (lfile_exists($file)) { $cont = lfile($file); foreach ($cont as $k => &$__c) { $__c = trim($__c); if (!$__c) { unset($cont[$k]); } } } $cont = array_push_unique($cont, $path); $cont = implode("\n", $cont); $cont .= "\n"; lfile_put_contents($file, $cont); }
function formChangeLocationOpenvz() { $location = $this->getLocationlist(); $llist = get_namelist_from_objectlist($location); $nlist = $llist; if (!$nlist) { throw new lxexception('need_locations'); } $this->newlocation = $this->corerootdir; $nlist = array_push_unique($nlist, $this->corerootdir); $vlist['newlocation'] = array('s', $nlist); return $vlist; }
/** * This action enables a disabled extension for the current user. * * System extensions can only be enabled by an administrator. * This action must be reached by a POST request. * * Parameter is: * - e: the extension name (urlencoded). */ public function enableAction() { $url_redirect = array('c' => 'extension', 'a' => 'index'); if (Minz_Request::isPost()) { $ext_name = urldecode(Minz_Request::param('e')); $ext = Minz_ExtensionManager::findExtension($ext_name); if (is_null($ext)) { Minz_Request::bad(_t('feedback.extensions.not_found', $ext_name), $url_redirect); } if ($ext->isEnabled()) { Minz_Request::bad(_t('feedback.extensions.already_enabled', $ext_name), $url_redirect); } $conf = null; if ($ext->getType() === 'system' && FreshRSS_Auth::hasAccess('admin')) { $conf = FreshRSS_Context::$system_conf; } elseif ($ext->getType() === 'user') { $conf = FreshRSS_Context::$user_conf; } else { Minz_Request::bad(_t('feedback.extensions.no_access', $ext_name), $url_redirect); } $res = $ext->install(); if ($res === true) { $ext_list = $conf->extensions_enabled; array_push_unique($ext_list, $ext_name); $conf->extensions_enabled = $ext_list; $conf->save(); Minz_Request::good(_t('feedback.extensions.enable.ok', $ext_name), $url_redirect); } else { Minz_Log::warning('Can not enable extension ' . $ext_name . ': ' . $res); Minz_Request::bad(_t('feedback.extensions.enable.ko', $ext_name, _url('index', 'logs')), $url_redirect); } } Minz_Request::forward($url_redirect, true); }