Click here to Skip to main content
15,892,537 members
Articles / Web Development / XHTML

Powerful File manager

Rate me:
Please Sign up or sign in to vote.
4.13/5 (12 votes)
27 Jun 2008CPOL4 min read 55.3K   3.7K   65  
A Powerful File manager in pure asp.net
tinyMCEPopup.requireLangPack();

var charmap = [
	[' ',    ' ',  true, 'no-break space'],
	['&',     '&',   true, 'ampersand'],
	['"',    '"',   true, 'quotation mark'],
// finance
	['¢',    '¢',  true, 'cent sign'],
	['€',    '€', true, 'euro sign'],
	['£',   '£',  true, 'pound sign'],
	['¥',     '¥',  true, 'yen sign'],
// signs
	['©',    '©',  true, 'copyright sign'],
	['®',     '®',  true, 'registered sign'],
	['™',   '™', true, 'trade mark sign'],
	['‰',  '‰', true, 'per mille sign'],
	['µ',   'µ',  true, 'micro sign'],
	['·',  '·',  true, 'middle dot'],
	['•',    '•', true, 'bullet'],
	['…',  '…', true, 'three dot leader'],
	['′',   '′', true, 'minutes / feet'],
	['″',   '″', true, 'seconds / inches'],
	['§',    '§',  true, 'section sign'],
	['¶',    '¶',  true, 'paragraph sign'],
	['ß',   'ß',  true, 'sharp s / ess-zed'],
// quotations
	['‹',  '‹', true, 'single left-pointing angle quotation mark'],
	['›',  '›', true, 'single right-pointing angle quotation mark'],
	['«',   '«',  true, 'left pointing guillemet'],
	['»',   '»',  true, 'right pointing guillemet'],
	['‘',   '‘', true, 'left single quotation mark'],
	['’',   '’', true, 'right single quotation mark'],
	['“',   '“', true, 'left double quotation mark'],
	['”',   '”', true, 'right double quotation mark'],
	['‚',   '‚', true, 'single low-9 quotation mark'],
	['„',   '„', true, 'double low-9 quotation mark'],
	['<',      '<',   true, 'less-than sign'],
	['>',      '>',   true, 'greater-than sign'],
	['≤',      '≤', true, 'less-than or equal to'],
	['≥',      '≥', true, 'greater-than or equal to'],
	['–',   '–', true, 'en dash'],
	['—',   '—', true, 'em dash'],
	['¯',    '¯',  true, 'macron'],
	['‾',   '‾', true, 'overline'],
	['¤',  '¤',  true, 'currency sign'],
	['¦',  '¦',  true, 'broken bar'],
	['¨',     '¨',  true, 'diaeresis'],
	['¡',   '¡',  true, 'inverted exclamation mark'],
	['¿',  '¿',  true, 'turned question mark'],
	['ˆ',    'ˆ',  true, 'circumflex accent'],
	['˜',   '˜',  true, 'small tilde'],
	['°',     '°',  true, 'degree sign'],
	['−',   '−', true, 'minus sign'],
	['±',  '±',  true, 'plus-minus sign'],
	['÷',  '÷',  true, 'division sign'],
	['⁄',   '⁄', true, 'fraction slash'],
	['×',   '×',  true, 'multiplication sign'],
	['¹',    '¹',  true, 'superscript one'],
	['²',    '²',  true, 'superscript two'],
	['³',    '³',  true, 'superscript three'],
	['¼',  '¼',  true, 'fraction one quarter'],
	['½',  '½',  true, 'fraction one half'],
	['¾',  '¾',  true, 'fraction three quarters'],
// math / logical
	['ƒ',    'ƒ',  true, 'function / florin'],
	['∫',     '∫', true, 'integral'],
	['∑',     '∑', true, 'n-ary sumation'],
	['∞',   '∞', true, 'infinity'],
	['√',   '√', true, 'square root'],
	['∼',     '∼', false,'similar to'],
	['≅',    '≅', false,'approximately equal to'],
	['≈',   '≈', true, 'almost equal to'],
	['≠',      '≠', true, 'not equal to'],
	['≡',   '≡', true, 'identical to'],
	['∈',    '∈', false,'element of'],
	['∉',   '∉', false,'not an element of'],
	['∋',      '∋', false,'contains as member'],
	['∏',    '∏', true, 'n-ary product'],
	['∧',     '∧', false,'logical and'],
	['∨',      '∨', false,'logical or'],
	['¬',     '¬',  true, 'not sign'],
	['∩',     '∩', true, 'intersection'],
	['∪',     '∪', false,'union'],
	['∂',    '∂', true, 'partial differential'],
	['∀',  '∀', false,'for all'],
	['∃',   '∃', false,'there exists'],
	['∅',   '∅', false,'diameter'],
	['∇',   '∇', false,'backward difference'],
	['∗',  '∗', false,'asterisk operator'],
	['∝',    '∝', false,'proportional to'],
	['∠',     '∠', false,'angle'],
// undefined
	['´',   '´',  true, 'acute accent'],
	['¸',   '¸',  true, 'cedilla'],
	['ª',    'ª',  true, 'feminine ordinal indicator'],
	['º',    'º',  true, 'masculine ordinal indicator'],
	['†',  '†', true, 'dagger'],
	['‡',  '‡', true, 'double dagger'],
// alphabetical special chars
	['À',  'À',  true, 'A - grave'],
	['Á',  'Á',  true, 'A - acute'],
	['Â',   'Â',  true, 'A - circumflex'],
	['Ã',  'Ã',  true, 'A - tilde'],
	['Ä',    'Ä',  true, 'A - diaeresis'],
	['Å',   'Å',  true, 'A - ring above'],
	['Æ',   'Æ',  true, 'ligature AE'],
	['Ç',  'Ç',  true, 'C - cedilla'],
	['È',  'È',  true, 'E - grave'],
	['É',  'É',  true, 'E - acute'],
	['Ê',   'Ê',  true, 'E - circumflex'],
	['Ë',    'Ë',  true, 'E - diaeresis'],
	['Ì',  'Ì',  true, 'I - grave'],
	['Í',  'Í',  true, 'I - acute'],
	['Î',   'Î',  true, 'I - circumflex'],
	['Ï',    'Ï',  true, 'I - diaeresis'],
	['Ð',     'Ð',  true, 'ETH'],
	['Ñ',  'Ñ',  true, 'N - tilde'],
	['Ò',  'Ò',  true, 'O - grave'],
	['Ó',  'Ó',  true, 'O - acute'],
	['Ô',   'Ô',  true, 'O - circumflex'],
	['Õ',  'Õ',  true, 'O - tilde'],
	['Ö',    'Ö',  true, 'O - diaeresis'],
	['Ø',  'Ø',  true, 'O - slash'],
	['Œ',   'Œ',  true, 'ligature OE'],
	['Š',  'Š',  true, 'S - caron'],
	['Ù',  'Ù',  true, 'U - grave'],
	['Ú',  'Ú',  true, 'U - acute'],
	['Û',   'Û',  true, 'U - circumflex'],
	['Ü',    'Ü',  true, 'U - diaeresis'],
	['Ý',  'Ý',  true, 'Y - acute'],
	['Ÿ',    'Ÿ',  true, 'Y - diaeresis'],
	['Þ',   'Þ',  true, 'THORN'],
	['à',  'à',  true, 'a - grave'],
	['á',  'á',  true, 'a - acute'],
	['â',   'â',  true, 'a - circumflex'],
	['ã',  'ã',  true, 'a - tilde'],
	['ä',    'ä',  true, 'a - diaeresis'],
	['å',   'å',  true, 'a - ring above'],
	['æ',   'æ',  true, 'ligature ae'],
	['ç',  'ç',  true, 'c - cedilla'],
	['è',  'è',  true, 'e - grave'],
	['é',  'é',  true, 'e - acute'],
	['ê',   'ê',  true, 'e - circumflex'],
	['ë',    'ë',  true, 'e - diaeresis'],
	['ì',  'ì',  true, 'i - grave'],
	['í',  'í',  true, 'i - acute'],
	['î',   'î',  true, 'i - circumflex'],
	['ï',    'ï',  true, 'i - diaeresis'],
	['ð',     'ð',  true, 'eth'],
	['ñ',  'ñ',  true, 'n - tilde'],
	['ò',  'ò',  true, 'o - grave'],
	['ó',  'ó',  true, 'o - acute'],
	['ô',   'ô',  true, 'o - circumflex'],
	['õ',  'õ',  true, 'o - tilde'],
	['ö',    'ö',  true, 'o - diaeresis'],
	['ø',  'ø',  true, 'o slash'],
	['œ',   'œ',  true, 'ligature oe'],
	['š',  'š',  true, 's - caron'],
	['ù',  'ù',  true, 'u - grave'],
	['ú',  'ú',  true, 'u - acute'],
	['û',   'û',  true, 'u - circumflex'],
	['ü',    'ü',  true, 'u - diaeresis'],
	['ý',  'ý',  true, 'y - acute'],
	['þ',   'þ',  true, 'thorn'],
	['ÿ',    'ÿ',  true, 'y - diaeresis'],
    ['Α',   'Α',  true, 'Alpha'],
	['Β',    'Β',  true, 'Beta'],
	['Γ',   'Γ',  true, 'Gamma'],
	['Δ',   'Δ',  true, 'Delta'],
	['Ε', 'Ε',  true, 'Epsilon'],
	['Ζ',    'Ζ',  true, 'Zeta'],
	['Η',     'Η',  true, 'Eta'],
	['Θ',   'Θ',  true, 'Theta'],
	['Ι',    'Ι',  true, 'Iota'],
	['Κ',   'Κ',  true, 'Kappa'],
	['Λ',  'Λ',  true, 'Lambda'],
	['Μ',      'Μ',  true, 'Mu'],
	['Ν',      'Ν',  true, 'Nu'],
	['Ξ',      'Ξ',  true, 'Xi'],
	['Ο', 'Ο',  true, 'Omicron'],
	['Π',      'Π',  true, 'Pi'],
	['Ρ',     'Ρ',  true, 'Rho'],
	['Σ',   'Σ',  true, 'Sigma'],
	['Τ',     'Τ',  true, 'Tau'],
	['Υ', 'Υ',  true, 'Upsilon'],
	['Φ',     'Φ',  true, 'Phi'],
	['Χ',     'Χ',  true, 'Chi'],
	['Ψ',     'Ψ',  true, 'Psi'],
	['Ω',   'Ω',  true, 'Omega'],
	['α',   'α',  true, 'alpha'],
	['β',    'β',  true, 'beta'],
	['γ',   'γ',  true, 'gamma'],
	['δ',   'δ',  true, 'delta'],
	['ε', 'ε',  true, 'epsilon'],
	['ζ',    'ζ',  true, 'zeta'],
	['η',     'η',  true, 'eta'],
	['θ',   'θ',  true, 'theta'],
	['ι',    'ι',  true, 'iota'],
	['κ',   'κ',  true, 'kappa'],
	['λ',  'λ',  true, 'lambda'],
	['μ',      'μ',  true, 'mu'],
	['ν',      'ν',  true, 'nu'],
	['ξ',      'ξ',  true, 'xi'],
	['ο', 'ο',  true, 'omicron'],
	['π',      'π',  true, 'pi'],
	['ρ',     'ρ',  true, 'rho'],
	['ς',  'ς',  true, 'final sigma'],
	['σ',   'σ',  true, 'sigma'],
	['τ',     'τ',  true, 'tau'],
	['υ', 'υ',  true, 'upsilon'],
	['φ',     'φ',  true, 'phi'],
	['χ',     'χ',  true, 'chi'],
	['ψ',     'ψ',  true, 'psi'],
	['ω',   'ω',  true, 'omega'],
// symbols
	['ℵ', 'ℵ', false,'alef symbol'],
	['ϖ',     'ϖ',  false,'pi symbol'],
	['ℜ',    'ℜ', false,'real part symbol'],
	['ϑ','ϑ',  false,'theta symbol'],
	['ϒ',   'ϒ',  false,'upsilon - hook symbol'],
	['℘',  '℘', false,'Weierstrass p'],
	['ℑ',   'ℑ', false,'imaginary part'],
// arrows
	['←',    '←', true, 'leftwards arrow'],
	['↑',    '↑', true, 'upwards arrow'],
	['→',    '→', true, 'rightwards arrow'],
	['↓',    '↓', true, 'downwards arrow'],
	['↔',    '↔', true, 'left right arrow'],
	['↵',   '↵', false,'carriage return'],
	['⇐',    '⇐', false,'leftwards double arrow'],
	['⇑',    '⇑', false,'upwards double arrow'],
	['⇒',    '⇒', false,'rightwards double arrow'],
	['⇓',    '⇓', false,'downwards double arrow'],
	['⇔',    '⇔', false,'left right double arrow'],
	['∴',  '∴', false,'therefore'],
	['⊂',     '⊂', false,'subset of'],
	['⊃',     '⊃', false,'superset of'],
	['⊄',    '⊄', false,'not a subset of'],
	['⊆',    '⊆', false,'subset of or equal to'],
	['⊇',    '⊇', false,'superset of or equal to'],
	['⊕',   '⊕', false,'circled plus'],
	['⊗',  '⊗', false,'circled times'],
	['⊥',    '⊥', false,'perpendicular'],
	['⋅',    '⋅', false,'dot operator'],
	['⌈',   '⌈', false,'left ceiling'],
	['⌉',   '⌉', false,'right ceiling'],
	['⌊',  '⌊', false,'left floor'],
	['⌋',  '⌋', false,'right floor'],
	['⟨',    '〈', false,'left-pointing angle bracket'],
	['⟩',    '〉', false,'right-pointing angle bracket'],
	['◊',     '◊', true,'lozenge'],
	['♠',  '♠', false,'black spade suit'],
	['♣',   '♣', true, 'black club suit'],
	['♥',  '♥', true, 'black heart suit'],
	['♦',   '♦', true, 'black diamond suit'],
	[' ',    ' ', false,'en space'],
	[' ',    ' ', false,'em space'],
	[' ',  ' ', false,'thin space'],
	['‌',    '‌', false,'zero width non-joiner'],
	['‍',     '‍', false,'zero width joiner'],
	['‎',     '‎', false,'left-to-right mark'],
	['‏',     '‏', false,'right-to-left mark'],
	['­',     '­',  false,'soft hyphen']
];

