diff --git a/.gitignore b/.gitignore index 186ed37..69c8696 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ build _PrecompiledDemo *.js.map Demo/WebWorkbench.mswwsettings +packages diff --git a/CkEditorSample/App_Browsers/BrowserFile.browser b/CkEditorSample/App_Browsers/BrowserFile.browser new file mode 100644 index 0000000..46d6386 --- /dev/null +++ b/CkEditorSample/App_Browsers/BrowserFile.browser @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/CkEditorSample/App_Code/AjaxJsonResponse.cs b/CkEditorSample/App_Code/AjaxJsonResponse.cs new file mode 100644 index 0000000..ce16580 --- /dev/null +++ b/CkEditorSample/App_Code/AjaxJsonResponse.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; + +/// +/// Descrizione di riepilogo per AjaxJsonResponse +/// +namespace MB.FileBrowser +{ + public class AjaxJsonResponse + { + public Object data { get; set; } + public int exitcode { get; set; } + public Boolean success { get; set; } + public string msg; + public string command; + + public AjaxJsonResponse() + { + } + } +} \ No newline at end of file diff --git a/CkEditorSample/App_Code/AllowedFilesType.cs b/CkEditorSample/App_Code/AllowedFilesType.cs new file mode 100644 index 0000000..ca35e91 --- /dev/null +++ b/CkEditorSample/App_Code/AllowedFilesType.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; + +/// +/// Theese are allowed extensione for upload +/// +namespace MB.FileBrowser +{ + public class AllowedFilesType + { + const string types = "jpg,jpeg,doc,docx,zip,gif,png,pdf,rar,svg,svgz,xls,xlsx,ppt,pps,pptx"; + public static string[] GetAllowed() + { + string myTypes = (String.IsNullOrEmpty(MagicSession.Current.AllowedFileTypes)) ? types : MagicSession.Current.AllowedFileTypes; + return myTypes.Split(new char[] { ',' }); + + } + } +} \ No newline at end of file diff --git a/CkEditorSample/App_Code/MagicSession.cs b/CkEditorSample/App_Code/MagicSession.cs new file mode 100644 index 0000000..7175b70 --- /dev/null +++ b/CkEditorSample/App_Code/MagicSession.cs @@ -0,0 +1,113 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using IZ.WebFileManager; + +/// +/// Session property to define FileBrowser and allwed privilege +/// +namespace MB.FileBrowser +{ + public class MagicSession + { + public string AllowedFileTypes { get; set; } + + private AccessMode _FileBrowserAccessMode = AccessMode.DenyAll; + public AccessMode FileBrowserAccessMode + { + get + { + return _FileBrowserAccessMode; + } + set + { + _FileBrowserAccessMode = value; + } + } + + public Boolean DenyAll + { + get + { + return FileBrowserAccessMode == AccessMode.DenyAll; + } + set + { + FileBrowserAccessMode = AccessMode.DenyAll; + } + } + + public Boolean ReadOnly + { + get + { + return FileBrowserAccessMode == AccessMode.ReadOnly; + } + set + { + FileBrowserAccessMode = AccessMode.ReadOnly; + } + } + + public Boolean Write + { + get + { + return (FileBrowserAccessMode == AccessMode.Write) || (FileBrowserAccessMode == AccessMode.Delete); + } + set + { + FileBrowserAccessMode = AccessMode.Write; + } + } + + + public Boolean Delete + { + get + { + return FileBrowserAccessMode == AccessMode.Delete; + } + set + { + FileBrowserAccessMode = AccessMode.Delete; + } + } + + private Boolean _default; + + public Boolean Default + { + get { return FileBrowserAccessMode == AccessMode.Default; } + set { FileBrowserAccessMode = AccessMode.Default; } + } + + + public Boolean Upload + { + get { return Write; } + //set { Write = value; } + } + + + private MagicSession() + { + FileBrowserAccessMode = AccessMode.Default; + } + + public static MagicSession Current + { + get + { + MagicSession session = (MagicSession)HttpContext.Current.Session["__FB_MagicSession__"]; + if (session == null) + { + session = new MagicSession(); + HttpContext.Current.Session["__FB_MagicSession__"] = session; + } + return session; + } + } + } +} \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.cs.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.cs.resx new file mode 100644 index 0000000..194b6ec --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.cs.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Uspořádat ikony + + + Nelze dokončit. + + + Nelze najít soubor, zkontrolujte, zda je cesta správná. + + + Nelze přejmenovat soubor: soubor s názvem již existuje. Zadejte jiný název souboru. + + + kopie + + + nový + + + nová složka + + + Datum změny + + + Delete + + + Jste si jisti, že chcete smazat vybrané položky? + + + Cílové složce podsložku zdrojové složky. + + + podrobnosti + + + ke stažení + + + Složka souborů + + + ikony + + + pohyb + + + Je nutné zadat název souboru. + + + Name + + + složka + + + nová složka + + + Název souboru nesmí obsahovat žádný z následujících znaků: \ /:*?"<>| + + + zvolte + + + osvěžit + + + přejmenovat + + + Vyberte cílový adresář + + + velikost + + + předložit + + + Náhledy + + + typ + + + nahoru + + + Přidat další soubor + + + Nahrát soubor + + + odstranit + + + pohled + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.de.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.de.resx new file mode 100644 index 0000000..c4b97b9 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.de.resx @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Sortieren nach + + + Die Operation kann nicht ausgeführt werden. + + + Die Datei kann nicht gefunden werden, Stellen Sie sicher, dass die Pfadangabe korrekt ist.. + + + Kann Datei nicht umbenennen: Eine Datei diesen Namens existiert bereits. Geben Sie einen anderen Dateinamen an. + + + Kopieren + + + Neu + + + Neuer Ordner + + + Änderungsdatum + + + Löschen + + + Sind Sie sicher, dass Sie diese Elemente löschen wollen? + + + The destination folder is a subfolder of the source folder. + + + Details + + + Herunterladen + + + Dateiordner + + + Icons + + + Verschieben + + + Sie müssen einen Dateinamen angeben. + + + Name + + + Ordner + + + Neuer Ordner + + + Folgende Zeichen sind im Dateinamen nicht erlaubt: \/:*?"<>| + + + Wählen + + + Aktualisieren + + + Umbenennen + + + Zielverzeichnis auswählen + + + Größe + + + Abschicken + + + Thumbnails + + + Typ + + + nach Oben + + + Datei hochladen + + + Ansicht + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.es.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.es.resx new file mode 100644 index 0000000..ef913e2 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.es.resx @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Ordenar Iconos Por + + + No se puede completar la operación. + + + No se puede encontrar el archivo, Asegúrese que la ruta es correcta. + + + No se puede renombrar el archivo: Un archivo con el nombre que especificó ya existe. Especifique un nombre de archivo diferente. + + + Copiar + + + Nuevo + + + Nueva Carpeta + + + Fecha Modificada + + + Eliminar + + + ¿Está seguro que desea eliminar los items seleccionados? + + + The destination folder is a subfolder of the source folder. + + + Detalles + + + Descargar + + + Carpeta de Archivo + + + Iconos + + + Mover + + + Debe escribir un nombre de archivo. + + + Nombre + + + Carpeta + + + Nueva Carpeta + + + Un nombre de archivo no puede contener ninguno de los siguientes caracteres: \/:*?"<>| + + + Seleccione + + + Refrescar + + + Renombrar + + + Seleccione el directorio destino + + + Tamaño + + + Submit + + + Vistas en miniatura + + + Tipo + + + Arriba + + + Subir Archivo + + + Ver + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.fr.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.fr.resx new file mode 100644 index 0000000..5a01fff --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.fr.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Trier par + + + L'opération ne peut être accomplie + + + Le fichier est introuvable. Vérifiez le chemin. + + + Un fichier du même nom existe à l'emplacement. Spécifiez un autre nom. + + + Copier + + + Nouveau + + + Nouveau Répertoire + + + Date de modification + + + Supprimer + + + Voulez-vous vraiment supprimer le(s) fichier(s) ? + + + Le répertoire de destination est un sous répertoire du répertoire source. + + + Détails + + + Télécharger + + + Répertoire + + + Icones + + + Déplacer + + + Vous devez entrer un nom de fichier. + + + Nom + + + Répertoire + + + Nouveau Répertoire + + + Un nom de fichier ne peut pas contenir les caratères suivants : \/:*?"<>| + + + Sélectionner + + + Rafraichir + + + Renommer + + + Sélectionnez le répertoire de destination + + + Taille + + + Envoyer + + + Miniatures + + + Type + + + Remonter + + + Télécharger un autre fichier + + + Télécharger un fichier + + + Supprimer + + + Affichage + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.he.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.he.resx new file mode 100644 index 0000000..f86f5a3 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.he.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + סדר סמלים לפי + + + לא ניתן לסיים פעולה. + + + לא ניתן לאתר את הקובץ. ודא כי הנתיב נכונ. + + + אין אפשרות לשנות את שם הקיבץ: קובץ בשם שציינת קיים כבר. ציין שם קובץ שונה. + + + העתק + + + חדש + + + תיקיה חדשה + + + תאריך שינוי + + + מחק + + + האם אתה בטוח שברצונך למחוק את הקבצים? + + + The destination folder is a subfolder of the source folder. + + + פרטים + + + הורד + + + תיקיה + + + סמלים + + + העבר + + + עליך להקליד שם קובץ. + + + שם + + + תיקיה + + + תיקיה חדשה + + + שם קובץ אינו יכול להכיל את התווים הבאים: \/:*?"<>| + + + בחר + + + רעון + + + שנה שם + + + בחר את המקום הרצוי + + + גודל + + + שלח + + + Thumbnails + + + סוג + + + למעלה + + + להעלות קובץ נוסף + + + להעלות קובץ + + + הסר + + + תצוגות + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.it.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.it.resx new file mode 100644 index 0000000..cce3599 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.it.resx @@ -0,0 +1,264 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Organizza Icone per + + + Impossibile completare l'operazione + + + Impossibile trovare il file. Assicurarsi cheil path sia corretto. + + + Impossibile rinominare il file. Esiste già un file con lo stesso nome. Scegliere un nome diverso. + + + Copia + + + Crea + + + Nuova cartella + + + Data Ultima Modifica + + + Cancella + + + Confermi leliminazione dell'elemento selezionato? + + + La cartella di destinazione è contenuta nella catella di origine. + + + Dettagli + + + Scarica il file + + + Cartella File + + + Icone + + + Prerogative utente insufficienti per completare l'operazione + + + Sposta + + + Devi inserire il nome del file + + + Nome + + + Nuovo + + + Nuova Cartella + + + Il nome del file non può contenere i seguenti caratteri: \/:*?"<>| + + + Seleziona + + + Aggiorna + + + Rinomina + + + File + + + Filmati Flash + + + Immagini + + + Risorse multimediali + + + Cerca + + + Seleziona la cartella di destinazione + + + Dimensione + + + Invia + + + Thumbnails + + + Tipo + + + Su + + + Invia un altro file + + + Oppure trascina uno o più file nell'area sovrastante. + + + Il file supera la dimensione massima consentita ({0} Mb) + + + Tipo di file non consentito o non supportato + + + L'utente non ha prerogative sufficienti per completare l'operazione. + + + Invia un file + + + Clicca qui per inviare un file + + + Remove + + + Tipo di file non consentito o non supportato + + + Il file "{0}" è stato inviato con successo. + + + Visualizza + + + Mostra file + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.nl.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.nl.resx new file mode 100644 index 0000000..31f80c3 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.nl.resx @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Sorteren op + + + Bewerking mislukt. + + + Kan het bestand niet vinden. Controleer het opgegeven pad. + + + Bestand hernoemen mislukt, er is al een bestand met de opgegeven naam. + + + Kopieren + + + Nieuw + + + Nieuw Map + + + Mutatiedatum + + + Verwijderen + + + Weet je zeker dat je deze items wilt verwijderen? + + + De doelmap is een submap van de Bronmap. + + + Details + + + Downloaden + + + File Folder + + + Iconen + + + Verplaats + + + Geef een bestandsnaam op. + + + Naam + + + Map + + + Nieuwe Map + + + Bestandsnaam mag niet bestaan uit de volgende tekens: \/:*?"<>| + + + Selecteer + + + Verversen + + + Hernoem + + + Select destination directory + + + Grootte + + + Uploaden + + + Thumbnails + + + Type + + + Omhoog + + + Bestand Uploaden + + + Beeld + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.no.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.no.resx new file mode 100644 index 0000000..ab481dd --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.no.resx @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Arranger ikoner etter + + + Kan ikke fullføre operasjon. + + + Finner ikke filen, sørg for at fil-banen er korrekt. + + + Kan ikke endre navn. Navnet finnes allerede. + + + Kopier + + + Ny + + + Ny katalog + + + Dato endret + + + Slett + + + Er du sikker på at du vil slette de valgte elementene? + + + The destination folder is a subfolder of the source folder. + + + Detaljer + + + Last ned + + + Fil Katalog + + + Ikoner + + + Flytt + + + Du må skrive et filnavn. + + + Navn + + + Katalog + + + Ny katalog + + + Filnavn kan ikke inneholde følgende tegn: \/:*?"<>| + + + Velg + + + Oppdater + + + Nytt navn + + + Velg destinasjons katalog + + + Størrelse + + + Last opp + + + Thumbnails + + + Type + + + Opp + + + Last opp fil + + + Oversikt + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.pt.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.pt.resx new file mode 100644 index 0000000..9acfb41 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.pt.resx @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Organizar ícones por + + + Não foi possível completar a operação. + + + Não foi possível encontrar o arquivo, verifique se o caminho está conrreto. + + + Não foi possível renomear o arquivo: Um arquivo com o nome que você especificou já existe. Especifique um nome de arquivo diferente. + + + Copiar + + + Novo + + + Nova Pasta + + + Data + + + Excluir + + + Você tem certeza que deseja deletar os itens selecionados? + + + The destination folder is a subfolder of the source folder. + + + Detalhes + + + Download + + + Pasta Arquivos + + + Ícones + + + Mover + + + Você deve escrever um nome de arquivo. + + + Nome + + + Pasta + + + Nova Pasta + + + Um nome de arquivo não pode conter os seguintes caracteres: \/:*?"<>| + + + Selecione + + + Atualizar + + + Renomear + + + Selecione o diretório de destino + + + Tamanho + + + Enviar + + + Thumbnails + + + Tipo + + + Sobe + + + Enviar Arquivo + + + Visualizar + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.resx new file mode 100644 index 0000000..95a5645 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.resx @@ -0,0 +1,267 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Arrange Icons By + + + Cannot Complete Operation. + + + Cannot find file, Make sure the path is correct. + + + Cannot rename file: A file with the name you specified already exists. Specify a different file name. + + + Copy + + + New + + + New Folder + + + Date Modified + + + Delete + + + Are you sure you want to delete selected items? + + + The destination folder is a subfolder of the source folder. + + + Details + + + Download + + + File Folder + + + Folder Path + + + Icons + + + Insufficient user privileges to complete the operation + + + Move + + + You must type a file name. + + + Name + + + Folder + + + New Folder + + + A file name cannot contain any of the following characters: \/:*?"<>| + + + Select + + + Refresh + + + Rename + + + Files + + + Flash Movies + + + Images + + + Media + + + Search + + + Select destination directory + + + Size + + + Submit + + + Thumbnails + + + Type + + + Up + + + Upload Another File + + + Or drag 'nd drop one or more files on the above area + + + File exceeds maximum size allowed ({0} mb) + + + File type not allowed or not supported. + + + User does not have sufficient privileges. + + + Upload File + + + Click here to upload a file + + + Remove + + + File type not allowed or not supported. + + + File "{0}" was successfully uploaded + + + View + + + File view + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.ru.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.ru.resx new file mode 100644 index 0000000..f4ce6f5 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.ru.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Упорядочить значки + + + Не удается завершить опеоацию. + + + Не удается найти файл. Проверте правильность пути. + + + Не удается переименовать файл. Файл с указанным именем уже существует. Задайте другое имя. + + + Копировать + + + Создать + + + Новая Папка + + + Изменен + + + Удалить + + + Вы действительно хотите удалить выбранные файлы? + + + The destination folder is a subfolder of the source folder. + + + Таблица + + + Скачать + + + Папка + + + Значки + + + Переместить + + + Следует ввести имя файла. + + + Имя + + + Папку + + + Новая Папка + + + Имя файла не должно содержать следующих знаков: \/:*?"<>| + + + Выберите + + + Обновить + + + Перемеиновать + + + Выбирете папку + + + Размер + + + Отправить + + + Thumbnails + + + Тип + + + Вверх + + + Закачать еще один файл + + + Закачать файл + + + Удалить + + + Вид + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sk.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sk.resx new file mode 100644 index 0000000..94b903d --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sk.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Usporiadať ikony + + + Nemožno dokončiť. + + + Nedá sa nájsť súbor, skontrolujte, či je cesta správna. + + + Nemožno premenovať súbor: súbor s názvom už existuje. Zadajte iný názov súboru. + + + kópie + + + nový + + + Nová zložka + + + dátum zmeny + + + vymazať + + + Ste si istí, že chcete zmazať vybrané položky? + + + Cieľové zložke podpriečinok zdrojovej zložky. + + + podrobnosti + + + na stiahnutie + + + priečinok súborov + + + ikony + + + pohyb + + + Je nutné zadať názov súboru. + + + meno + + + zložka + + + Nová zložka + + + Názov súboru nesmie obsahovať žiadny z nasledujúcich znakov: \ /:*?"<>| + + + Zvoľte + + + osviežiť + + + premenovať + + + Vyberte cieľový adresár + + + veľkosť + + + predložiť + + + Náhľady + + + Typ + + + hore + + + Pridať ďalší súbor + + + Nahrať súbor + + + odstrániť + + + pohľad + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sr-Cyrl-CS.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sr-Cyrl-CS.resx new file mode 100644 index 0000000..9401b30 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sr-Cyrl-CS.resx @@ -0,0 +1,213 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Сортирај иконе по + + + Не могу да завршим операцију. + + + Не могу да пронађем фајл, проверите да ли је путања исправна. + + + Не могу да променим име фајла: Фајл са задатим именом већ постоји. Изаберите друго име фајла. + + + Копирај + + + Нови + + + Датум промене + + + Обриши + + + Јесте ли сигурни да желите да обришете изабране објекте? + + + The destination folder is a subfolder of the source folder. + + + Детаљније + + + Преузми + + + Директоријум + + + Иконе + + + Помери + + + Морате укуцати име фајла. + + + Име + + + Директоријум + + + Нови директоријум + + + Име фајла не може садржати нити један од следећих карактера: \/:*?"<>| + + + Изберете + + + Освежи + + + Преименуј + + + Изабери одредишни директоријум + + + Величина + + + Пошаљи + + + Thumbnails + + + Тип + + + Горе + + + Пошаљи фајл + + + Поглед + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sr-Latn-CS.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sr-Latn-CS.resx new file mode 100644 index 0000000..2c994c4 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sr-Latn-CS.resx @@ -0,0 +1,213 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Sortiraj ikone po + + + Ne mogu da završim operaciju. + + + Ne mogu da pronađem fajl, proverite da li je putanja ispravna. + + + Ne mogu da promenim ime fajla: Fajl sa zadatim imenom već postoji. Izaberite drugo ime fajla. + + + Kopiraj + + + Novi + + + Datum promene + + + Obriši + + + Jeste li sigurni da želite da obrišete izabrane objekte? + + + The destination folder is a subfolder of the source folder. + + + Detaljnije + + + Preuzmi + + + Direktorijum + + + Ikone + + + Pomeri + + + Morate ukucati ime fajla. + + + Ime + + + Direktorijum + + + Novi direktorijum + + + Ime fajla ne može sadržati niti jedan od sledeċih karaktera: \/:*?"<>| + + + Otvori + + + Osveži + + + Preimenuj + + + Izaberi odredišni direktorijum + + + Veličina + + + Pošalji + + + Thumbnails + + + Tip + + + Gore + + + Pošalji fajl + + + Pogled + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sv.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sv.resx new file mode 100644 index 0000000..2e13547 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.sv.resx @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Arrangera ikoner efter + + + Kan inte slutföra operationen + + + Kan inte hitta filen. Försäkra dig om att sökvägen är rätt. + + + Kan inte döpa om filen. Filnamnet finns redan. + + + Kopiera + + + Ny + + + Ny mapp + + + Modifierad + + + Radera + + + Är du säker på att radera de valda filerna? + + + Destinationsmappen är en undermapp till ursprungsmappen. + + + Detaljerad lista + + + Hämta + + + Filmapp + + + Små ikoner + + + Flytta + + + Du måste ange ett filnamn. + + + Namn + + + Mapp + + + Ny mapp + + + Ett filnamn kan inte innehålla några av följande tecken: \/:*?"<>| + + + Välj + + + Uppdatera + + + Byt namn + + + Välj destinationsmapp + + + Storlek + + + Skicka + + + Stora ikoner + + + Typ + + + Upp + + + Ladda upp fil + + + Visa + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.tr.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.tr.resx new file mode 100644 index 0000000..a75e1d7 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.tr.resx @@ -0,0 +1,213 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Simgeleri düzenle + + + İşlem tamamlanmadı. + + + Dosya bulunmadı. Adresin doğruluğunu kontrol ediniz. + + + Dosya adı değiştirilemedi. Aynı isimde başka dosya mevcut. Yeni bir isim belirleyiniz. + + + Kopyala + + + Yeni + + + Güncellenme tarihi + + + Sil + + + Seçili dosyaları silmek istediğinize emin misiniz? + + + The destination folder is a subfolder of the source folder. + + + Detaylar + + + İndir + + + Dosya klasörü + + + Simgeler + + + Taşı + + + Dosya tipi belirtmelisiniz. + + + İsim + + + Klasör + + + Yeni klasör + + + Dosya ismi bu karakterleri içeremez: \/:*?"<>| + + + Seçiniz + + + Yenile + + + Yeniden adlandır + + + Hedef klasör seç + + + Boyut + + + Yükle + + + Thumbnails + + + Tip + + + Yukarı + + + Yüklenecek dosya : + + + Görüntüle + + \ No newline at end of file diff --git a/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.zh-CN.resx b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.zh-CN.resx new file mode 100644 index 0000000..1e45bc6 --- /dev/null +++ b/CkEditorSample/App_GlobalResources/WebFileManager/IZWebFileManagerResource.zh-CN.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 排列圖標 + + + 無法完成作業。 + + + 無法找到文件,確保路徑是正確的。 + + + 無法重命名文件:一個與您指定的已經存在的名稱文件。指定不同的文件名。 + + + 複製 + + + + + + 新建文件夾 + + + 修改日期 + + + 刪除 + + + 你確定要刪除選定項目嗎? + + + 目標文件夾源文件夾的子文件夾。 + + + 詳情 + + + 下載 + + + 文件夾 + + + 圖標 + + + 移動 + + + 您必須輸入一個文件名。 + + + 名稱 + + + 文件夾 + + + 新建文件夾 + + + 文件名不能包含任何以下字符:\/:*?"<>| + + + 选择 + + + 刷新 + + + 重命名 + + + 選擇目標目錄 + + + 尺寸 + + + 提交 + + + 縮略圖 + + + 類型 + + + 最多 + + + 上傳另一個文件 + + + 上傳文件 + + + 刪除 + + + 查看 + + \ No newline at end of file diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003.skin b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003.skin new file mode 100644 index 0000000..79f8ac9 --- /dev/null +++ b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003.skin @@ -0,0 +1,45 @@ +<%@ Register Assembly="IZ.WebFileManager" Namespace="IZ.WebFileManager" TagPrefix="iz" %> + + + + + + + + + + + + \ No newline at end of file diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Copy.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Copy.gif new file mode 100644 index 0000000..e5aa0b5 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Copy.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Delete.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Delete.gif new file mode 100644 index 0000000..70d40b3 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Delete.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/DetailsColumnBG.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/DetailsColumnBG.gif new file mode 100644 index 0000000..98afade Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/DetailsColumnBG.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/DetailsColumnLeftBorder.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/DetailsColumnLeftBorder.gif new file mode 100644 index 0000000..741c93c Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/DetailsColumnLeftBorder.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/FolderUp.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/FolderUp.gif new file mode 100644 index 0000000..efd1f3b Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/FolderUp.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Loader.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Loader.gif new file mode 100644 index 0000000..5f53aad Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Loader.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Move.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Move.gif new file mode 100644 index 0000000..04a9688 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Move.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Rename.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Rename.gif new file mode 100644 index 0000000..382561d Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/Rename.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarBG.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarBG.gif new file mode 100644 index 0000000..4c6dd07 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarBG.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarL.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarL.gif new file mode 100644 index 0000000..bb09f2e Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarL.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarR.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarR.gif new file mode 100644 index 0000000..a4f4fa6 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.Office2003/ToolbarR.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005.skin b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005.skin new file mode 100644 index 0000000..926e0bc --- /dev/null +++ b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005.skin @@ -0,0 +1,29 @@ +<%@ Register Assembly="IZ.WebFileManager" Namespace="IZ.WebFileManager" TagPrefix="iz" %> + + + + + + + \ No newline at end of file diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Copy.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Copy.gif new file mode 100644 index 0000000..e5aa0b5 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Copy.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Delete.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Delete.gif new file mode 100644 index 0000000..70d40b3 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Delete.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/FolderUp.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/FolderUp.gif new file mode 100644 index 0000000..efd1f3b Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/FolderUp.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Move.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Move.gif new file mode 100644 index 0000000..04a9688 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Move.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Rename.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Rename.gif new file mode 100644 index 0000000..382561d Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/Rename.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarBG.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarBG.gif new file mode 100644 index 0000000..72c9b9f Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarBG.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarL.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarL.gif new file mode 100644 index 0000000..cfa72df Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarL.gif differ diff --git a/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarR.gif b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarR.gif new file mode 100644 index 0000000..c06c621 Binary files /dev/null and b/CkEditorSample/App_Themes/Default/IZWebFileManager.VS2005/ToolbarR.gif differ diff --git a/CkEditorSample/Bin/IZ.WebFileManager.dll b/CkEditorSample/Bin/IZ.WebFileManager.dll new file mode 100644 index 0000000..859f4fc Binary files /dev/null and b/CkEditorSample/Bin/IZ.WebFileManager.dll differ diff --git a/CkEditorSample/Bin/IZ.WebFileManager.pdb b/CkEditorSample/Bin/IZ.WebFileManager.pdb new file mode 100644 index 0000000..3461f81 Binary files /dev/null and b/CkEditorSample/Bin/IZ.WebFileManager.pdb differ diff --git a/CkEditorSample/Bin/Interop.Shell32.dll b/CkEditorSample/Bin/Interop.Shell32.dll new file mode 100644 index 0000000..8d359b7 Binary files /dev/null and b/CkEditorSample/Bin/Interop.Shell32.dll differ diff --git a/CkEditorSample/CkEditorSample.aspx b/CkEditorSample/CkEditorSample.aspx new file mode 100644 index 0000000..2e62472 --- /dev/null +++ b/CkEditorSample/CkEditorSample.aspx @@ -0,0 +1,147 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" + CodeFile="CkEditorSample.aspx.cs" Inherits="CkEditorSample" %> + + + + +
+
+

