Psaní příspěvků na blog pomocí Microsoft Word 2013

Teprve dnes jsem náhodně objevil zajímavou funkci MS Word 2013 o které jsem neměl vůbec tušení, totiž psaní článků a jejich publikace přímo na blog, vše rovnou z Wordu. Do teď jsem používal Windows Live Writer, víceméně ze setrvačnosti, ani mě nenapadlo hledat nic jiného, pro moje potřeby je dostačující, ale…. za zkoušku to stojí.

Microsoft Word 2013 umí pracovat s několika typy blogů nativně:

  • Blogger
  • Blog na SharePointu
  • Telligent Community
  • TypePad
  • WordPress

Ano, můj BlogEngine.NET v seznamu podporovaných blogů není, o to více mě překvapilo, že MS přidal volbu Další, kde je možné zvolit přímo API pomocí kterého komunikuje s blogem a na výběr je i standard MetaWebLog, který BlogEngine podporuje.

   

Popořadě, po spuštění Wordu je k dispozici šablona Příspěvek na blog:

   

Po vytvoření nového dokumentu se v ribbonu objeví nová záložka Příspěvek na blog:

   

Přidal jsem účet pomocí Spravovat účty a Nový

Po pokračování s volbou typu blogu Další jsem se dostal na stránku výběru API, kde API zůstává pro BlogEngine.NET natavené na MetaWebLog, adresa URL webu musí být vašeho webu + suffix služby, tedy metaweblog.axd, konkrétně:

Po potvrzení je účet zobrazen v seznamu a můžete jednoduše začít publikovat svoje články!

A zde je výsledek, první článek z Wordu!

Blog přesunut do Azure

Termín předplacení klasického hostingu se blížil konci, rozhodl jsem se proto přesunout svůj malý blog do Azure. Přemýšlel jsem nad tím už delší dobu, ale za celou dobu jsem nenašel žádné rozumné důvody proč to udělat – a v podstatě ani teď nemám. Stávající hosting mi vyhovoval, respektive jsem měl jiné měřítko, nechtěl jsem nic konfigurovat a starat se o to, všechno fungovalo léta a to byla moje spokojenost.

 

Nakonec jsem se rozhoupal:

 

  • přesun mi trval asi 3 hodiny, včetně dat
  • nejvíce mi trvalo přijít na některé ověřovací kroky (doména v Office365, credentials k FTP)
  • všechno jsem dělal ručně, žádné wizady nebo aplikační market na Azure
  • zůstal jsem u BlogEngine.NET
  • v podstatě velice jednoduché

 

Jediné co mám pořád s otazníkem je, kolik celá ta sranda bude měsíčně stát….

  

 

BlogEngine.NET Extension: nastavení data vytvoření a popisku galerie

O původním rozšíření galerie pro BlogEngine.NET načítané z Sharepointu se dočtete zde:

http://www.pavelnovotny.info/post/BlogEngineNET-Extension-zobrazeni-lightbox-galerie-obrazku-ziskane-z-Sharepointu-(WSS-MOSS).aspx

 

Nyní jsem projekt malinko upravil tak, aby bylo možné uložit ke každé galerii popisek a její datum vytvoření, protože v předchozí verzi se jako datum vytvoření zobrazoval pouze datum vytvoření samotné knihovny, nešlo tedy alespoň trošku intuitivně nastavit zpětný datum.

Nyní je to možné v nastavení knihovny:

image

image

Zde je možné stejně jako přes menu akcí povolit přístup k vybrané galerii, nastavit datum pořízení + víceřádkový popis galerie. Výsledné zobrazení je možné si prohlédnout zde:

http://www.pavelnovotny.info/SharepointExtensions/Gallery.aspx

 

Aktualizovaná verze zdrojových souborů a instalačního balíku je opět zde:

http://www.pavelnovotny.info/public/BlogEngineExtensions.zip

BlogEngine.NET Extension: zobrazení lightbox galerie obrázků získané z Sharepointu (WSS/MOSS)

Úvodem bych chtěl upozornit, že tento post byl v úplném počátku motivován soutěží MSDN – „Dokážeš to“, později při vývoji rozšíření jsem si ale uvědomil, že něco takového jsem vlastně stejně potřeboval a v mém případě /možná trošku už šílenství/, kdy Sharepoint používám i pro domácí účely /výpočty příjmů/nákladů domácnosti, daní, katalogu e-books, diskusím v rámci rodiny, sdílení kontaktů atd), se mi velice hodí, protože mohu takto jednoduše bez opuštění domácího portálu publikovat fotografie na internet = a nejen já, ale i další rodinný příslušníci (ty ale radši mají aktivované schvalovací workflow :). Na různých místech kódu je patrné, že jsem si také připravoval půdu pro publikování dokumentů, to jsem do této verze nestihl = což by ale nemuselo této ukázce možné integrace nijak vadit. Tento post se pokusím napsat tak, aby byl pochopitelný i pro neznalce Sharepointu, ale když tak pište.

