Esempio n. 1
0
            echo " - skipping\n";
        } else {
            echo " - removing bogus user_group entry...";
            $evil = User_group::staticGet('id', $group->id);
            $evil->delete();
            echo "  ok\n";
        }
    }
}
echo "\n";
// Fallback?
echo "Checking for bogus profiles blocking local users/groups by URI pattern match...\n";
$oprofile = new Ostatus_profile();
$marker = mt_rand(31337, 31337000);
$profileTemplate = common_local_url('userbyid', array('id' => $marker));
$encProfile = $oprofile->escape($profileTemplate, true);
$encProfile = str_replace($marker, '%', $encProfile);
echo "  LIKE '{$encProfile}'\n";
$groupTemplate = common_local_url('groupbyid', array('id' => $marker));
$encGroup = $oprofile->escape($groupTemplate, true);
$encGroup = str_replace($marker, '%', $encGroup);
echo "  LIKE '{$encGroup}'\n";
$sql = "SELECT * FROM ostatus_profile WHERE uri LIKE '%s' OR uri LIKE '%s'";
$oprofile->query(sprintf($sql, $encProfile, $encGroup));
$count = $oprofile->N;
echo "Found {$count}...\n";
while ($oprofile->fetch()) {
    $uri = $oprofile->uri;
    if (preg_match('!/group/(\\d+)/id!', $oprofile->uri, $matches)) {
        $id = intval($matches[1]);
        $group = Local_group::staticGet('group_id', $id);