Пример #1
0
function axACWRequestCheckName()
{
    global $wgRequest;
    $sName = $wgRequest->getVal("name");
    $sLang = $wgRequest->getVal("lang");
    $type = $wgRequest->getVal("type");
    $isError = false;
    $sResponse = AutoCreateWiki::checkDomainIsCorrect($sName, $sLang, $type);
    if (empty($sResponse)) {
        $aDomains = AutoCreateWiki::getDomainsLikeOrExact($sName, $sLang, $type);
        if (!empty($aDomains) && is_array($aDomains)) {
            $sResponse = wfMsg('autocreatewiki-similar-wikis');
            $sLike = $sExact = "";
            #--- exact first
            if (!empty($aDomains['exact']) && is_array($aDomains['exact'])) {
                foreach ($aDomains['exact'] as $domain) {
                    $sExact .= "<li><a href=\"http://{$domain->city_domain}/\" target=\"_blank\">{$domain->city_domain}</a></li>";
                }
                if (!empty($sExact)) {
                    $sResponse .= "<ul id='wiki-result-list-exact'>{$sExact}</ul>";
                }
            }
            #--- similar next
            if (!empty($aDomains['like']) && is_array($aDomains['like'])) {
                foreach ($aDomains['like'] as $domain) {
                    $sLike .= "<li><a href=\"http://{$domain->city_domain}/\" target=\"_blank\">{$domain->city_domain}</a></li>";
                }
                if (!empty($sLike)) {
                    $sResponse .= "<ul id='wiki-result-list-like'>{$sLike}</ul>";
                }
            }
            if (!isset($aDomains['exact']) && !isset($aDomains['like']) && isset($aDomains['closed'])) {
                $sResponse = wfMsg('autocreatewiki-violate-policy');
                $isError = true;
            }
        }
    } else {
        $isError = true;
    }
    $aResponse = array('div-body' => $sResponse, 'div-name' => 'wiki-domain-error', 'div-error' => $isError);
    return json_encode($aResponse);
}