tinyMCEPopup.onInit.add(function() {
	tinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML());
});

function renderCharMapHTML() {
	var charsPerRow = 20, tdWidth=20, tdHeight=20, i;
	var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';
	var cols=-1;

	for (i=0; i<charmap.length; i++) {
		if (charmap[i][2]==true) {
			cols++;
			html += ''
				+ '<td class="charmap">'
				+ '<a onmouseover="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" onfocus="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" href="javascript:void(0)" onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + '">'
				+ charmap[i][1]
				+ '</a></td>';
			if ((cols+1) % charsPerRow == 0)
				html += '</tr><tr height="' + tdHeight + '">';
		}
	 }

	if (cols % charsPerRow > 0) {
		var padd = charsPerRow - (cols % charsPerRow);
		for (var i=0; i<padd-1; i++)
			html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';
	}

	html += '</tr></table>';

	return html;
}

function insertChar(chr) {
	tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');

	// Refocus in window
	if (tinyMCEPopup.isWindow)
		window.focus();

	tinyMCEPopup.editor.focus();
	tinyMCEPopup.close();
}

function previewChar(codeA, codeB, codeN) {
	var elmA = document.getElementById('codeA');
	var elmB = document.getElementById('codeB');
	var elmV = document.getElementById('codeV');
	var elmN = document.getElementById('codeN');

	if (codeA=='#160;') {
		elmV.innerHTML = '__';
	} else {
		elmV.innerHTML = '&' + codeA;
	}

	elmB.innerHTML = '&amp;' + codeA;
	elmA.innerHTML = '&amp;' + codeB;
	elmN.innerHTML = codeN;
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Austria Austria
I am Mohsen Ahmadian,
I was born in Tehran (capital city of Iran), I live in Vienna
I am a freelancer and a web developer
I Love Codeproject and C++, Java, C#, PHP
if you found my articles are good, buy a coffee for me
https://www.buymeacoffee.com/mohsenahmadian

Comments and Discussions