Ejemplo n.º 1
0
function GetShortUrl($url, $server = false)
{
    $show = false;
    $rsData = CBXShortUri::GetList(array(), array());
    while ($arRes = $rsData->Fetch()) {
        if ($arRes["URI"] == $url) {
            $str_SHORT_URI = $arRes["SHORT_URI"];
            $show = true;
        }
    }
    if ($show) {
        return $server ? 'http://' . $_SERVER['SERVER_NAME'] . '/' . $str_SHORT_URI : $str_SHORT_URI;
    } else {
        $str_SHORT_URI = CBXShortUri::GenerateShortUri();
        $arFields = array("URI" => $url, "SHORT_URI" => $str_SHORT_URI, "STATUS" => "301");
        $ID = CBXShortUri::Add($arFields);
        return $server ? 'http://' . $_SERVER['SERVER_NAME'] . '/' . $str_SHORT_URI : $str_SHORT_URI;
    }
}
Ejemplo n.º 2
0
 public static function GenerateShortUri()
 {
     do {
         $uri = "~" . randString(5);
         $bNew = true;
         $uriCrc32 = self::Crc32($uri);
         $dbResult = CBXShortUri::GetList(array(), array("SHORT_URI_CRC" => $uriCrc32));
         while ($arResult = $dbResult->Fetch()) {
             if ($arResult["SHORT_URI"] == $uri) {
                 $bNew = false;
                 break;
             }
         }
     } while (!$bNew);
     return $uri;
 }
Ejemplo n.º 3
0
 /**
  * Returns short link
  *
  * @param string $fullLink
  * @return string
  */
 public static function getShortLink($fullLink)
 {
     $prefix = 'http://' . SITE_SERVER_NAME . '/';
     $rsShortLink = \CBXShortUri::GetList([], ['URI' => $fullLink]);
     if ($shortLink = $rsShortLink->Fetch()) {
         return $prefix . $shortLink['SHORT_URI'];
     }
     $shortLink = \CBXShortUri::GenerateShortUri();
     $id = \CBXShortUri::Add(['URI' => $fullLink, 'SHORT_URI' => $shortLink, 'STATUS' => '301']);
     if ($id) {
         return $prefix . $shortLink;
     }
 }
Ejemplo n.º 4
0
        }
        $ID = IntVal($ID);
        switch ($_REQUEST['action']) {
            case "delete":
                @set_time_limit(0);
                $DB->StartTransaction();
                if (!CBXShortUri::Delete($ID)) {
                    $DB->Rollback();
                    $lAdmin->AddGroupError(GetMessage("SU_AF_del_err"), $ID);
                }
                $DB->Commit();
                break;
        }
    }
}
$rsData = CBXShortUri::GetList(array($by => $order), $arFilter, array("nPageSize" => CAdminResult::GetNavSize($sTableID)));
$rsData = new CAdminResult($rsData, $sTableID);
$rsData->NavStart();
$lAdmin->NavText($rsData->GetNavPrint(GetMessage("SU_AF_nav")));
$lAdmin->AddHeaders(array(array("id" => "ID", "content" => "ID", "sort" => "ID", "align" => "right", "default" => true), array("id" => "MODIFIED", "content" => GetMessage("SU_FLD_MODIFIED"), "sort" => "MODIFIED", "default" => true), array("id" => "URI", "content" => GetMessage("SU_FLD_URI"), "sort" => "URI", "default" => true), array("id" => "SHORT_URI", "content" => GetMessage("SU_FLD_SHORT_URI"), "sort" => "SHORT_URI", "default" => true), array("id" => "STATUS", "content" => GetMessage("SU_FLD_STATUS"), "sort" => "STATUS", "default" => true), array("id" => "LAST_USED", "content" => GetMessage("SU_FLD_LAST_USED"), "sort" => "LAST_USED", "default" => true), array("id" => "NUMBER_USED", "content" => GetMessage("SU_FLD_NUMBER_USED"), "sort" => "NUMBER_USED", "default" => true)));
while ($arRes = $rsData->NavNext(true, "f_")) {
    $row =& $lAdmin->AddRow($f_ID, $arRes);
    /*	if($f_USER_ID > 0)
    		$strUser = "******"/bitrix/admin/user_edit.php?ID=".$f_USER_ID."&amp;lang=".LANG."\" title=\"".GetMessage("subscr_user_edit_title")."\">".$f_USER_ID."</a>] (".$f_USER_LOGIN.") ".$f_USER_NAME." ".$f_USER_LAST_NAME;
    	else
    		$strUser = GetMessage("subscr_adm_anon");
    	$row->AddViewField("USER_ID", $strUser);
    	$row->AddCheckField("ACTIVE");
    	$row->AddInputField("EMAIL", array("size"=>20));
    	$row->AddViewField("EMAIL", '<a href="subscr_edit.php?ID='.$f_ID.'&amp;lang='.LANG.'" title="'.GetMessage("subscr_upd").'">'.$f_EMAIL.'</a>');
    	$row->AddSelectField("FORMAT",array("text"=>GetMessage("SU_AF_TEXT"),"html"=>GetMessage("SU_AF_HTML")));
Ejemplo n.º 5
0
ClearVars();

$str_SHORT_URI = CBXShortUri::GenerateShortUri();

if (isset($_REQUEST["public"]))
{
	$str_URI = $_REQUEST["str_URI"];
	$suri = CBXShortUri::GetList(array(), array("URI_EXACT" => $str_URI));
	if ($a = $suri->Fetch())
		$ID = $a["ID"];
	$str_URI = htmlspecialcharsbx($str_URI);
}

if($ID>0)
{
	$suri = CBXShortUri::GetList(array(), array("ID" => $ID));
	if(!$suri->ExtractFields("str_"))
		$ID=0;
}

if($bVarsFromForm)
	$DB->InitTableVarsForEdit("b_short_uri", "", "str_");

$APPLICATION->SetTitle(($ID>0? GetMessage("SU_EF_title_edit").$ID : GetMessage("SU_EF_title_add")));

require($_SERVER["DOCUMENT_ROOT"]."/freetrix/modules/main/include/prolog_admin_after.php");

$aMenu = array(
	array(
		"TEXT"=>GetMessage("SU_EF_list_text"),
		"TITLE"=>GetMessage("SU_EF_list"),