%
'dBlog 2.0 CMS Open Source
'Versione file 2.0.0
'FUNZIONE: questo script si occupa di visualizzare il singolo articolo (permalink)
%>
<%
Sub Contenuto()
%>
<%
Dim SQLArticoli, RSArticoli, SQLAggiornaArticoli, RSAggiornaArticoli, FID, SQLCommenti, RSCommenti, ArticoloTrovato
'Effettuo il controllo sul parametro ID
If Request.QueryString("articolo") <> "" AND Request.QueryString("articolo") <> "0" AND IsNumeric(Request.QueryString("articolo")) = True Then
FID = Request.QueryString("articolo")
Else
'Gestione della cache dei motori di ricerca dopo la modifica del parametro ID
If Request.QueryString("id") <> "" AND Request.QueryString("id") <> "0" AND IsNumeric(Request.QueryString("id")) = True Then
FID = Request.QueryString("id")
Else
FID = 0
End If
End If
'Effettuo la ricerca negli articoli per ID
SQLArticoli = " SELECT Articoli.ID, Articoli.Sezione, Count(Commenti.ID) AS ConteggioID, Articoli.Titolo, Articoli.Autore, Articoli.Data, Articoli.Ora, Articoli.Testo, Articoli.Letture, Articoli.Podcast FROM [Commenti] RIGHT JOIN [Articoli] ON Commenti.IDArticolo = Articoli.ID WHERE Articoli.Data <= '"& DataToStr(Date()) &"' AND Articoli.ID = "& FID &" AND NOT Articoli.Bozza GROUP BY Articoli.ID, Articoli.Sezione, Articoli.Titolo, Articoli.Autore, Articoli.Data, Articoli.Ora, Articoli.Testo, Articoli.Letture, Articoli.Podcast ORDER BY Articoli.Data DESC, Articoli.Ora DESC"
Set RSArticoli = Server.CreateObject("ADODB.Recordset")
RSArticoli.Open SQLArticoli, Conn, 1, 3
'Visualizzo gli eventuali risultati
ArticoloTrovato = False
If NOT RSArticoli.EOF Then
Do While NOT RSArticoli.EOF
If Now() > cDate(StrToData(RSArticoli("Data")) & " " & StrToOra(RSArticoli("Ora"))) Then
ArticoloTrovato = True
%>
<%=RSArticoli("Titolo")%>
<%=Contributo_Di%>
"><%=RSArticoli("Autore")%> <%=Pubblicato_il%> <%If DataToStr(Date()) = RSArticoli("Data") Then%>
<%=StrToData(RSArticoli("Data"))%><%Else%><%=StrToData(RSArticoli("Data"))%><%End If%> <%=Pubblicato_alle%> <%=StrToOra(RSArticoli("Ora"))%>, <%=Pubblicato_In%>
"><%=RSArticoli("Sezione")%>, <%=Pubblicato_Clic%> <%=RSArticoli("Letture")%> <%=Pubblicato_Clic_chiudi%>
<%=Replace(FileToVar(Path_DirPublic & RSArticoli("Testo"), 0), Tag_Trailer, "")%>
<%
If RSArticoli("Podcast") <> "" AND NOT IsNull(RSArticoli("Podcast")) Then
Call PodcastPlayer(RSArticoli("Podcast"), RSArticoli("Podcast"))
End If
%>
<%
End If
RSArticoli.MoveNext
Loop
If ArticoloTrovato = False Then
%>
<%=Errore_Articolo_NonTrovato%>
<%
Else
If NOT Abilita_PopupCommenti Then
'Se i commenti sono abilitati
If Abilita_Commenti Then
%>
<%
'Cerco i commenti relativi all'articolo richiesto
SQLCommenti = " SELECT * FROM [Commenti] WHERE Commenti.IDArticolo = "& FID &" ORDER BY [Data] ASC, [Ora] ASC "
Set RSCommenti = Server.CreateObject("ADODB.Recordset")
RSCommenti.Open SQLCommenti, Conn, 1, 3
'E visualizzo gli eventuali risultati
If NOT RSCommenti.EOF Then
I = 0
Do While NOT RSCommenti.EOF
I = I + 1
%>
<%=RSCommenti("Testo")%>
<%=Contributo_Di%>
<%
If RSCommenti("Link") <> "" Then
If Abilita_NoFollow Then
Response.Write "
"& RSCommenti("Autore") &""
Else
Response.Write "
"& RSCommenti("Autore") &""
End If
Else
Response.Write "
"& RSCommenti("Autore") &""
End If
%>
<%=Inviato_il%> <%=StrToData(RSCommenti("Data"))%> <%=Inviato_alle%> <%=StrToOra(RSCommenti("Ora"))%><%=Inviato_chiudi%>
<%
RSCommenti.MoveNext
Loop
Else
%>
<%=Errore_Commento_NonTrovato%>
<%
End If
Set RSCommenti = Nothing
%>
<%=Testo_Disclaimer_Commenti%>
<%
Else
%>
<%=Errore_Commenti_NonAbilitati%>
<%
End If
End If
'Ed aggiorno il numero di hit per l'articolo
SQLAggiornaArticoli = " UPDATE [Articoli] SET Articoli.Letture = Articoli.Letture + 1 WHERE Articoli.ID = "& FID &" AND NOT Articoli.Bozza "
Set RSAggiornaArticoli = Server.CreateObject("ADODB.Recordset")
RSAggiornaArticoli.Open SQLAggiornaArticoli, Conn, 1, 3
Set RSAggiornaArticoli = Nothing
End If
Else
%>
<%=Errore_Articolo_NonTrovato%>
<%
End If
End Sub
'Generazione dinamica di Titolo, Meta Keyword e Meta Description
Dim SQLArticoli, RSArticoli, FID, METATitleDinamicoPagina, METAKeywordDinamicoPagina, METADescriptionDinamicoPagina
'Effettuo il controllo sul parametro ID
If Request.QueryString("articolo") <> "" AND Request.QueryString("articolo") <> "0" AND IsNumeric(Request.QueryString("articolo")) = True Then
FID = Request.QueryString("articolo")
Else
'Gestione della cache dei motori di ricerca dopo la modifica del parametro ID
If Request.QueryString("id") <> "" AND Request.QueryString("id") <> "0" AND IsNumeric(Request.QueryString("id")) = True Then
FID = Request.QueryString("id")
Else
FID = 0
End If
End If
'Effettuo la ricerca negli articoli per ID
SQLArticoli = " SELECT Articoli.ID, Articoli.Sezione, Count(Commenti.ID) AS ConteggioID, Articoli.Titolo, Articoli.Autore, Articoli.Data, Articoli.Ora, Articoli.Testo, Articoli.Letture FROM [Commenti] RIGHT JOIN [Articoli] ON Commenti.IDArticolo = Articoli.ID WHERE Articoli.Data & Articoli.Ora <= '"& DataToStr(Date()) & OraToStr(Time()) &"' AND Articoli.ID = "& FID &" AND NOT Articoli.Bozza GROUP BY Articoli.ID, Articoli.Sezione, Articoli.Titolo, Articoli.Autore, Articoli.Data, Articoli.Ora, Articoli.Testo, Articoli.Letture ORDER BY Articoli.Data DESC, Articoli.Ora DESC"
Set RSArticoli = Server.CreateObject("ADODB.Recordset")
RSArticoli.Open SQLArticoli, Conn, 1, 3
If NOT RSArticoli.EOF Then
RSArticoli.MoveFirst
METATitleDinamicoPagina = RSArticoli("Titolo")
METAKeywordDinamicoPagina = EstrapolaKeyword(Replace(FileToVar(Path_DirPublic & RSArticoli("Testo"), 0), Tag_Trailer, ""))
METADescriptionDinamicoPagina = RSArticoli("Titolo")
RSArticoli.MoveFirst
Else
METATitleDinamicoPagina = ""
METAKeywordDinamicoPagina = ""
METADescriptionDinamicoPagina = ""
End If
Call GeneraPagina(Server.MapPath(Path_Template & "pagina.htm"), METATitleDinamicoPagina, METAKeywordDinamicoPagina, METADescriptionDinamicoPagina)
Conn.Close
Set Conn = Nothing
%>