CkEditor +

+

Adding file browsing capability to CKEditor

+
+
+
+ +
+

+ To connect CkEditore to FileBrowser simply add three lines to config.js +

+
+CKEDITOR.editorConfig = function( config ) {
+    config.filebrowserBrowseUrl = 'http:/FileBrowser/FileBrowser.aspx?type=files';
+    config.filebrowserImageBrowseUrl = 'http:/FileBrowser/FileBrowser.aspx?type=images';
+    config.filebrowserFlashBrowseUrl = '/FileBrowser/FileBrowser.aspx?type=flash';
+    .....
+}; 
+
+ The type parameter allow you to filter folders registered with + FileManager (allowed values: files, images, flash, media). + You may omit it for full access to all folders. +
+

+ This sample uses the jQuery adapter. + Note that you have to include both CKEditor and jQuery scripts before including + the adapter. +

+ +
+<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
+<script src="/ckeditor/ckeditor.js"></script>
+<script src="/ckeditor/adapters/jquery.js"></script>
+
+ +

+ Then you can replace HTML elements with a CKEditor instance using the ckeditor() + method. +

+ +
+$( document ).ready( function() {
+	$( 'textarea#editor1' ).ckeditor();
+} );
+
+
+ +

Inline Example

+ +
+

+ Saturn V carrying Apollo 11Apollo + 11 was the spaceflight that landed the first humans, Americans Neil Armstrong and Buzz Aldrin, on the Moon on July 20, 1969, at + 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later + on July 21 at 02:56 UTC. +

