Rss

Bloquear Ctrl+c , Ctrl+v e boão direito do mouse nos campos de uma formulário com jquery

$(‘.ctrl’).live(‘copy paste’, function(e){ e.preventDefault() });
ou
$(‘.ctrl’).live(‘copy paste contextmenu’, function(e){ e.preventDefault() });

Sublime Text 2 – Dicas para Desenvolvimento Front-end

Nada melhor do que começar o ano com algumas dicas do mais novo queridinho entre os editores de código. Por isso hoje, na minha estréia aqui no Front End Brasil, vou mostrar um pouco do meu workflow com Sublime Text 2 voltado para desenvolvimento Front-End.

Ms3Vsz7Jc3A

Os comandos mostrados no vídeo são executados no MacOSx, mas graças ao Giovanni Keppelen (@keppelen), você também pode conferir os respectivos comandos no Windows ou Linux.

Lista de Comandos – Mac

03:10 – Navegar entre os arquivos: Command + P

03:35 – Layout de 2 colunas: Command + Option + 2

04:07 – Modo de distração livre: Command + Option + Shift + F

04:27 – Find: Command + F

04:34 – Find / Replace: Command + Option + F

04:40 – Find / Where / Replace: Command + Shift + F

04:59 – Indentação à esquerda: Command + [ ou Shift + Tab

05:03 - Indentação à direita: Command + ] ou Tab

05:19 – Comentário: Command + /

06:50 – Multi-select: Command pressionado + Clique em várias linhas

07:20 – Code Folding – Minimiza Bloco: Command + Option + [

07:36 - Code Folding - Maximiza Bloco: Command + Option + ]

07:49 – Code Folding – Minimiza Atributos: Command + K + Command + T

08:18 – Code Folding – Maximiza Atributos: Command + K + Command + 0

09:07 – Console: Ctrl + `

09:29 – Menu: Command + Shift + P

13:09 – Haiku: Ctrl + Option + Enter

15:17 – Prefixr: Command + Ctrl + X

25:37 – JSHint: Ctrl + J

26:35 – JSMinifier: Ctrl + Option + M

Lista de Comandos – Windows/Linux

03:10 – Navegar entre os arquivos: Ctrl + P

03:35 – Layout de 2 colunas: Alt + Shift + 2

04:07 – Modo de distração livre: Shift + F11

04:27 – Find: Ctrl + F

04:34 – Find / Replace: Ctrl + H

04:40 – Find / Where / Replace: Ctrl + Shift + H

04:59 – Indentação à esquerda: Ctrl + [

05:03 - Indentação à direita: Ctrl + ]

05:19 – Comentário: Ctrl + / ou Ctrl+;

06:50 – Multi-select: Ctrl pressionado + Clique em várias linhas

07:20 – Code Folding – Minimiza Bloco: Ctrl + Shift + [

07:36 - Code Folding - Maximiza Bloco: Ctrl + Shift + ]

07:49 – Code Folding – Minimiza Atributos: Ctrl + K + Ctrl + J

08:18 – Code Folding – Maximiza Atributos: Ctrl + K + Ctrl + 1

09:07 – Console: Ctrl + `

09:29 – Menu: Ctrl + Shift + P

13:09 – Haiku: Ctrl + Alt + Enter

15:17 – Prefixr: Ctrl + Alt + X

25:37 – JSHint: Ctrl + J

26:35 – JSMinifier: Ctrl + Alt + M

Bônus

Deletar linha: Ctrl + Shift + K (Windows/Mac/Linux)

Duplicar linha – Mac – Command + Shift + D – Windows/Linux – Ctrl + Shift + D

Troca de linhas: Mac – Command + Ctrl + Seta (cima ou baixo) – Windows/Linux – Ctrl + Shift + Seta (cima ou baixo)

E mais

Jade – Syntax Highlight – https://github.com/miksago/jade-tmbundle

Stylus – Syntax Highlight – https://github.com/LearnBoost/stylus

JSHint – https://github.com/uipoet/sublime-jshint

URL / Link no Symfony

// If you require a URL like

http://myapp.example.com/article/21

// Use the following in article/read action
$uri = sfRouting::getInstance()->getCurrentInternalUri();
=> article/read?id=21

$uri = sfRouting::getInstance()->getCurrentInternalUri(true);
=> @article_by_id?id=21

