Temas no MoodleAs versoes atuais do Moodle a partir da 2.0 trouxeram novos temas muito interessantes, podemos listar alguns que apresentam boa qualidade.Sem falar que na versao 2.6 para cima todos terao como base o tema Bootstrap projeto do Twitter e terao compatibilidade total com smartphones e tablets.Archaius - Bonito, e possivel recolher as colunas laterais.Clean - Simples mas bonito.Essential - Novo tema icones bonitos fontes e cores bonitas.Liven - Otimo aproveitamento do espaco.CloudyDay - Otimo contraste e escolha de fontes.Newsie - Otima formatacao e distribuicao do espaco.Magazine - Otima distribuicao do espaco.Aardvark - Remodelado com base no bootstrapDecaf - Aproveita totalmente o espaco da tela e mantem os menus de administracao no topo ocupando o minimo possivel de espaco.Moodle2mobile - Funciona bem em smartphones e tablets.Nimble - Aproveitamento do espacoTambem gosto do Arialist, Boxxie, Brick, Formfactor, Fusion, Leatherbound, Serenity, Nonzero, Overlay mas nao sao meus preferidos.Existem diversos temas mas, IMHO se ficarmos com estes ja estamos bem servidos. Nao querendo ser injusto com nenhum outro tema.Caso seja desenvolvedor e desejar utilizar um tema existente para montar outro, eu apostaria nesta lista acima.Ate a proxima. SessoesSessoes permitem armazenar informacoes entre diferentes paginas.Abaixo exemplo onde basicamente iniciamos, armazenamos e exibimos dados de uma sessao.// inicia uma sessaosession_start();// armazena dados$_SESSION["username"] = "angelo";$_SESSION["email"] = "a@gmail.com";///Exibe dadosecho $_SESSION["username"].' '.$_SESSION["email"];echo ' '.session_name();Abaixo deletamos o valor de uma variavel de sessao:session_start();$_SESSION["usuario"] = "angelo";echo ' 1 '.$_SESSION["usuario"];// deleta o valor indexado com o nome usuariounset($_SESSION["usuario"]);echo ' 2 '.$_SESSION["usuario"];Abaixo deletamos toda a sessao, bom para scripts de logout :session_start();// finaliza a sessaosession_destroy();Verifica o tempo de sessao e finaliza apos o limite configurado:session_start();// configure tempo de expiracao (em segundos)$inativo = 600;// verifique se $_SESSION["timeout"] esta configuradoif (isset($_SESSION["timeout"])) { // calcule o tempo de vida da sessao $sessionTTL = time() - $_SESSION["timeout"]; if ( $sessionTTL > $inativo ) { session_destroy(); header("Location: /logout.php"); }}$_SESSION["timeout"] = time();Gerando um identificador unico ajuda a prevenir ataques pelo numero da sessao, session_regenerate_id gera um novo numero de sessao unico para cada usuario qeu acessa o sistema por exemplo:session_start();if ($_POST["username"] == "admin" && $_POST["password"] == sha1("password")) { $_SESSION["authorized"] = true; session_regenerate_id();}Referencia do link : http://www.sitepoint.com/php-sessions/ Algoritmo "Matriz"VARVALORES : VETOR [1..2, 1..2] DE REALsomaLinha3, somaColuna2, somaDiagPrinc, somaDiagsecu, somaTudo: REALi, j: INTEIRO //os indice sempre inteiroiniciosomaLinha3 <- 0="" p="">somaColuna2 <- 0="" p="">somaTudo <- 0="" p="">Para i de 1 ate 2 faca Para j de 1 ate 2 faca Escreva("Digite um valor para a matriz: ") Leia (VALORES[i,j]) somaTudo <- i="" j="" p="" somatudo="" valores=""> fimparafimparaPara i de 1 ate 2 faca para j de 1 ate 2 faca escreval (VALORES[i,j]) fimparafimparaescreval ("Soma de todos os elementos e ", somaTudo)fimalgoritmo Lacacasts favoritesEste um dos laracasts favoritoshttps://laracasts.com/lessons/how-to-use-eloquent-outside-of-laravel algoritmo "semnome"varj.k.vb:inteirov: vetor[1..10] de inteiroachou : logicoprocedimento preenchevetorvar j : inteiroiniciopara j de 1 ate 10 facav[j] <- p="" randi="">escreva(j:5, v[j]:5)fimparafimprocedimentoiniciopreenchevetorescreva("Entre com o valor da busca (esc termina):")leia(vb)j<-1 p="">repitase v[j] = vb entaoachou <- p="" verdadeiro="">senaoJ<-j p="">fimseate (achou = verdadeiro) ou (j<10 p="">se achou entaoescreval("Achei",vb,"na posicao ",j)seanoescreval("nao achei")fimsefimalgoritmo Exemplo classico de sessoes : session_start(); //tem ou nao tem visitas ? if (!isset($_SESSION['visits'])) { //certo nao tem entao vamos passar o valor 1 para a variavel