FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
processing-web-archive/javascript/site.js at master · processing/processing-web-archive · GitHub
This repository was archived by the owner on Jan 24, 2023. It is now read-only.
processing
processing-web-archive
Repository navigation
Code
Issues
1
(1)
Pull requests
2
(2)
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
processing-web-archive
/
javascript
/
site.js
Copy path
More file actions
More file actions
Latest commit
History
History
History
99 lines (85 loc) · 3.19 KB
Breadcrumbs
processing-web-archive
/
javascript
/
site.js
Copy path
File metadata and controls
99 lines (85 loc) · 3.19 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
$
(
function
(
)
{
// sticky scroll
if
(
!
Modernizr
.
touch
)
{
$
(
window
)
.
scroll
(
function
(
)
{
if
(
$
(
this
)
.
scrollTop
(
)
<
114
)
{
$
(
'.navBar'
)
.
removeClass
(
'stuck'
)
}
else
{
$
(
'.navBar'
)
.
addClass
(
'stuck'
)
}
}
)
}
// if on the homepage, gather recent tweets/commits
if
(
$
(
'body'
)
.
attr
(
'id'
)
==
'Cover'
)
{
// recent tweets
$
.
getJSON
(
'/content/static/feeds/twitter.php'
,
function
(
data
)
{
$
.
each
(
data
,
function
(
i
,
tweet
)
{
var
time
=
parse_date
(
tweet
.
created_at
)
;
var
timeText
=
format_relative_time
(
extract_relative_time
(
time
)
)
;
var
tweet_html
=
'<li><div>'
+
tweet
.
text
.
parseURL
(
)
.
parseUsername
(
)
.
parseHashtag
(
)
;
tweet_html
+=
' about'
;
tweet_html
+=
'<a href="https://www.twitter.com/processingOrg/status/'
+
tweet
.
id_str
+
'">'
+
timeText
+
'<\/a>'
;
tweet_html
+=
'<\/div><\/li>'
;
$
(
'.latest-tweets'
)
.
append
(
tweet_html
)
}
)
}
)
// recent commits
$
.
getJSON
(
'/content/static/feeds/github.php'
,
function
(
data
)
{
$
.
each
(
data
,
function
(
i
,
commit
)
{
if
(
i
<=
3
)
{
var
time
=
parse_date
(
commit
.
commit
.
committer
.
date
)
;
var
timeText
=
format_relative_time
(
extract_relative_time
(
time
)
)
;
var
commit_html
=
'<li><img class="github-avatar" src="http://www.gravatar.com/avatar/'
+
commit
.
author
.
gravatar_id
+
'?s=20"/>'
;
commit_html
+=
'<div><a href="'
+
commit
.
author
.
html_url
+
'">'
+
commit
.
author
.
login
+
'<\/a> committed'
;
commit_html
+=
' <a href="https://github.com/processing/processing/commit/'
+
commit
.
sha
+
'">"'
+
commit
.
commit
.
message
+
'"<\/a>'
;
commit_html
+=
' about '
+
timeText
+
'<\/div>'
;
$
(
'.latest-commits'
)
.
append
(
commit_html
)
}
}
)
}
)
}
}
)
;
// Functions
/* Twitter Parsing Functions */
String
.
prototype
.
parseUsername
=
function
(
)
{
return
this
.
replace
(
/
[
@
]
+
[
A
-
Z
a
-
z
0
-
9
-
_
]
+
/
g
,
function
(
u
)
{
var
username
=
u
.
replace
(
"@"
,
""
)
return
u
.
link
(
"http://twitter.com/"
+
username
)
;
}
)
;
}
;
String
.
prototype
.
parseHashtag
=
function
(
)
{
return
this
.
replace
(
/
[
#
]
+
[
A
-
Z
a
-
z
0
-
9
-
_
]
+
/
g
,
function
(
t
)
{
var
tag
=
t
.
replace
(
"#"
,
"%23"
)
return
t
.
link
(
"http://search.twitter.com/search?q="
+
tag
)
;
}
)
;
}
;
String
.
prototype
.
parseURL
=
function
(
)
{
return
this
.
replace
(
/
[
A
-
Z
a
-
z
]
+
:
\/
\/
[
A
-
Z
a
-
z
0
-
9
-
_
]
+
\.
[
A
-
Z
a
-
z
0
-
9
-
_
:
%
&
~
\?
\/
.
=
]
+
/
g
,
function
(
url
)
{
return
url
.
link
(
url
)
;
}
)
;
}
;
/* Time Parsing */
function
parse_date
(
date_str
)
{
return
Date
.
parse
(
date_str
.
replace
(
/
^
(
[
a
-
z
]
{
3
}
)
(
[
a
-
z
]
{
3
}
\d
\d
?
)
(
.
*
)
(
\d
{
4
}
)
$
/
i
,
'$1,$2$4$3'
)
)
;
}
function
extract_relative_time
(
date
)
{
var
toInt
=
function
(
val
)
{
return
parseInt
(
val
,
10
)
;
}
;
var
relative_to
=
new
Date
(
)
;
var
delta
=
toInt
(
(
relative_to
.
getTime
(
)
-
date
)
/
1000
)
;
if
(
delta
<
1
)
delta
=
0
;
return
{
days
:
toInt
(
delta
/
86400
)
,
hours
:
toInt
(
delta
/
3600
)
,
minutes
:
toInt
(
delta
/
60
)
,
seconds
:
toInt
(
delta
)
}
;
}
function
format_relative_time
(
time_ago
)
{
if
(
time_ago
.
days
>
2
)
return
' '
+
time_ago
.
days
+
' days ago'
;
if
(
time_ago
.
hours
>
24
)
return
' a day ago'
;
if
(
time_ago
.
hours
>
2
)
return
' '
+
time_ago
.
hours
+
' hours ago'
;
if
(
time_ago
.
minutes
>
45
)
return
' an hour ago'
;
if
(
time_ago
.
minutes
>
2
)
return
' '
+
time_ago
.
minutes
+
' minutes ago'
;
if
(
time_ago
.
seconds
>
1
)
return
' '
+
time_ago
.
seconds
+
' seconds ago'
;
return
'just now'
;
}
Back
|
FazBrowse Home
|
New Git URL