$rule = sfRouting::getInstance()->getCurrentRouteName();
=> article_by_id

$uri = ‘article/read?id=21′;

$url = $this->getController()->genUrl($uri);
=> /article/21

$url = $this->getController()->genUrl($uri, true);
=> http://myapp.example.com/article/21

Algoritmo worst-fit

Worst-fit é um algoritmo utilizado na partição de disco rígido.

Função

O algoritmo worst-fit aloca o programa na pior partição, ou seja, aquela que deixa o maior espaço livre.

Está técnica, apesar de aproveitar primeiro as partições maiores, acaba deixando espaços livres grandes o suficiente para que outros programas utilizem da memória, diminuindo ou retardando a fragmentação.

URL para descobrir ID do Facebook

http://graph.facebook.com/perfectchocolate

Formatar datas no SQL Server

Date
Formats

SQL Server Date Formats

One of
the most frequently asked questions in SQL Server forums is how to format a
datetime value or column into a specific date format.  Here’s a summary of
the different date formats that come standard in SQL Server as part of the CONVERT
function.  Following the standard date formats are some extended date
formats that are often asked by SQL Server developers.

It is worth to note that the output of these date formats are of VARCHAR data
types already and not of DATETIME data type.  With this in mind,
any date comparisons performed after the datetime value has been formatted are
using the VARCHAR value of the date and time and not its original DATETIME
value.

Standard Date Formats
Date Format Standard SQL Statement Sample Output
Mon DD YYYY 1

HH:MIAM (or PM)

Default SELECT CONVERT(VARCHAR(20), GETDATE(), 100) Jan 1 2005 1:29PM 1
MM/DD/YY USA SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 1) AS [MM/DD/YY] 11/23/98
MM/DD/YYYY USA SELECT CONVERT(VARCHAR(10), GETDATE(), 101) AS [MM/DD/YYYY] 11/23/1998
YY.MM.DD ANSI SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 2) AS [YY.MM.DD] 72.01.01
YYYY.MM.DD ANSI SELECT CONVERT(VARCHAR(10), GETDATE(), 102) AS [YYYY.MM.DD] 1972.01.01
DD/MM/YY British/French SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 3) AS [DD/MM/YY] 19/02/72
DD/MM/YYYY British/French SELECT CONVERT(VARCHAR(10), GETDATE(), 103) AS [DD/MM/YYYY] 19/02/1972
DD.MM.YY German SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 4) AS [DD.MM.YY] 25.12.05
DD.MM.YYYY German SELECT CONVERT(VARCHAR(10), GETDATE(), 104) AS [DD.MM.YYYY] 25.12.2005
DD-MM-YY Italian SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 5) AS [DD-MM-YY] 24-01-98
DD-MM-YYYY Italian SELECT CONVERT(VARCHAR(10), GETDATE(), 105) AS [DD-MM-YYYY] 24-01-1998
DD Mon YY 1 - SELECT CONVERT(VARCHAR(9), GETDATE(), 6) AS [DD MON YY] 04 Jul 06 1
DD Mon YYYY 1 - SELECT CONVERT(VARCHAR(11), GETDATE(), 106) AS [DD MON YYYY] 04 Jul 2006 1
Mon DD, YY 1 - SELECT CONVERT(VARCHAR(10), GETDATE(), 7) AS [Mon DD, YY] Jan 24, 98 1
Mon DD, YYYY 1 - SELECT CONVERT(VARCHAR(12), GETDATE(), 107) AS [Mon DD, YYYY] Jan 24, 1998 1
HH:MM:SS - SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 108 ) 03:24:53
Mon DD YYYY HH:MI:SS:MMMAM (or PM) 1 Default +

milliseconds