O čem je Sharepoint nebudu zdlouhavě popisovat a vypůjčím si z webu MS tento odstavec: [more]

Microsoft Windows SharePoint Services je univerzální technologie, která umožňuje organizacím a obchodním jednotkám všech velikostí zvýšit efektivitu obchodních procesů a zlepšit produktivitu týmů. Díky nástrojům pro spolupráci, které uživatelům umožňují zůstat připojeni i za geografickými hranicemi a hranicemi organizace, poskytuje služba Windows SharePoint Services uživatelům přístup k informacím, které potřebují.

http://www.microsoft.com/cze/office/technologies/sharepointtechnology/highlights.mspx

 

V Sharepointu existují knihovny dokumentů specializované pro galerie obrázků/fotek:

Toto rozšíření načítá z této galerie obrázky přes vlastní webservices, která řeší logiku povolení/zákazu přístupu k této galerii obrázku. U každé galerie je možné externí přístup aktivovat v menu Akce:

Menu je dvoustavové, pokud tedy přístup aktivujete, zobrazí se v menu deaktivace (to je realizováno formou CustomAction ve WebControl):

Po povolení přístupu bude galerie ihned dostupná v BlogEngine.NET:

 

V galerii je, už jak titulek tohoto postu napovídá, implementovaný Lightbox 2:

Pokud aktivujete více galerií, jsou zobrazeny na této stránce všechny, seřazeny podle data vytvoření sestupně.

Jednotlivé galerie lze vkládat i do samotného postu, stačí na to jednoduchý zápis přímo do těla postu (je v obrázku, aby se mi také nepřidala galerie):

Stačí tedy copy&paste relativní url adresy k dané SITE.

Není to hezké? 🙂

 

Při inline galerii stále platí, že je použit Lightbox stejně jako na stránce zobrazující všechny galerie, galerie také musí být povolena /bez povolení nebude galerie otevřena/.

Klíčové vlastnosti

  • zobrazuje galerie načítané z Sharepointu
  • skutečná adresa WSS portálu není nikde vidět, obrázky načítá speciální handler
  • obrázky mají primitivní cache na straně BlogEngine v handleru (ten provádí i resizing)
  • zobrazují se pouze explicitně povolené galerie, jiné nejsou dostupné
  • pro zobrazení je použit Lightbox 2
  • demo je na tomto webu
  • dávám k tomu i zdrojové kódy 🙂

Do budoucna bych chtěl přidat i knihovny dokumentů.

Zdrojové kódy

http://www.pavelnovotny.info/public/BlogEngineExtensions.zip

Budete potřebovat Visual Studio 2008 + WSP Builder

Demo

Demo je přímo na tomto webu zde:

http://www.pavelnovotny.info/SharepointExtensions/Gallery.aspx

Ukázka inline galerie je zde:

OFFLINE


Instalace

Nejprve je nutné provést deploy WSP balíčku na Sharepoint server, k tomu jsem připravil dávku „DeploySolutionPackage.cmd“, v té je potřeba změnit akorát url adresu.  Po úspěšné instalaci feature je nutné jí aktivovat na úrovní SITE kolekce:

Hotovo! 🙂 Pokud se teď přesunete do jakékoliv galerie, uvidíte v menu akci pro povolení přístupu z BlogEngine.NET:

Následuje instalace rozšíření do BlogEngine.NET, to je opět jednoduché, stačí kompletní obsah <BlogEngineExtension.zip\BlogEngine> zkopírovat do rootu Vaší aplikace BlogEngine.

Po přihlášení do administrace bude v záložce Extensions nové rozšíření:

Před prvním použitím je nutné toto rozšíření ještě nakonfigurovat, do následující stránky je nutné vložit URL adresu SITE Vašeho Sharepoint portálu.

POZOR: uživatelské jméno ani heslo není nutné vyplňovat, pokud aplikace BlogEngine.NET beží pod účtem uživatele, který má do daného webu přístup. Pokud nemá, počítače například nejsou ve stejné doméně, je nutné specifikovat uživatele ručně /toto řešení je vhodné pouze a jen ve vývojovém prostředí, za každou cenu se vyhněte vyplnění hesla na hostingu !!!/.

I v případě, že máte obě aplikace na stejném severu a nemusíte tedy heslo vyplňovat, důrazně doporučuji použít pro pool nového uživatele, tomu povolit přístup pouze do jednoho webu, určeného pouze pro externí obsah, tedy nikoliv použít uživatele, který může přistupovat do všech webů!!! A i v tomto jednom webu nastavit práva uživatele pouze pro čtení! Nezapomeňte však povolit čtení i na skrytém listu pro konfigurace „/Lists/BlogEngineExtensionLists/AllItems.aspx“

V neposlední řadě si do menu skinu přidejte položku pro zobrazení všech galerii:

<li><a href=“~/SharepointExtensions/Gallery.aspx“ runat=“server“>Galerie</a></li>

 

Kompletní balík včetně zdrojových kódů je zde:

http://www.pavelnovotny.info/public/BlogEngineExtensions.zip