+

+ Armstrong spent about three and a half two and a half hours outside the spacecraft, + Aldrin slightly less; and together they collected 47.5 pounds (21.5 kg) of + lunar material for return to Earth. A third member of the mission, Michael Collins, piloted the command + spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the + trip back to Earth. +

+ Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar + surface + and described the event as: +

+
+

One small step for [a] man, one giant leap for mankind.

+
+

+ Apollo 11 effectively ended the Space Race and fulfilled a national goal proposed in + 1961 + by the late U.S. President John F. Kennedy in a speech before the United + States + Congress: +

+
+

+ [...] before this decade is out, of landing a man on the Moon and returning him + safely + to the Earth. +

+
+
+ +
+ +

Classic (iframe-based) Example

+ + + +

+ + + + + +

+ +
+ + + + + + diff --git a/CkEditorSample/CkEditorSample.aspx.cs b/CkEditorSample/CkEditorSample.aspx.cs new file mode 100644 index 0000000..a76b42e --- /dev/null +++ b/CkEditorSample/CkEditorSample.aspx.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +public partial class CkEditorSample : System.Web.UI.Page +{ + protected void Page_Load(object sender, EventArgs e) + { + + } +} \ No newline at end of file diff --git a/CkEditorSample/Content/FileBrowser/FileBrowser.less b/CkEditorSample/Content/FileBrowser/FileBrowser.less new file mode 100644 index 0000000..aaa09fa --- /dev/null +++ b/CkEditorSample/Content/FileBrowser/FileBrowser.less @@ -0,0 +1,44 @@ +@font-face +{ + font-family: "WeblySleek UI Light"; + src: url("/fonts/weblysleekuil.eot?") format("eot"), + url("/fonts/weblysleekuil.woff") format("woff"), + url("/fonts/weblysleekuil.ttf") format("truetype"), + url("/fonts/weblysleekuil.svg#WeblySleekUILight") format("svg"); + font-weight: normal; + font-style: normal; +} + + + +@import url('../bootstrap/variables.less'); +@import url('../metro-bootstrap/variables.less'); +@import url('../bootstrap/mixins.less'); +@import url('../bootstrap/normalize.less'); +@import url('../bootstrap/scaffolding.less'); +@import url('../bootstrap/type.less'); +//@import url('../bootstrap/grid.less'); +@import url('../bootstrap/buttons.less'); +@import url('../bootstrap/modals.less'); +@import url('../bootstrap/close.less'); +@import url('../bootstrap/alerts.less'); + +.upload-group +{ + .clearfix(); + padding: 3px 5px; + + small + { + display: block; + //line-height: 1.9; + margin-top: 3px; + } + + .btn + { + display: block; + float: left; + margin-right: 5px; + } +} diff --git a/CkEditorSample/Content/FileBrowser/css/FileBrowser.css b/CkEditorSample/Content/FileBrowser/css/FileBrowser.css new file mode 100644 index 0000000..b2466f8 --- /dev/null +++ b/CkEditorSample/Content/FileBrowser/css/FileBrowser.css @@ -0,0 +1,1237 @@ +@font-face { + font-family: "WeblySleek UI Light"; + src: url("/fonts/weblysleekuil.eot?") format("eot"), url("/fonts/weblysleekuil.woff") format("woff"), url("/fonts/weblysleekuil.ttf") format("truetype"), url("/fonts/weblysleekuil.svg#WeblySleekUILight") format("svg"); + font-weight: normal; + font-style: normal; +} +/*! normalize.css v3.0.1 | MIT License | git.io/normalize */ +html { + font-family: sans-serif; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + font-size: 2em; + margin: 0.67em 0; +} +mark { + background: #ff0; + color: #000; +} +small { + font-size: 80%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-appearance: textfield; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "WeblySleek UI Light", "Segoe UI", "Segoe WP", "Helvetica Neue", sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333333; + background-color: #ffffff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #428bca; + text-decoration: none; +} +a:hover, +a:focus { + color: #2a6496; + text-decoration: underline; +} +a:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive { + display: block; + width: 100% \9; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 0px; +} +.img-thumbnail { + padding: 4px; + line-height: 1.42857143; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 0px; + -webkit-transition: all 0.2s ease-in-out; + -o-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + width: 100% \9; + max-width: 100%; + height: auto; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eeeeee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: "WeblySleek UI Light", "Helvetica Neue", "Segoe UI", "Segoe WP", sans-serif; + font-weight: 100; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +cite { + font-style: normal; +} +mark, +.mark { + background-color: #f1c40f; + padding: .2em; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777777; +} +.text-primary { + color: #428bca; +} +a.text-primary:hover { + color: #3071a9; +} +.text-success { + color: #3c763d; +} +a.text-success:hover { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #428bca; +} +a.bg-primary:hover { + background-color: #3071a9; +} +.bg-success { + background-color: #2ecc71; +} +a.bg-success:hover { + background-color: #25a25a; +} +.bg-info { + background-color: #3498db; +} +a.bg-info:hover { + background-color: #217dbb; +} +.bg-warning { + background-color: #f1c40f; +} +a.bg-warning:hover { + background-color: #c29d0b; +} +.bg-danger { + background-color: #e74c3c; +} +a.bg-danger:hover { + background-color: #d62c1a; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eeeeee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + list-style: none; + margin-left: -5px; +} +.list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eeeeee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; + text-align: right; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +blockquote:before, +blockquote:after { + content: ""; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +.btn { + display: inline-block; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + border-radius: 0px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus { + color: #333333; + text-decoration: none; +} +.btn:active, +.btn.active { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + pointer-events: none; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default { + color: #333333; + background-color: #ffffff; + border-color: #cccccc; +} +.btn-default:hover, +.btn-default:focus, +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #ffffff; + border-color: #cccccc; +} +.btn-default .badge { + color: #ffffff; + background-color: #333333; +} +.btn-primary { + color: #ffffff; + background-color: #428bca; + border-color: #357ebd; +} +.btn-primary:hover, +.btn-primary:focus, +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #ffffff; + background-color: #3071a9; + border-color: #285e8e; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #428bca; + border-color: #357ebd; +} +.btn-primary .badge { + color: #428bca; + background-color: #ffffff; +} +.btn-success { + color: #ffffff; + background-color: #2ecc71; + border-color: #29b765; +} +.btn-success:hover, +.btn-success:focus, +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #ffffff; + background-color: #25a25a; + border-color: #1e854a; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #2ecc71; + border-color: #29b765; +} +.btn-success .badge { + color: #2ecc71; + background-color: #ffffff; +} +.btn-info { + color: #ffffff; + background-color: #3498db; + border-color: #258cd1; +} +.btn-info:hover, +.btn-info:focus, +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #ffffff; + background-color: #217dbb; + border-color: #1c699d; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #3498db; + border-color: #258cd1; +} +.btn-info .badge { + color: #3498db; + background-color: #ffffff; +} +.btn-warning { + color: #ffffff; + background-color: #f1c40f; + border-color: #dab10d; +} +.btn-warning:hover, +.btn-warning:focus, +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #ffffff; + background-color: #c29d0b; + border-color: #a08209; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #f1c40f; + border-color: #dab10d; +} +.btn-warning .badge { + color: #f1c40f; + background-color: #ffffff; +} +.btn-danger { + color: #ffffff; + background-color: #e74c3c; + border-color: #e43725; +} +.btn-danger:hover, +.btn-danger:focus, +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #ffffff; + background-color: #d62c1a; + border-color: #b62516; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #e74c3c; + border-color: #e43725; +} +.btn-danger .badge { + color: #e74c3c; + background-color: #ffffff; +} +.btn-link { + color: #428bca; + font-weight: normal; + cursor: pointer; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #2a6496; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777777; + text-decoration: none; +} +.btn-lg { + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 0px; +} +.btn-sm { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 0px; +} +.btn-xs { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 0px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.modal-open { + overflow: hidden; +} +.modal { + display: none; + overflow: hidden; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transform: translate3d(0, -25%, 0); + transform: translate3d(0, -25%, 0); + -webkit-transition: -webkit-transform 0.3s ease-out; + -moz-transition: -moz-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} +.modal.in .modal-dialog { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #ffffff; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + background-clip: padding-box; + outline: 0; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000; +} +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; + min-height: 16.42857143px; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} +.close:hover, +.close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 0px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + background-color: #2ecc71; + border-color: #29b74e; + color: #3c763d; +} +.alert-success hr { + border-top-color: #25a245; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + background-color: #3498db; + border-color: #23a1c8; + color: #31708f; +} +.alert-info hr { + border-top-color: #2090b2; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + background-color: #f1c40f; + border-color: #da8f0d; + color: #8a6d3b; +} +.alert-warning hr { + border-top-color: #c27f0b; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + background-color: #e74c3c; + border-color: #e42533; + color: #a94442; +} +.alert-danger hr { + border-top-color: #d61a28; +} +.alert-danger .alert-link { + color: #843534; +} +.upload-group { + padding: 3px 5px; +} +.upload-group:before, +.upload-group:after { + content: " "; + display: table; +} +.upload-group:after { + clear: both; +} +.upload-group small { + display: block; + margin-top: 3px; +} +.upload-group .btn { + display: block; + float: left; + margin-right: 5px; +} diff --git a/CkEditorSample/Content/FileBrowser/css/FileBrowser.min.css b/CkEditorSample/Content/FileBrowser/css/FileBrowser.min.css new file mode 100644 index 0000000..e8ec3a3 --- /dev/null +++ b/CkEditorSample/Content/FileBrowser/css/FileBrowser.min.css @@ -0,0 +1 @@ +@font-face{font-family:"WeblySleek UI Light";src:url("/fonts/weblysleekuil.eot?") format("eot"),url("/fonts/weblysleekuil.woff") format("woff"),url("/fonts/weblysleekuil.ttf") format("truetype"),url("/fonts/weblysleekuil.svg#WeblySleekUILight") format("svg");font-weight:normal;font-style:normal}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"WeblySleek UI Light","Segoe UI","Segoe WP","Helvetica Neue",sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;width:100% \9;max-width:100%;height:auto}.img-rounded{border-radius:0}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:0;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;width:100% \9;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"WeblySleek UI Light","Helvetica Neue","Segoe UI","Segoe WP",sans-serif;font-weight:100;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:normal;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}mark,.mark{background-color:#f1c40f;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#428bca}a.text-primary:hover{color:#3071a9}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#428bca}a.bg-primary:hover{background-color:#3071a9}.bg-success{background-color:#2ecc71}a.bg-success:hover{background-color:#25a25a}.bg-info{background-color:#3498db}a.bg-info:hover{background-color:#217dbb}.bg-warning{background-color:#f1c40f}a.bg-warning:hover{background-color:#c29d0b}.bg-danger{background-color:#e74c3c}a.bg-danger:hover{background-color:#d62c1a}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'— '}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:' —'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#3071a9;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-primary .badge{color:#428bca;background-color:#fff}.btn-success{color:#fff;background-color:#2ecc71;border-color:#29b765}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#25a25a;border-color:#1e854a}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#2ecc71;border-color:#29b765}.btn-success .badge{color:#2ecc71;background-color:#fff}.btn-info{color:#fff;background-color:#3498db;border-color:#258cd1}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#217dbb;border-color:#1c699d}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#3498db;border-color:#258cd1}.btn-info .badge{color:#3498db;background-color:#fff}.btn-warning{color:#fff;background-color:#f1c40f;border-color:#dab10d}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#c29d0b;border-color:#a08209}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f1c40f;border-color:#dab10d}.btn-warning .badge{color:#f1c40f;background-color:#fff}.btn-danger{color:#fff;background-color:#e74c3c;border-color:#e43725}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#d62c1a;border-color:#b62516}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#e74c3c;border-color:#e43725}.btn-danger .badge{color:#e74c3c;background-color:#fff}.btn-link{color:#428bca;font-weight:normal;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:0}.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:0}.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:0}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate3d(0,-25%,0);transform:translate3d(0,-25%,0);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media(min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media(min-width:992px){.modal-lg{width:900px}}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:0}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#2ecc71;border-color:#29b74e;color:#3c763d}.alert-success hr{border-top-color:#25a245}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#3498db;border-color:#23a1c8;color:#31708f}.alert-info hr{border-top-color:#2090b2}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#f1c40f;border-color:#da8f0d;color:#8a6d3b}.alert-warning hr{border-top-color:#c27f0b}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#e74c3c;border-color:#e42533;color:#a94442}.alert-danger hr{border-top-color:#d61a28}.alert-danger .alert-link{color:#843534}.upload-group{padding:3px 5px}.upload-group:before,.upload-group:after{content:" ";display:table}.upload-group:after{clear:both}.upload-group small{display:block;margin-top:3px}.upload-group .btn{display:block;float:left;margin-right:5px} \ No newline at end of file diff --git a/CkEditorSample/Content/bootstrap/alerts.less b/CkEditorSample/Content/bootstrap/alerts.less new file mode 100644 index 0000000..df070b8 --- /dev/null +++ b/CkEditorSample/Content/bootstrap/alerts.less @@ -0,0 +1,68 @@ +// +// Alerts +// -------------------------------------------------- + + +// Base styles +// ------------------------- + +.alert { + padding: @alert-padding; + margin-bottom: @line-height-computed; + border: 1px solid transparent; + border-radius: @alert-border-radius; + + // Headings for larger alerts + h4 { + margin-top: 0; + // Specified for the h4 to prevent conflicts of changing @headings-color + color: inherit; + } + // Provide class for links that match alerts + .alert-link { + font-weight: @alert-link-font-weight; + } + + // Improve alignment and spacing of inner content + > p, + > ul { + margin-bottom: 0; + } + > p + p { + margin-top: 5px; + } +} + +// Dismissible alerts +// +// Expand the right padding and account for the close button's positioning. + +.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. +.alert-dismissible { + padding-right: (@alert-padding + 20); + + // Adjust close link position + .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; + } +} + +// Alternate styles +// +// Generate contextual modifier classes for colorizing the alert. + +.alert-success { + .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text); +} +.alert-info { + .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text); +} +.alert-warning { + .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text); +} +.alert-danger { + .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text); +} diff --git a/CkEditorSample/Content/bootstrap/badges.less b/CkEditorSample/Content/bootstrap/badges.less new file mode 100644 index 0000000..20624f3 --- /dev/null +++ b/CkEditorSample/Content/bootstrap/badges.less @@ -0,0 +1,55 @@ +// +// Badges +// -------------------------------------------------- + + +// Base class +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: @font-size-small; + font-weight: @badge-font-weight; + color: @badge-color; + line-height: @badge-line-height; + vertical-align: baseline; + white-space: nowrap; + text-align: center; + background-color: @badge-bg; + border-radius: @badge-border-radius; + + // Empty badges collapse automatically (not available in IE8) + &:empty { + display: none; + } + + // Quick fix for badges in buttons + .btn & { + position: relative; + top: -1px; + } + .btn-xs & { + top: 0; + padding: 1px 5px; + } + + // Hover state, but only for links + a& { + &:hover, + &:focus { + color: @badge-link-hover-color; + text-decoration: none; + cursor: pointer; + } + } + + // Account for badges in navs + a.list-group-item.active > &, + .nav-pills > .active > a > & { + color: @badge-active-color; + background-color: @badge-active-bg; + } + .nav-pills > li > a > & { + margin-left: 3px; + } +} diff --git a/CkEditorSample/Content/bootstrap/bootstrap.less b/CkEditorSample/Content/bootstrap/bootstrap.less new file mode 100644 index 0000000..61b7747 --- /dev/null +++ b/CkEditorSample/Content/bootstrap/bootstrap.less @@ -0,0 +1,50 @@ +// Core variables and mixins +@import "variables.less"; +@import "mixins.less"; + +// Reset and dependencies +@import "normalize.less"; +@import "print.less"; +@import "glyphicons.less"; + +// Core CSS +@import "scaffolding.less"; +@import "type.less"; +@import "code.less"; +@import "grid.less"; +@import "tables.less"; +@import "forms.less"; +@import "buttons.less"; + +// Components +@import "component-animations.less"; +@import "dropdowns.less"; +@import "button-groups.less"; +@import "input-groups.less"; +@import "navs.less"; +@import "navbar.less"; +@import "breadcrumbs.less"; +@import "pagination.less"; +@import "pager.less"; +@import "labels.less"; +@import "badges.less"; +@import "jumbotron.less"; +@import "thumbnails.less"; +@import "alerts.less"; +@import "progress-bars.less"; +@import "media.less"; +@import "list-group.less"; +@import "panels.less"; +@import "responsive-embed.less"; +@import "wells.less"; +@import "close.less"; + +// Components w/ JavaScript +@import "modals.less"; +@import "tooltip.less"; +@import "popovers.less"; +@import "carousel.less"; + +// Utility classes +@import "utilities.less"; +@import "responsive-utilities.less"; diff --git a/CkEditorSample/Content/bootstrap/breadcrumbs.less b/CkEditorSample/Content/bootstrap/breadcrumbs.less new file mode 100644 index 0000000..cb01d50 --- /dev/null +++ b/CkEditorSample/Content/bootstrap/breadcrumbs.less @@ -0,0 +1,26 @@ +// +// Breadcrumbs +// -------------------------------------------------- + + +.breadcrumb { + padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal; + margin-bottom: @line-height-computed; + list-style: none; + background-color: @breadcrumb-bg; + border-radius: @border-radius-base; + + > li { + display: inline-block; + + + li:before { + content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space + padding: 0 5px; + color: @breadcrumb-color; + } + } + + > .active { + color: @breadcrumb-active-color; + } +} diff --git a/CkEditorSample/Content/bootstrap/button-groups.less b/CkEditorSample/Content/bootstrap/button-groups.less new file mode 100644 index 0000000..7021ecd --- /dev/null +++ b/CkEditorSample/Content/bootstrap/button-groups.less @@ -0,0 +1,240 @@ +// +// Button groups +// -------------------------------------------------- + +// Make the div behave like a button +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; // match .btn alignment given font-size hack above + > .btn { + position: relative; + float: left; + // Bring the "active" button to the front + &:hover, + &:focus, + &:active, + &.active { + z-index: 2; + } + &:focus { + // Remove focus outline when dropdown JS adds it after closing the menu + outline: 0; + } + } +} + +// Prevent double borders when buttons are next to each other +.btn-group { + .btn + .btn, + .btn + .btn-group, + .btn-group + .btn, + .btn-group + .btn-group { + margin-left: -1px; + } +} + +// Optional: Group multiple button groups together for a toolbar +.btn-toolbar { + margin-left: -5px; // Offset the first child's margin + &:extend(.clearfix all); + + .btn-group, + .input-group { + float: left; + } + > .btn, + > .btn-group, + > .input-group { + margin-left: 5px; + } +} + +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} + +// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match +.btn-group > .btn:first-child { + margin-left: 0; + &:not(:last-child):not(.dropdown-toggle) { + .border-right-radius(0); + } +} +// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + .border-left-radius(0); +} + +// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child { + > .btn:last-child, + > .dropdown-toggle { + .border-right-radius(0); + } +} +.btn-group > .btn-group:last-child > .btn:first-child { + .border-left-radius(0); +} + +// On active and open, don't show outline +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} + + +// Sizing +// +// Remix the default button sizing classes into new ones for easier manipulation. + +.btn-group-xs > .btn { &:extend(.btn-xs); } +.btn-group-sm > .btn { &:extend(.btn-sm); } +.btn-group-lg > .btn { &:extend(.btn-lg); } + + +// Split button dropdowns +// ---------------------- + +// Give the line between buttons some depth +.btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; +} + +// The clickable button for toggling the menu +// Remove the gradient and set the same inset shadow as the :active state +.btn-group.open .dropdown-toggle { + .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); + + // Show no shadow for `.btn-link` since it has no other button styles. + &.btn-link { + .box-shadow(none); + } +} + + +// Reposition the caret +.btn .caret { + margin-left: 0; +} +// Carets in other button sizes +.btn-lg .caret { + border-width: @caret-width-large @caret-width-large 0; + border-bottom-width: 0; +} +// Upside down carets for .dropup +.dropup .btn-lg .caret { + border-width: 0 @caret-width-large @caret-width-large; +} + + +// Vertical button groups +// ---------------------- + +.btn-group-vertical { + > .btn, + > .btn-group, + > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; + } + + // Clear floats so dropdown menus can be properly placed + > .btn-group { + &:extend(.clearfix all); + > .btn { + float: none; + } + } + + > .btn + .btn, + > .btn + .btn-group, + > .btn-group + .btn, + > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; + } +} + +.btn-group-vertical > .btn { + &:not(:first-child):not(:last-child) { + border-radius: 0; + } + &:first-child:not(:last-child) { + border-top-right-radius: @border-radius-base; + .border-bottom-radius(0); + } + &:last-child:not(:first-child) { + border-bottom-left-radius: @border-radius-base; + .border-top-radius(0); + } +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) { + > .btn:last-child, + > .dropdown-toggle { + .border-bottom-radius(0); + } +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + .border-top-radius(0); +} + + + +// Justified button groups +// ---------------------- + +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; + > .btn, + > .btn-group { + float: none; + display: table-cell; + width: 1%; + } + > .btn-group .btn { + width: 100%; + } + + > .btn-group .dropdown-menu { + left: auto; + } +} + + +// Checkbox and radio options +// +// In order to support the browser's form validation feedback, powered by the +// `required` attribute, we have to "hide" the inputs via `opacity`. We cannot +// use `display: none;` or `visibility: hidden;` as that also hides the popover. +// This way, we ensure a DOM element is visible to position the popover from. +// +// See https://github.com/twbs/bootstrap/pull/12794 for more. + +[data-toggle="buttons"] > .btn > input[type="radio"], +[data-toggle="buttons"] > .btn > input[type="checkbox"] { + position: absolute; + z-index: -1; + .opacity(0); +} diff --git a/CkEditorSample/Content/bootstrap/buttons.less b/CkEditorSample/Content/bootstrap/buttons.less new file mode 100644 index 0000000..492bdc6 --- /dev/null +++ b/CkEditorSample/Content/bootstrap/buttons.less @@ -0,0 +1,157 @@ +// +// Buttons +// -------------------------------------------------- + + +// Base styles +// -------------------------------------------------- + +.btn { + display: inline-block; + margin-bottom: 0; // For input.btn + font-weight: @btn-font-weight; + text-align: center; + vertical-align: middle; + cursor: pointer; + background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 + border: 1px solid transparent; + white-space: nowrap; + .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base); + .user-select(none); + + &, + &:active, + &.active { + &:focus { + .tab-focus(); + } + } + + &:hover, + &:focus { + color: @btn-default-color; + text-decoration: none; + } + + &:active, + &.active { + outline: 0; + background-image: none; + .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); + } + + &.disabled, + &[disabled], + fieldset[disabled] & { + cursor: not-allowed; + pointer-events: none; // Future-proof disabling of clicks + .opacity(.65); + .box-shadow(none); + } +} + + +// Alternate buttons +// -------------------------------------------------- + +.btn-default { + .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border); +} +.btn-primary { + .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border); +} +// Success appears as green +.btn-success { + .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border); +} +// Info appears as blue-green +.btn-info { + .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border); +} +// Warning appears as orange +.btn-warning { + .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border); +} +// Danger and error appear as red +.btn-danger { + .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border); +} + + +// Link buttons +// ------------------------- + +// Make a button look and behave like a link +.btn-link { + color: @link-color; + font-weight: normal; + cursor: pointer; + border-radius: 0; + + &, + &:active, + &[disabled], + fieldset[disabled] & { + background-color: transparent; + .box-shadow(none); + } + &, + &:hover, + &:focus, + &:active { + border-color: transparent; + } + &:hover, + &:focus { + color: @link-hover-color; + text-decoration: underline; + background-color: transparent; + } + &[disabled], + fieldset[disabled] & { + &:hover, + &:focus { + color: @btn-link-disabled-color; + text-decoration: none; + } + } +} + + +// Button Sizes +// -------------------------------------------------- + +.btn-lg { + // line-height: ensure even-numbered height of button next to large input + .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large); +} +.btn-sm { + // line-height: ensure proper height of button next to small input + .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small); +} +.btn-xs { + .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small); +} + + +// Block button +// -------------------------------------------------- + +.btn-block { + display: block; + width: 100%; +} + +// Vertically space out multiple block buttons +.btn-block + .btn-block { + margin-top: 5px; +} + +// Specificity overrides +input[type="submit"], +input[type="reset"], +input[type="button"] { + &.btn-block { + width: 100%; + } +} diff --git a/CkEditorSample/Content/bootstrap/carousel.less b/CkEditorSample/Content/bootstrap/carousel.less new file mode 100644 index 0000000..1644ddf --- /dev/null +++ b/CkEditorSample/Content/bootstrap/carousel.less @@ -0,0 +1,243 @@ +// +// Carousel +// -------------------------------------------------- + + +// Wrapper for the slide container and indicators +.carousel { + position: relative; +} + +.carousel-inner { + position: relative; + overflow: hidden; + width: 100%; + + > .item { + display: none; + position: relative; + .transition(.6s ease-in-out left); + + // Account for jankitude on images + > img, + > a > img { + &:extend(.img-responsive); + line-height: 1; + } + } + + > .active, + > .next, + > .prev { + display: block; + } + + > .active { + left: 0; + } + + > .next, + > .prev { + position: absolute; + top: 0; + width: 100%; + } + + > .next { + left: 100%; + } + > .prev { + left: -100%; + } + > .next.left, + > .prev.right { + left: 0; + } + + > .active.left { + left: -100%; + } + > .active.right { + left: 100%; + } + +} + +// Left/right controls for nav +// --------------------------- + +.carousel-control { + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: @carousel-control-width; + .opacity(@carousel-control-opacity); + font-size: @carousel-control-font-size; + color: @carousel-control-color; + text-align: center; + text-shadow: @carousel-text-shadow; + // We can't have this transition here because WebKit cancels the carousel + // animation if you trip this while in the middle of another animation. + + // Set gradients for backgrounds + &.left { + #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001)); + } + &.right { + left: auto; + right: 0; + #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5)); + } + + // Hover/focus state + &:hover, + &:focus { + outline: 0; + color: @carousel-control-color; + text-decoration: none; + .opacity(.9); + } + + // Toggles + .icon-prev, + .icon-next, + .glyphicon-chevron-left, + .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + } + .icon-prev, + .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; + } + .icon-next, + .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; + } + .icon-prev, + .icon-next { + width: 20px; + height: 20px; + margin-top: -10px; + font-family: serif; + } + + + .icon-prev { + &:before { + content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) + } + } + .icon-next { + &:before { + content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) + } + } +} + +// Optional indicator pips +// +// Add an unordered list with the following class and add a list item for each +// slide your carousel holds. + +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center; + + li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid @carousel-indicator-border-color; + border-radius: 10px; + cursor: pointer; + + // IE8-9 hack for event handling + // + // Internet Explorer 8-9 does not support clicks on elements without a set + // `background-color`. We cannot use `filter` since that's not viewed as a + // background color by the browser. Thus, a hack is needed. + // + // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we + // set alpha transparency for the best results possible. + background-color: #000 \9; // IE8 + background-color: rgba(0,0,0,0); // IE9 + } + .active { + margin: 0; + width: 12px; + height: 12px; + background-color: @carousel-indicator-active-bg; + } +} + +// Optional captions +// ----------------------------- +// Hidden by default for smaller viewports +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: @carousel-caption-color; + text-align: center; + text-shadow: @carousel-text-shadow; + & .btn { + text-shadow: none; // No shadow for button elements in carousel-caption + } +} + + +// Scale up controls for tablets and up +@media screen and (min-width: @screen-sm-min) { + + // Scale up the controls a smidge + .carousel-control { + .glyphicon-chevron-left, + .glyphicon-chevron-right, + .icon-prev, + .icon-next { + width: 30px; + height: 30px; + margin-top: -15px; + font-size: 30px; + } + .glyphicon-chevron-left, + .icon-prev { + margin-left: -15px; + } + .glyphicon-chevron-right, + .icon-next { + margin-right: -15px; + } + } + + // Show and left align the captions + .carousel-caption { + left: 20%; + right: 20%; + padding-bottom: 30px; + } + + // Move up the indicators + .carousel-indicators { + bottom: 20px; + } +} diff --git a/CkEditorSample/Content/bootstrap/close.less b/CkEditorSample/Content/bootstrap/close.less new file mode 100644 index 0000000..9b4e74f --- /dev/null +++ b/CkEditorSample/Content/bootstrap/close.less @@ -0,0 +1,33 @@ +// +// Close icons +// -------------------------------------------------- + + +.close { + float: right; + font-size: (@font-size-base * 1.5); + font-weight: @close-font-weight; + line-height: 1; + color: @close-color; + text-shadow: @close-text-shadow; + .opacity(.2); + + &:hover, + &:focus { + color: @close-color; + text-decoration: none; + cursor: pointer; + .opacity(.5); + } + + // Additional properties for button version + // iOS requires the button element instead of an anchor tag. + // If you want the anchor version, it requires `href="#"`. + button& { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; + } +} diff --git a/CkEditorSample/Content/bootstrap/code.less b/CkEditorSample/Content/bootstrap/code.less new file mode 100644 index 0000000..baa13df --- /dev/null +++ b/CkEditorSample/Content/bootstrap/code.less @@ -0,0 +1,68 @@ +// +// Code (inline and block) +// -------------------------------------------------- + + +// Inline and block code styles +code, +kbd, +pre, +samp { + font-family: @font-family-monospace; +} + +// Inline code +code { + padding: 2px 4px; + font-size: 90%; + color: @code-color; + background-color: @code-bg; + border-radius: @border-radius-base; +} + +// User input typically entered via keyboard +kbd { + padding: 2px 4px; + font-size: 90%; + color: @kbd-color; + background-color: @kbd-bg; + border-radius: @border-radius-small; + box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); + + kbd { + padding: 0; + font-size: 100%; + box-shadow: none; + } +} + +// Blocks of code +pre { + display: block; + padding: ((@line-height-computed - 1) / 2); + margin: 0 0 (@line-height-computed / 2); + font-size: (@font-size-base - 1); // 14px to 13px + line-height: @line-height-base; + word-break: break-all; + word-wrap: break-word; + color: @pre-color; + background-color: @pre-bg; + border: 1px solid @pre-border-color; + border-radius: @border-radius-base; + + // Account for some code outputs that place code tags in pre tags + code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; + } +} + +// Enable scrollable blocks of code +.pre-scrollable { + max-height: @pre-scrollable-max-height; + overflow-y: scroll; +} diff --git a/CkEditorSample/Content/bootstrap/component-animations.less b/CkEditorSample/Content/bootstrap/component-animations.less new file mode 100644 index 0000000..9400a0d --- /dev/null +++ b/CkEditorSample/Content/bootstrap/component-animations.less @@ -0,0 +1,31 @@ +// +// Component animations +// -------------------------------------------------- + +// Heads up! +// +// We don't use the `.opacity()` mixin here since it causes a bug with text +// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. + +.fade { + opacity: 0; + .transition(opacity .15s linear); + &.in { + opacity: 1; + } +} + +.collapse { + display: none; + + &.in { display: block; } + tr&.in { display: table-row; } + tbody&.in { display: table-row-group; } +} + +.collapsing { + position: relative; + height: 0; + overflow: hidden; + .transition(height .35s ease); +} diff --git a/CkEditorSample/Content/bootstrap/dropdowns.less b/CkEditorSample/Content/bootstrap/dropdowns.less new file mode 100644 index 0000000..3eb7fc0 --- /dev/null +++ b/CkEditorSample/Content/bootstrap/dropdowns.less @@ -0,0 +1,215 @@ +// +// Dropdown menus +// -------------------------------------------------- + + +// Dropdown arrow/caret +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: @caret-width-base solid; + border-right: @caret-width-base solid transparent; + border-left: @caret-width-base solid transparent; +} + +// The dropdown wrapper (div) +.dropdown { + position: relative; +} + +// Prevent the focus on the dropdown toggle when closing dropdowns +.dropdown-toggle:focus { + outline: 0; +} + +// The dropdown menu (ul) +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: @zindex-dropdown; + display: none; // none by default, but block on "open" of the menu + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; // override default ul + list-style: none; + font-size: @font-size-base; + text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) + background-color: @dropdown-bg; + border: 1px solid @dropdown-fallback-border; // IE8 fallback + border: 1px solid @dropdown-border; + border-radius: @border-radius-base; + .box-shadow(0 6px 12px rgba(0,0,0,.175)); + background-clip: padding-box; + + // Aligns the dropdown menu to right + // + // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` + &.pull-right { + right: 0; + left: auto; + } + + // Dividers (basically an hr) within the dropdown + .divider { + .nav-divider(@dropdown-divider-bg); + } + + // Links within the dropdown menu + > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: @line-height-base; + color: @dropdown-link-color; + white-space: nowrap; // prevent links from randomly breaking onto new lines + } +} + +// Hover/Focus state +.dropdown-menu > li > a { + &:hover, + &:focus { + text-decoration: none; + color: @dropdown-link-hover-color; + background-color: @dropdown-link-hover-bg; + } +} + +// Active state +.dropdown-menu > .active > a { + &, + &:hover, + &:focus { + color: @dropdown-link-active-color; + text-decoration: none; + outline: 0; + background-color: @dropdown-link-active-bg; + } +} + +// Disabled state +// +// Gray out text and ensure the hover/focus state remains gray + +.dropdown-menu > .disabled > a { + &, + &:hover, + &:focus { + color: @dropdown-link-disabled-color; + } +} +// Nuke hover/focus effects +.dropdown-menu > .disabled > a { + &:hover, + &:focus { + text-decoration: none; + background-color: transparent; + background-image: none; // Remove CSS gradient + .reset-filter(); + cursor: not-allowed; + } +} + +// Open state for the dropdown +.open { + // Show the menu + > .dropdown-menu { + display: block; + } + + // Remove the outline when :focus is triggered + > a { + outline: 0; + } +} + +// Menu positioning +// +// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown +// menu with the parent. +.dropdown-menu-right { + left: auto; // Reset the default from `.dropdown-menu` + right: 0; +} +// With v3, we enabled auto-flipping if you have a dropdown within a right +// aligned nav component. To enable the undoing of that, we provide an override +// to restore the default dropdown menu alignment. +// +// This is only for left-aligning a dropdown menu within a `.navbar-right` or +// `.pull-right` nav component. +.dropdown-menu-left { + left: 0; + right: auto; +} + +// Dropdown section headers +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: @font-size-small; + line-height: @line-height-base; + color: @dropdown-header-color; + white-space: nowrap; // as with > li > a +} + +// Backdrop to catch body clicks on mobile, etc. +.dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: (@zindex-dropdown - 10); +} + +// Right aligned dropdowns +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} + +// Allow for dropdowns to go bottom up (aka, dropup-menu) +// +// Just add .dropup after the standard .dropdown class and you're set, bro. +// TODO: abstract this so that the navbar fixed styles are not placed here? + +.dropup, +.navbar-fixed-bottom .dropdown { + // Reverse the caret + .caret { + border-top: 0; + border-bottom: @caret-width-base solid; + content: ""; + } + // Different positioning for bottom up menu + .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 1px; + } +} + + +// Component alignment +// +// Reiterate per navbar.less and the modified component alignment there. + +@media (min-width: @grid-float-breakpoint) { + .navbar-right { + .dropdown-menu { + .dropdown-menu-right(); + } + // Necessary for overrides of the default right aligned menu. + // Will remove come v4 in all likelihood. + .dropdown-menu-left { + .dropdown-menu-left(); + } + } +} + diff --git a/CkEditorSample/Content/bootstrap/forms.less b/CkEditorSample/Content/bootstrap/forms.less new file mode 100644 index 0000000..2c5e9bf --- /dev/null +++ b/CkEditorSample/Content/bootstrap/forms.less @@ -0,0 +1,540 @@ +// +// Forms +// -------------------------------------------------- + + +// Normalize non-controls +// +// Restyle and baseline non-control form elements. + +fieldset { + padding: 0; + margin: 0; + border: 0; + // Chrome and Firefox set a `min-width: min-content;` on fieldsets, + // so we reset that to ensure it behaves more like a standard block element. + // See https://github.com/twbs/bootstrap/issues/12359. + min-width: 0; +} + +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: @line-height-computed; + font-size: (@font-size-base * 1.5); + line-height: inherit; + color: @legend-color; + border: 0; + border-bottom: 1px solid @legend-border-color; +} + +label { + display: inline-block; + max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141) + margin-bottom: 5px; + font-weight: bold; +} + + +// Normalize form controls +// +// While most of our form styles require extra classes, some basic normalization +// is required to ensure optimum display with or without those classes to better +// address browser inconsistencies. + +// Override content-box in Normalize (* isn't specific enough) +input[type="search"] { + .box-sizing(border-box); +} + +// Position radios and checkboxes better +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; // IE8-9 + line-height: normal; +} + +// Set the height of file controls to match text inputs +input[type="file"] { + display: block; +} + +// Make range inputs behave like textual form controls +input[type="range"] { + display: block; + width: 100%; +} + +// Make multiple select elements height not fixed +select[multiple], +select[size] { + height: auto; +} + +// Focus for file, radio, and checkbox +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + .tab-focus(); +} + +// Adjust output element +output { + display: block; + padding-top: (@padding-base-vertical + 1); + font-size: @font-size-base; + line-height: @line-height-base; + color: @input-color; +} + + +// Common form controls +// +// Shared size and type resets for form controls. Apply `.form-control` to any +// of the following form controls: +// +// select +// textarea +// input[type="text"] +// input[type="password"] +// input[type="datetime"] +// input[type="datetime-local"] +// input[type="date"] +// input[type="month"] +// input[type="time"] +// input[type="week"] +// input[type="number"] +// input[type="email"] +// input[type="url"] +// input[type="search"] +// input[type="tel"] +// input[type="color"] + +.form-control { + display: block; + width: 100%; + height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border) + padding: @padding-base-vertical @padding-base-horizontal; + font-size: @font-size-base; + line-height: @line-height-base; + color: @input-color; + background-color: @input-bg; + background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 + border: 1px solid @input-border; + border-radius: @input-border-radius; + .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); + .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s"); + + // Customize the `:focus` state to imitate native WebKit styles. + .form-control-focus(); + + // Placeholder + .placeholder(); + + // Disabled and read-only inputs + // + // HTML5 says that controls under a fieldset > legend:first-child won't be + // disabled if the fieldset is disabled. Due to implementation difficulty, we + // don't honor that edge case; we style them as disabled anyway. + &[disabled], + &[readonly], + fieldset[disabled] & { + cursor: not-allowed; + background-color: @input-bg-disabled; + opacity: 1; // iOS fix for unreadable disabled content + } + + // Reset height for `textarea`s + textarea& { + height: auto; + } +} + + +// Search inputs in iOS +// +// This overrides the extra rounded corners on search inputs in iOS so that our +// `.form-control` class can properly style them. Note that this cannot simply +// be added to `.form-control` as it's not specific enough. For details, see +// https://github.com/twbs/bootstrap/issues/11586. + +input[type="search"] { + -webkit-appearance: none; +} + + +// Special styles for iOS temporal inputs +// +// In Mobile Safari, setting `display: block` on temporal inputs causes the +// text within the input to become vertically misaligned. +// As a workaround, we set a pixel line-height that matches the +// given height of the input. Since this fucks up everything else, we have to +// appropriately reset it for Internet Explorer and the size variations. + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="month"] { + line-height: @input-height-base; + // IE8+ misaligns the text within date inputs, so we reset + line-height: @line-height-base ~"\0"; + + &.input-sm { + line-height: @input-height-small; + } + &.input-lg { + line-height: @input-height-large; + } +} + + +// Form groups +// +// Designed to help with the organization and spacing of vertical forms. For +// horizontal forms, use the predefined grid classes. + +.form-group { + margin-bottom: 15px; +} + + +// Checkboxes and radios +// +// Indent the labels to position radios/checkboxes as hanging controls. + +.radio, +.checkbox { + position: relative; + display: block; + min-height: @line-height-computed; // clear the floating input if there is no label text + margin-top: 10px; + margin-bottom: 10px; + + label { + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; + } +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-left: -20px; + margin-top: 4px \9; +} + +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing +} + +// Radios and checkboxes on same line +.radio-inline, +.checkbox-inline { + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; // space out consecutive inline controls +} + +// Apply same disabled cursor tweak as for inputs +// Some special care is needed because