SELECT CONVERT(VARCHAR(26), GETDATE(), 109) Apr 28 2006 12:32:29:253PM 1
MM-DD-YY USA SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 10) AS [MM-DD-YY] 01-01-06
MM-DD-YYYY USA SELECT CONVERT(VARCHAR(10), GETDATE(), 110) AS [MM-DD-YYYY] 01-01-2006
YY/MM/DD - SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 11) AS [YY/MM/DD] 98/11/23
YYYY/MM/DD - SELECT CONVERT(VARCHAR(10), GETDATE(), 111) AS [YYYY/MM/DD] 1998/11/23
YYMMDD ISO SELECT CONVERT(VARCHAR(6), GETDATE(), 12) AS [YYMMDD] 980124
YYYYMMDD ISO SELECT CONVERT(VARCHAR( 8 ), GETDATE(), 112) AS [YYYYMMDD] 19980124
DD Mon YYYY HH:MM:SS:MMM(24h) 1 Europe default + milliseconds SELECT CONVERT(VARCHAR(24), GETDATE(), 113) 28 Apr 2006 00:34:55:190 1
HH:MI:SS:MMM(24H) - SELECT CONVERT(VARCHAR(12), GETDATE(), 114) AS [HH:MI:SS:MMM(24H)] 11:34:23:013
YYYY-MM-DD HH:MI:SS(24h) ODBC Canonical SELECT CONVERT(VARCHAR(19), GETDATE(), 120) 1972-01-01 13:42:24
YYYY-MM-DD HH:MI:SS.MMM(24h) ODBC Canonical

(with milliseconds)

SELECT CONVERT(VARCHAR(23), GETDATE(), 121) 1972-02-19 06:35:24.489
YYYY-MM-DDTHH:MM:SS:MMM ISO8601 SELECT CONVERT(VARCHAR(23), GETDATE(), 126) 1998-11-23T11:25:43:250
DD Mon YYYY HH:MI:SS:MMMAM 1 Kuwaiti SELECT CONVERT(VARCHAR(26), GETDATE(), 130) 28 Apr 2006 12:39:32:429AM 1
DD/MM/YYYY HH:MI:SS:MMMAM Kuwaiti SELECT CONVERT(VARCHAR(25), GETDATE(), 131) 28/04/2006 12:39:32:429AM
Here are some more date formats that does not come standard in SQL Server as
part of the CONVERT function.

Extended Date Formats
Date Format SQL Statement Sample Output
YY-MM-DD
SELECT SUBSTRING(CONVERT(VARCHAR(10), GETDATE(), 120), 3, 8 ) AS [YY-MM-DD]
SELECT REPLACE(CONVERT(VARCHAR( 8 ), GETDATE(), 11), ‘/’, ‘-’) AS [YY-MM-DD]
99-01-24
YYYY-MM-DD
SELECT CONVERT(VARCHAR(10), GETDATE(), 120) AS [YYYY-MM-DD]
SELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 111), ‘/’, ‘-’) AS [YYYY-MM-DD]
1999-01-24
MM/YY SELECT RIGHT(CONVERT(VARCHAR( 8 ), GETDATE(), 3), 5) AS [MM/YY]

SELECT SUBSTRING(CONVERT(VARCHAR( 8 ), GETDATE(), 3), 4, 5) AS [MM/YY]

08/99
MM/YYYY SELECT RIGHT(CONVERT(VARCHAR(10), GETDATE(), 103), 7) AS [MM/YYYY] 12/2005
YY/MM SELECT CONVERT(VARCHAR(5), GETDATE(), 11) AS [YY/MM] 99/08
YYYY/MM SELECT CONVERT(VARCHAR(7), GETDATE(), 111) AS [YYYY/MM] 2005/12
Month DD, YYYY 1 SELECT DATENAME(MM, GETDATE()) + RIGHT(CONVERT(VARCHAR(12), GETDATE(), 107), 9)
AS [Month DD, YYYY]
July 04, 2006 1
Mon YYYY 1 SELECT SUBSTRING(CONVERT(VARCHAR(11), GETDATE(), 113), 4, 8 ) AS [Mon YYYY] Apr 2006 1
Month YYYY 1 SELECT DATENAME(MM, GETDATE()) + ‘ ‘ + CAST(YEAR(GETDATE()) AS VARCHAR(4)) AS
[Month YYYY]
February 2006 1
DD Month 1 SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ‘ ‘ + DATENAME(MM, GETDATE()) AS
[DD Month]
11 September 1
Month DD 1 SELECT DATENAME(MM, GETDATE()) + ‘ ‘ + CAST(DAY(GETDATE()) AS VARCHAR(2)) AS
[Month DD]
September 11 1
DD Month YY 1 SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ‘ ‘ + DATENAME(MM, GETDATE()) + ‘ ‘
+ RIGHT(CAST(YEAR(GETDATE()) AS VARCHAR(4)), 2) AS [DD Month YY]
19 February 72 1
DD Month YYYY 1 SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ‘ ‘ + DATENAME(MM, GETDATE()) + ‘ ‘
+ CAST(YEAR(GETDATE()) AS VARCHAR(4)) AS [DD Month YYYY]
11 September 2002 1
MM-YY SELECT RIGHT(CONVERT(VARCHAR( 8 ), GETDATE(), 5), 5) AS [MM-YY]

