Arquivo: Conexões Digitais Salvador [Games com CreateJS]

Segue em anexo os arquivos da Apresentação sobre Games usando CreateJS no Evento Conexões Digitais Salvador do dia 27 de Abril de 2014

Download

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia

Enviando E-Mail com ASPMail

Script pronto e comentado!

<%
set aspMail = server.CreateObject("SMTPsvg.Mailer")
	' Use o SMTP ou o MAIL da sua conta de Hospedagem.
	aspMail.RemoteHost = "smtp.dominio.com.br"
	' Essa linha é opicional.
	aspMail.FromName = "Nome do Remetente"
	' Remetente do E-Mail.
	aspMail.FromAddress = "remetente@dominio.com.br"
	' Nome e Destinatário do E-Mail.
	aspMail.AddRecipient "Nome do Destinatário", "destinatario@dominio.com.br"
	' Assunto do E-Mail.
	aspMail.Subject = "Assunto do E-Mail"
	' Tipo de Texto que será enviado.
	aspMail.ContentType = "text/html"
	' Texto em HTML ou Normal.
	aspMail.BodyText = "<b>Esse texto vai em negrito</b>"
	' Linha que envia o E-Mail.
	aspMail.SendMail
set aspMail = nothing

response.write("E-Mail Enviado com Sucesso!")
%>

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia

Gerando PDF com ABCpdf

Script para gerar PDF com o ABCpdf

<%
set abc = server.createObject("ABCpdf6.DOC")
	' Tamanho da Fonte
	abc.FontSize = "12"
	' Estilo da Fonte
	abc.Font = abc.AddFont("Arial")
	' Cor da Fonte
	abc.Color = "255 0 0"
	' Coloque o Texto
	abc.AddText "Coloque seu Texto AQUI"
	abc.save server.mapPath("arquivo_gerado.pdf")
set abc = nothing
%>

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia

Classe que mostrar dados da Conta do Twitter

Olá a todos, nesse artigo vamos aprender a criar um exemplo simples de como mostrar os dados de uma conta do twitter em sua página, resgatando informações de um XML:

O link é Simples: http://twitter.com/users/show/ted_k.xml

Usando um Objeto para ler o XML e um layout agradável, chegamos a essa conclusão:

Criei uma classe chamada UserTwitter, dentro criei uma sub chamada LerXML() para fazer todo o processo:
página default.class.asp

class UserTwitter
public sub LerXML()
set objXMLDOM = server.createObject("MSXML2.DOMDocument.3.0")
objXMLDOM.async = false
objXMLDOM.setProperty "ServerHTTPRequest", true
objXMLDOM.validateOnParse = false  
objXMLDOM.load("http://twitter.com/users/show/"request.queryString("username")".xml")

set raiz = objXMLDOM.getElementsByTagName("*")

OBS: coloquei o request.queryString para ter um resgate do nome do usuário mais objetivo!
E, um laço de repetição para pegar a posição de cada nó e para cada nome no XML, assim:

for i = 0 to raiz.length - 1
select case (raiz.item(i).nodeName)
case ("name") : tw.nome = raiz.item(i).text
case ("screen_name") : tw.screen_name = raiz.item(i).text
case ("location") : tw.location = raiz.item(i).text
case ("profile_image_url") : tw.profile_image_url = raiz.item(i).text
case ("url") : tw.url = raiz.item(i).text
case ("followers_count") : tw.followers_count = raiz.item(i).text
case ("friends_count") : tw.friends_count = raiz.item(i).text
case ("favourites_count") : tw.favourites_count = raiz.item(i).text
case ("statuses_count") : tw.statuses_count = raiz.item(i).text
case ("time_zone") : tw.time_zone = raiz.item(i).text
case ("profile_background_image_url") : tw.profile_background_image_url = raiz.item(i).text
case ("profile_background_color") : tw.profile_background_color = ucase(raiz.item(i).text)
case ("profile_text_color") : tw.profile_text_color = ucase(raiz.item(i).text)
case ("profile_link_color") : tw.profile_link_color	= ucase(raiz.item(i).text)
case ("profile_sidebar_fill_color") : tw.profile_sidebar_fill_color = ucase(raiz.item(i).text)
case ("profile_sidebar_border_color") : tw.profile_sidebar_border_color = ucase(raiz.item(i).text)
end select
next

No código dentro do CASE coloquei o nome das tags do XML. fazendo o seguinte:
Quando encontrar o “nodeName” “tal”, mostre “tal” case, como uma condicional IF

raiz.item(i).nodeName

Observando também que uso essa propriedade do XML (.text) para imprimir o que há na tag.

raiz.item(i).text

Criando um objeto e chamando ele na tela:

set tw = new UserTwitter
tw.LerXML()

criei uma página chamada default.asp

<% Language="VBScript" %>
<!--include file="Default.class.asp"-->
... o restante do código

Para ter acesso o código completo e o layout clique aqui para baixar

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia

Simulando herança com ASP

Titulo: Simulando herança com ASP

Herança em ASP? E tem?
A resposta é bem objetiva, NÃO. Mais você pode “simular” uma herança no ASP, como fazer isso?

Primeiro você tem que entender o que é herança.

Permitindo o compartilhamento de atributos entre classes, baseando-se em relacionamentos.
Com herança você pode criar subclasses para herdar operações, métodos e outros atributos semelhantes que sejam usados varias vezes em seu código, resumido evita você ficar criando três, quatro, cinco vezes a mesma coisa.

Com esse conceito vamos usar um exemplo em C#.

using System;

public class ClasseExemplo {

    public void printf(){
        Console.WriteLine(" Master");
    }
	
}

public class ClasseGeral : ClasseExemplo {

