Exemplo n.º 1
0
 function onBeforeUpload(&$package, $upload, $post, $files, &$error)
 {
     $post["collectionId"] = intval($post['collection_id']);
     $this->post = $post;
     if ($post["collectionId"] <= 0) {
         $error = "Bad collection";
         return false;
     } else {
         if (!CMedialib::CanDoOperation("medialib_new_item", $post["collectionId"])) {
             $error = "Access denied";
             return false;
         }
     }
     $package["collectionId"] = $post["collectionId"];
     $package["ml_type"] = $post["ml_type"];
     return true;
 }
Exemplo n.º 2
0
 public static function Delete($ID, $bCurrent, $colId)
 {
     global $DB;
     if ($bCurrent) {
         if (!CMedialib::CanDoOperation('medialib_del_item', $colId)) {
             return false;
         }
         $strSql = "DELETE FROM b_medialib_collection_item WHERE ITEM_ID=" . IntVal($ID) . " AND COLLECTION_ID=" . IntVal($colId);
         $z = $DB->Query($strSql, false, "FILE: " . __FILE__ . "<br> LINE: " . __LINE__);
     } else {
         $arCols = CMedialibItem::GetItemCollections(array('ID' => $ID));
         for ($i = 0, $l = count($arCols); $i < $l; $i++) {
             if (!CMedialib::CanDoOperation('medialib_del_item', $arCols[$i])) {
                 // Check access
                 return false;
             }
         }
         $strSql = "DELETE FROM b_medialib_collection_item WHERE ITEM_ID=" . IntVal($ID);
         $z = $DB->Query($strSql, false, "FILE: " . __FILE__ . "<br> LINE: " . __LINE__);
     }
     CMedialibItem::DeleteEmpty();
     return $z;
 }
Exemplo n.º 3
0
		alert("<?php 
echo GetMessage('FM_ML_UPL_ACCESS_DENIED');
?>
");
}

<?
$strFileMask = '';
$arExt = CMedialib::GetMediaExtentions(false);
for ($i = 0, $l = count($arExt); $i < $l; $i++)
	$strFileMask .= '*.'.CUtil::JSEscape(strtolower($arExt[$i])).';';
$strFileMask = trim($strFileMask, ' ;');

$str = '';
foreach ($res['Collections'] as $id => $col)
	$str .= $col['ID'].': "'.CMedialib::CanDoOperation('medialib_new_item', $col['ID']).'",';

$arCookie = array();
foreach ($_COOKIE as $key => $val)
	$arCookie[] = $key."=".$val."; ";

?>
window.oColAccess = {<?php 
echo trim($str, ', ');
?>
};