SELECT SUBSTRING(CONVERT(VARCHAR( 8 ), GETDATE(), 5), 4, 5) AS [MM-YY]

12/92
MM-YYYY SELECT RIGHT(CONVERT(VARCHAR(10), GETDATE(), 105), 7) AS [MM-YYYY] 05-2006
YY-MM SELECT RIGHT(CONVERT(VARCHAR(7), GETDATE(), 120), 5) AS [YY-MM]

SELECT SUBSTRING(CONVERT(VARCHAR(10), GETDATE(), 120), 3, 5) AS [YY-MM]

92/12
YYYY-MM SELECT CONVERT(VARCHAR(7), GETDATE(), 120) AS [YYYY-MM] 2006-05
MMDDYY SELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 1), ‘/’, ”) AS [MMDDYY] 122506
MMDDYYYY SELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 101), ‘/’, ”) AS [MMDDYYYY] 12252006
DDMMYY SELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 3), ‘/’, ”) AS [DDMMYY] 240702
DDMMYYYY SELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 103), ‘/’, ”) AS [DDMMYYYY] 24072002
Mon-YY 1 SELECT REPLACE(RIGHT(CONVERT(VARCHAR(9), GETDATE(), 6), 6), ‘ ‘, ‘-’) AS
[Mon-YY]
Sep-02 1
Mon-YYYY 1 SELECT REPLACE(RIGHT(CONVERT(VARCHAR(11), GETDATE(), 106), 8 ), ‘ ‘, ‘-’) AS
[Mon-YYYY]
Sep-2002 1
DD-Mon-YY 1 SELECT REPLACE(CONVERT(VARCHAR(9), GETDATE(), 6), ‘ ‘, ‘-’) AS [DD-Mon-YY] 25-Dec-05 1
DD-Mon-YYYY 1 SELECT REPLACE(CONVERT(VARCHAR(11), GETDATE(), 106), ‘ ‘, ‘-’) AS [DD-Mon-YYYY] 25-Dec-2005 1

1 To make the month name in upper case, simply use
the UPPER string function.

Fonte

Protegendo diretórios ou arquivos com senha em Linux

Diretório

a2c@cpro1146:~$ htpasswd -c .htpasswd fabio@gwnet.com.br

a2c@cpro1146:~$ nano .htaccess

AuthUserFile /home/storage/8/ad/8a/gwnet/public_html/bycarvalho/.htpasswd
AuthGroupFile /dev/null
AuthName "Acesso Restrito"
AuthType Basic
<Limit GET POST>
require user fabio@gwnet.com.br
</Limit>

Arquivos

AuthUserFile /home/<LOGIN>/.htpasswd
AuthGroupFile /dev/null
AuthName Restrito
AuthType Basic
<Files "secreto.php">
require user nome1 nome2 ( somente os usuários que terão acesso )
</Files>

Para proteger mais de um arquivo, basta incrementar com a TAG :

<Files "arquivo2.php">
require user nome1 nome2 nome3 ( os usuários nome1, nome2 e nome3 terão acesso a este arquivo )
</Files>
<Files "arquivo3.php">
require user nome1 ( somente o usuário nome1 terá acesso a este arquivo )
</Files>

O comando FIND (Busca)

O comando FIND é um dos comandos mais completos que existe no Linux.

Embora muitas pessoas achem que é medonho e terrível fazer buscar através do terminal, elas desconhecem o poder de um verdadeiro sistema de busca, principalmente porque a maioria está acostumada com o Windows.

Eu não irei tentar explicar todo o comando FIND, pois as possibilidades são enormes, mas focarei as principais possibilidades do comando FIND.

Sempre que surgir uma dúvida, consulte o manual do FIND (digite no shell: man find).