    public ClasseGeral(){
        Console.WriteLine("Usuário");
    }

    public static void Main(){
        ClasseGeral result = new ClasseGeral();
        result.printf();
    }
	
}

o Resultado do compilador sai ( Usuário Master ).

Para simular em ASP a coisa é diferente, precisamos criar duas classes também, a diferença são os setamentos delas e as chamadas na página.

Vamos criar uma classe “Pessoa”, com subclasse “setNome”

class Pessoa
	public sub setNome()
		response.write("Ted k'")
	end sub
end class

Desenvolvendo logo abaixo a classe “Frase”, com a mesma subclasse “setNome”.

class Frase	
	public sub setNome()
		response.write(", É assim que tem que ser!")
	end sub
end class

Fora das classes, você agora tem que criar um “sub” para chamar os valores setados logo abaixo, assim:

public sub geral(valor)
	response.write(valor.setNome())
end sub

E no final gere as impressões:

set ps = new Pessoa
set fs = new Frase

call geral(ps)
call geral(fs)

Vamos para o código completo:

<%
class Pessoa
	public sub setNome()
		response.write("Ted k'")
	end sub
end class

class Frase	
	public sub setNome()
		response.write(", é assim que tem que ser!")
	end sub
end class

public sub geral(valor)
	response.write(valor.setNome())
end sub

set ps = new Pessoa
set fs = new Frase

call geral(ps)
call geral(fs)
%>

Na tela sai assim: ( Ted k’, é assim que tem que ser!)

Pronto galera, conseguimos simular herança em ASP, agora é adaptar a necessidade e usar…

Abraços, até o próximo artigo.

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia

Forçando Downloads com ASP

public function download(arquivo, pasta)
    dim objStream
    set objStream = server.createObject("ADODB.Stream")
    with (response)
        .buffer = true  
        .addHeader "Content-Type","application/x-msdownload"
        .addHeader "Content-Disposition","attachment; filename="&arquivo  
        .flush  
    end with
    with (objStream)
        .open  
        .type = 1  
        .loadFromFile server.mapPath(pasta)
    end with
    response.binaryWrite objStream.read
    set objStream = nothing
    response.flush
end function

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia

Você sabe usar a função Replace() do ASP?

Uma função que parece ser bem simples, porém nem todos sabem utilizar por completa.
Nesse artigo vou mostrar como usar corretamente e com eficiência essa “simples função”.

Todos nós programadores ASP sabemos usar simplificada a função Replace(), segue um exemplo:

<%
dim frase
frase = "Por uma internet sempre criativa e dinâmica"
response.write(replace(frase, "sempre", "mais"))
%>

Uma maneira simples, usamos o texto que está em pauta seguido da palavra que queremos substituir e depois da palavra que queremos colocar no lugar.

replace(texto em pauta, palavra que sai, palavra que entra)

Resultado o Script: “Por uma internet mais criativa e dinâmica”

OBS: a função replace() é "Case Sensitive" se quiser substituir "A" por "a", onde existir o "A" maiúsculo será substituído pelo "a" minúsculo.

Vamos para a parte que interessa mais:
No texto “Por uma internet mais criativa e dinâmica” queremos que a letra “i” de “internet” seja maiúscula e não as outras, como fazer isso?
Seguindo essa sequência “replace(texto em pauta, palavra que sai, palavra que entra)”, existem mais três parâmetros opicionais que complementam a função:

* Posição inicial;
* Count (um contador que especifica o número de substituíção);
* Comparador de Strings (caso binário de padrão “zero” ou texto).

Segue o exemplo:

<%
dim frase
frase = "Por uma internet mais criativa e dinâmica"
response.write(replace(frase, "i", "I", 1,1,1))
%>

Resultado do Script: “Por uma Internet mais criativa e dinâmica”

No parâmentro inicial você também pode usar ele como um “cortador de letras”, exemplo: Eu não quero mais que apareça a palavra “Por”, então cortamos três letras da frase, caso queira cortar o espaço também e usar quatro no contador fiquem a vontade, mais para isso usamos a função trim() que não vem ao caso.

Segue o exemplo:

<%
dim frase
frase = "Por uma internet mais criativa e dinâmica"
response.write(replace(frase, "u", "U", 4,1,1))
%>

Resultado do Script: “Uma internet mais criativa e dinâmica”

Notem que coloquei no valor da posição o número “4” (quatro) e explicarei por que.
O valor padrão da posição inicial vem de default “1” (um) e não “0” (zero) como estamos acostumados em outras funções por isso adicionamos mais um valor no contador no caso “3 + 1”.

E o que falar da última posição o “Comparador de Strings”)

Olha como funciona:
Segue o exemplo:

<%
dim frase
frase = "Elegante"
response.write(replace(frase, "e", "&euro;", 1,1,0))
%>

Se eu deixar o valor inicial como “1” (um), e pegar só uma letra “e” e colocar no Comparador de Strings “0” (zero) o resultado sai:
Resultado do Script: “El€gante”

Ele não considerou a letra maiúscula “E” inicial, mais se eu trocar o último parâmentro para “1” (um), vamos ver no que gera.

Segue o exemplo:

<%
dim frase
frase = "Elegante"
response.write(replace(frase, "e", "&euro;", 1,1,1))
%>

Resultado do Script: “€legante”
Ele agora sim reconhece o primeiro “e” e faz a alteração, tenha muito cuidado quando for usar o Comparador de Strings, oks?

Abraços amigos, e vamos tomar conhecimento da linguagem para não fazer trabalho desnecessário:

Até o próximo artigo!

Agência OFF, desenvolvimento de soluções web para as Agências Digitais

programador javascript em salvador bahia, programador javascript na bahia, front-end salvador bahia, montagem sites salvador bahia