//Create JavaScript object that will embed Image Uploader to the page.
var iu = new ImageUploaderWriter("ImageUploaderML", 700, 600);
iu.activeXControlCodeBase = "<?php 
echo $arAppletVersion["activeXControlCodeBase"];
Exemplo n.º 4
0
            $sShowOnly = false;
            if (isset($_REQUEST['admin_mnu_menu_id'])) {
                if ($_REQUEST['admin_mnu_menu_id'] == "menu_fileman_file_" . $site_id . "_") {
                    $sShowOnly = "";
                } elseif (substr($_REQUEST['admin_mnu_menu_id'], 0, strlen("menu_fileman_file_" . $site_id . "_")) == "menu_fileman_file_" . $site_id . "_") {
                    $sShowOnly = substr($_REQUEST['admin_mnu_menu_id'], strlen("menu_fileman_file_" . $site_id . "_"));
                }
            } elseif (isset($_REQUEST['path'])) {
                $sShowOnly = rtrim($_REQUEST['path'], "/");
                $bFullList = true;
            }
            $aMenu["items"][] = array("text" => GetMessage("FILEMAN_MNU_F_AND_F"), "url" => "fileman_admin.php?lang=" . LANG . '&' . $addUrl, "dynamic" => true, "items_id" => "menu_fileman_file_" . $site_id . "_", "module_id" => "fileman", "more_url" => array("fileman_admin.php?lang=" . LANG, "fileman_admin.php?lang=" . LANG . "&" . $addUrl, "fileman_access.php?" . $addUrl, "fileman_admin.php?" . $addUrl, "fileman_file_download.php?" . $addUrl, "fileman_file_edit.php?" . $addUrl, "fileman_html_edit.php?" . $addUrl, "fileman_file_upload.php?" . $addUrl, "fileman_file_view.php?" . $addUrl, "fileman_folder.php?" . $addUrl, "fileman_menu_edit.php?" . $addUrl, "fileman_newfolder.php?" . $addUrl), "title" => GetMessage("FILEMAN_MNU_F_AND_F_TITLE"), "items" => $sShowOnly !== false ? __fileman_mnu_gen(false, $bFullList, $site_id, "", $sShowOnly, array(), false, $arSitesDR_) : array());
        }
    }
}
if (COption::GetOptionString('fileman', "use_medialib", "Y") != "N" && CModule::IncludeModule("fileman") && CMedialib::CanDoOperation('medialib_view_collection', 0, false, true)) {
    if (!is_array($aMenu)) {
        $aMenu = array("parent_menu" => "global_menu_content", "section" => "fileman", "sort" => 100, "text" => GetMessage("FM_MENU_TITLE"), "title" => GetMessage("FM_MENU_DESC"), "url" => "", "icon" => "fileman_menu_icon", "page_icon" => "fileman_page_icon", "items_id" => "menu_fileman", "more_url" => array("fileman_admin.php", "fileman_file_edit.php", "fileman_file_view.php", "fileman_folder.php", "fileman_html_edit.php", "fileman_menu_edit.php", "fileman_newfolder.php", "fileman_rename.php"), "items" => array());
    }
    $arMLTypes = CMedialib::GetTypes();
    $arItemTypes = array();
    for ($i = 0, $l = count($arMLTypes); $i < $l; $i++) {
        $arItemTypes[] = array("text" => htmlspecialcharsex($arMLTypes[$i]["name"]), "url" => "fileman_medialib_admin.php?lang=" . LANGUAGE_ID . "&type=" . $arMLTypes[$i]["id"], "dynamic" => false, "items_id" => "menu_medialib_" . $arMLTypes[$i]["code"], "module_id" => "fileman", "more_url" => array("fileman_medialib_upload.php?lang=" . LANGUAGE_ID . "&type=" . $arMLTypes[$i]["id"], "fileman_medialib_access.php?lang=" . LANGUAGE_ID . "&type=" . $arMLTypes[$i]["id"]));
    }
    $aMenu["items"][] = array("text" => GetMessage("FM_MENU_MEDIALIB"), "title" => GetMessage("FM_MENU_MEDIALIB_TITLE"), "url" => "fileman_medialib_admin.php?lang=" . LANGUAGE_ID, "dynamic" => false, "items_id" => "menu_medialib", "module_id" => "fileman", "more_url" => array("fileman_medialib_upload.php", "fileman_medialib_access.php"), "items" => $arItemTypes);
}
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/fileman/classes/general/sticker.php";
if (CSticker::CanDoOperation('sticker_view')) {
    $aMenuStickers = array("parent_menu" => "global_menu_services", "section" => "stickers", "sort" => 100, "text" => GetMessage("FMST_STICKERS"), "title" => GetMessage("FMST_STICKERS_TITLE"), "url" => "fileman_stickers_admin.php?lang=" . LANG, "icon" => "fileman_sticker_icon", "page_icon" => "fileman_sticker_icon_sections", "items_id" => "menu_stickers", "more_url" => array("fileman_stickers_admin.php"), "items" => array());
    $aMenu = array($aMenu, $aMenuStickers);
}
Exemplo n.º 5
0
	function Init(&$arParams)
	{
		global $USER, $APPLICATION;
		$basePath = '/freetrix/js/fileman/light_editor/';
		$this->Id = (isset($arParams['id']) && strlen($arParams['id']) > 0) ? $arParams['id'] : 'bxlhe'.substr(uniqid(mt_rand(), true), 0, 4);

		$this->cssPath = $basePath."light_editor.css";
		$APPLICATION->SetAdditionalCSS($this->cssPath);

		$this->arJSPath = array(
			$basePath.'le_dialogs.js',
			$basePath.'le_controls.js',
			$basePath.'le_toolbarbuttons.js',
			$basePath.'le_core.js'
		);

		$this->bBBCode = $arParams['BBCode'] === true;
		$this->bRecreate = $arParams['bRecreate'] === true;
		$arJS = Array();
		$arCSS = Array();
		foreach(GetModuleEvents("fileman", "OnBeforeLightEditorScriptsGet", true) as $arEvent)
		{
			$tmp = ExecuteModuleEventEx($arEvent, array($this->Id, $arParams));
			if (!is_array($tmp))
				continue;

			if (is_array($tmp['JS']))
			{
				for($i = 0, $c = count($tmp['JS']); $i < $c; $i++)
				{
					if(file_exists($_SERVER['DOCUMENT_ROOT'].$tmp['JS'][$i]))
						$this->arJSPath[] = $tmp['JS'][$i];
				}
			}
		}

		foreach($this->arJSPath as $path)
		{
			$APPLICATION->AddHeadScript($path);
		}

		//Messages
		$langPath = $_SERVER['DOCUMENT_ROOT'].'/freetrix/modules/fileman/lang/'.LANGUAGE_ID.'/classes/general/light_editor_js.php';
		if(!file_exists($langPath))
			$langPath = $_SERVER['DOCUMENT_ROOT'].'/freetrix/modules/fileman/lang/en/classes/general/light_editor_js.php';
		$this->mess = __IncludeLang($langPath, true, true);
		$this->messOld = array();

		if (!empty($this->mess))
		{
			$this->messOld = array('Image' => $this->mess['Image'], 'Video' => $this->mess['Video'],'ImageSizing' => $this->mess['ImageSizing']);

			$jsMsg = "<script bxrunfirst>LHE_MESS = window.LHE_MESS = ".CUtil::PhpToJSObject($this->messOld)."; (window.BX||top.BX).message(".CUtil::PhpToJSObject($this->mess, false).");</script>";

			$APPLICATION->AddLangJS($jsMsg);

		}

		$this->bAutorized = is_object($USER) && $USER->IsAuthorized();
		$this->bUseFileDialogs = $arParams['bUseFileDialogs'] !== false && $this->bAutorized;
		$this->bUseMedialib = $arParams['bUseMedialib'] !== false && COption::GetOptionString('fileman', "use_medialib", "Y") == "Y" && CMedialib::CanDoOperation('medialib_view_collection', 0);

		$this->bResizable = $arParams['bResizable'] === true;
		$this->bManualResize = $this->bResizable && $arParams['bManualResize'] !== false;
		$this->bAutoResize = $arParams['bAutoResize'] !== false;
		$this->bInitByJS = $arParams['bInitByJS'] === true;
		$this->bSaveOnBlur = $arParams['bSaveOnBlur'] !== false;
		$this->content = $arParams['content'];
		$this->inputName = isset($arParams['inputName']) ? $arParams['inputName'] : 'lha_content';
		$this->inputId = isset($arParams['inputId']) ? $arParams['inputId'] : 'lha_content_id';
		$this->videoSettings = is_array($arParams['videoSettings']) ? $arParams['videoSettings'] : array(
				'maxWidth' => 640,
				'maxHeight' => 480,
				'WMode' => 'transparent',
				'windowless' => true,
				'bufferLength' => 20,
				'skin' => '/freetrix/components/freetrix/player/mediaplayer/skins/freetrix.swf',
				'logo' => ''
			);

		if (!is_array($arParams['arFonts']) || count($arParams['arFonts']) <= 0)
			$arParams['arFonts'] = array('Arial', 'Verdana', 'Times New Roman', 'Courier', 'Tahoma', 'Georgia', 'Optima', 'Impact', 'Geneva', 'Helvetica');

		if (!is_array($arParams['arFontSizes']) || count($arParams['arFontSizes']) <= 0)
			$arParams['arFontSizes'] = array('1' => 'xx-small', '2' => 'x-small', '3' => 'small', '4' => 'medium', '5' => 'large', '6' => 'x-large', '7' => 'xx-large');

		// Tables
		//$this->arJSPath[] = $this->GetActualPath($basePath.'le_table.js');
		$this->jsObjName = (isset($arParams['jsObjName']) && strlen($arParams['jsObjName']) > 0) ? $arParams['jsObjName'] : 'LightHTMLEditor'.$this->Id;

		if ($this->bResizable)
		{
			// Get height user settings
			$userOpt = CUserOptions::GetOption(
				'fileman',
				'LHESize_'.$this->Id,
				array('height' => $arParams['height'])
			);
			$arParams['height'] = intval($userOpt['height']) > 0 ? $userOpt['height'] : $arParams['height'];
		}

		$this->JSConfig = array(
			'id' => $this->Id,
			'content' => $this->content,
			'bBBCode' => $this->bBBCode,
			'bUseFileDialogs' => $this->bUseFileDialogs,
			'bUseMedialib' => $this->bUseMedialib,
			'arSmiles' => $arParams['arSmiles'],
			'arFonts' => $arParams['arFonts'],
			'arFontSizes' => $arParams['arFontSizes'],
			'inputName' => $this->inputName,
			'inputId' => $this->inputId,
			'videoSettings' => $this->videoSettings,
			'bSaveOnBlur' => $this->bSaveOnBlur,
			'bResizable' => $this->bResizable,
			'autoResizeSaveSize' => $arParams['autoResizeSaveSize'] !== false,
			'bManualResize' => $this->bManualResize,
			'bAutoResize' => $this->bAutoResize,
			'bReplaceTabToNbsp' => true,
			'bSetDefaultCodeView' => isset($arParams['bSetDefaultCodeView']) && $arParams['bSetDefaultCodeView'],
			'bBBParseImageSize' => isset($arParams['bBBParseImageSize']) && $arParams['bBBParseImageSize'],
			'smileCountInToolbar' => intVal($arParams['smileCountInToolbar']),
			'bQuoteFromSelection' => isset($arParams['bQuoteFromSelection']) && $arParams['bQuoteFromSelection'],
			'bConvertContentFromBBCodes' => isset($arParams['bConvertContentFromBBCodes']) && $arParams['bConvertContentFromBBCodes'],
			'oneGif' => '/freetrix/images/1.gif',
			'imagePath' => '/freetrix/images/fileman/light_htmledit/'
		);

		// Set editor from visual mode to textarea for mobile devices
		if (!isset($this->JSConfig['bSetDefaultCodeView']) && CLightHTMLEditor::IsMobileDevice())
			$this->JSConfig['bSetDefaultCodeView'] = true;

		if (isset($arParams['width']) && intVal($arParams['width']) > 0)
			$this->JSConfig['width'] = $arParams['width'];
		if (isset($arParams['height']) && intVal($arParams['height']) > 0)
			$this->JSConfig['height'] = $arParams['height'];
		if (isset($arParams['toolbarConfig']))
			$this->JSConfig['toolbarConfig'] = $arParams['toolbarConfig'];
		if (isset($arParams['documentCSS']))
			$this->JSConfig['documentCSS'] = $arParams['documentCSS'];
		if (isset($arParams['fontFamily']))
			$this->JSConfig['fontFamily'] = $arParams['fontFamily'];
		if (isset($arParams['fontSize']))
			$this->JSConfig['fontSize'] = $arParams['fontSize'];
		if (isset($arParams['lineHeight']))
			$this->JSConfig['lineHeight'] = $arParams['lineHeight'];
		if (isset($arParams['bHandleOnPaste']))
			$this->JSConfig['bHandleOnPaste'] = $arParams['bHandleOnPaste'];
		if (isset($arParams['autoResizeOffset']))
			$this->JSConfig['autoResizeOffset'] = $arParams['autoResizeOffset'];
		if (isset($arParams['autoResizeMaxHeight']))
			$this->JSConfig['autoResizeMaxHeight'] = $arParams['autoResizeMaxHeight'];
		if (isset($arParams['controlButtonsHeight']))
			$this->JSConfig['controlButtonsHeight'] = $arParams['controlButtonsHeight'];

		if ($this->bBBCode)
		{
			$this->JSConfig['bParceBBImageSize'] = true;
		}

		if (isset($arParams['ctrlEnterHandler']))
			$this->JSConfig['ctrlEnterHandler'] = $arParams['ctrlEnterHandler'];
	}
Exemplo n.º 6
0
?>
',
			new_item: '<?php 
echo CMedialib::CanDoOperation('medialib_new_item', $parent);
?>
',
			edit_item: '<?php 
echo CMedialib::CanDoOperation('medialib_edit_item', $parent);
?>
',
			del_item: '<?php 
echo CMedialib::CanDoOperation('medialib_del_item', $parent);
?>
',
			access: '<?php 
echo CMedialib::CanDoOperation('medialib_access', $parent);
?>
'
		}
	}
	</script><?
}
elseif ($action == 'del_collection')
{
	$res = CMedialib::DelCollection(intVal($_POST['id']), $_POST['child_cols']);
	?><script>window.bx_req_res = <?php 
echo $res ? 'true' : 'false';
?>
;</script><?
}
elseif ($action == 'edit_item')
Exemplo n.º 7
0
function __CanDoAccess($colId)
{
    return CMedialib::CanDoOperation('medialib_view_collection', $colId) && CMedialib::CanDoOperation('medialib_access', $colId);
}
Exemplo n.º 8
0
	</div>
	<div class="ml-coll-cont" id="ml_coll_cont"></div>
</div>

<div id="ml_no_colection_notice" style="display: none;">
<?php 
echo BeginNote() . GetMessage('ML_NO_COLS_EX') . EndNote();
?>
</div>

<?php 
if ($bCols) {
    ?>
<br />
<table class="multiaction" style = "display:<?php 
    echo CMedialib::CanDoOperation('medialib_del_item', 0) || CMedialib::CanDoOperation('medialib_del_collection', 0) ? 'block' : 'none';
    ?>
">
	<tr class="top">
		<td class="left"><div class="empty"/></td><td><div class="empty"/></td><td class="right"><div class="empty"/></td>
	</tr>
	<tr>
		<td class="left"><div class="empty"/></td>
		<td class="content multi-dis" id="ml_multiaction_cnt">
			<table>
				<tr>
				<td>
					<input type="checkbox" id="ml_action_target" name="ml_action_target" title="<?php 
    echo GetMessage('ML_FOR_ALL_TITLE');
    ?>
"/>