Eu começarei explicando o básico e partindo da idéia de que você entendeu os exemplos, eu vou aumentando a complexidade dos comandos, ou seja, na primeira linha você não precisa ter conhecimento algum sobre o FIND, mas na vigésima linha eu já considero que você compreendeu os comandos anteriores.

  • Buscando arquivos e pastas:
    • No diretório atual:
      find . -name arquivoX
    • No diretório /home:
      find /home -name arquivoX
    • Em todos os locais possívels:
      find / -name arquivoX
  • Buscando apenas arquivos ou apenas pastas:
    • Apenas pastas:
      find /home -type d arquivoX
    • Apenas arquivos:
      find /home -type f arquivoX
    • Consulte outras possibilidades no manual do comando FIND;
  • Buscando arquivos ou pastas com determinado CHMOD (permissão):
    • Arquivos com CHMOD 777:
      find /home -type f -perm 777
    • Arquivos e pastas com CHMOD 777:
      find /home -perm 777
  • Buscando arquivos com determinado tamanho:
    • Com mais de 400kBytes:
      find /home -type f -size +400k
    • Com menos de 5mBytes:
      find /home -type f -size -5M
    • Com mais de 850kBytes e menos de 95mBytes:
      find /home -type f -size +850k -size -95M

      Otimizando:

      find /home -type f -size +850k && -95M
    • Sugiro consultar o manual para descobrir mais possibilidades e otimizações;
  • Buscando arquivos verificando datas:
    • Modificado há N dias (o N é multiplicado por 24 horas automaticamente):
      find /home -type f -atime N

      Se N houver parte fracionária, ela será ignorada;

    • Modificado há até 5 (ou N) minutos:
      find /home -type f -ctime 5
      find /home -type f -ctime N
    • Modificado há mais de 5 dias, mas não mais que 10 dias:
      find /home -type f -atime -10 -atime +5
    • Modificado há pelo menos 10 minutos, mas não mais que 1 hora:
      find /home -type f -ctime +10 -ctime -60

      Otimizando:

      find /home -type f -ctime +10 && -60
  • Buscando por arquivos de determinados usuários:
    • find /home -type f -user root -name arquivoX
  • Executando comandos com os arquivos localizados:
    • Sintaxe:
      find /home -type f -perm 777 -user root -exec chmod 644 {} \;

      O que faz: Procura no diretório rome (find /home) arquivos (-type f) com permissão 777 (-perm 777) que pertençam ao usuário root (-user root) e executa chmod 644 em cada arquivo (representado por “{}”).

      O fim do comando -exec deve ser explicitado, pois você pode usar expressões tanto antes de “{}” (isto é chamado de lista) quanto depois.

      Coloca-se o caracter “\”, assim o shell não interepretará o caractere seguinte, que é o “;”, que indica o final da instrução “-exec”.

    • find /home -type f -ctime +10 && -60 -exec  mv {} /tmp/teste \;

      O que faz: Procura arquivos no diretório home com permissão 777 (find /home -type f -perm 777) e move para a pasta /tmp/teste (“-exec mv {} /temp/teste \;”)

  • Para incrementar as buscas é interessante saber como trabalhar com expressões regulares, assunto este que será tratado em outro artigo.Darei alguns exemplos da utilidade de expressões regulares, mas não se preocupe em entender, pois é um assunto para outro artigo.O recurso “-iname” é usado quando você não quer diferir maiúscula de minúscula, isto é, retira o modo case sensitive do termo a ser buscado. Ao usar a expressão seguinte entre aspas simples, você estará usando expressões regulares ao invez de um nome específico, ou seja, é um “-iname/-name” mais elaborado.
    • Exemplo1 :
      find /home -iname '.*jpg'

      Busca todos os arquivos que tenham qualquer caracter (representado por “.”) em qualquer quantidade (representado por “*”) e que termine por “jpg”.

    • Exemplo 2:
      find /home -iname 'DSC.*\.jpg'

      Busca por arquivos que comecem por “DSC” e que contenham qualquer coisa em qualquer quantidade até encontrar um “.jpg”.

Script para alterar o mapa de caracteres do Ubuntu UTF-8 para ISO-8859-1 (LATIN1)

Clique aqui para baixar

Protegido: Samuel 3 Mês

Este post está protegido por senha. Para vê-lo, digite sua senha abaixo: