forked from matrixx/TrulyYours
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Data.js
121 lines (112 loc) · 2.6 KB
/
Data.js
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
.pragma library
var ambiences = []
var tags = []
var tagCounts = []
var maxTagsCount = 1;
var filteredCnt = 0;
function fetchAmbiences(tagMgr)
{
var xhr = new XMLHttpRequest
var query = "http:https://www.jollawalls.com/api/media"
xhr.open("GET", query);
xhr.onreadystatechange = function()
{
if (xhr.readyState === XMLHttpRequest.DONE)
{
var results = JSON.parse(xhr.responseText)
for (var i in results)
{
if (results[i].pic_url)
{
var reduced = results[i].pic_url.replace(/\\/gi,'');
var fullUrl = "http:https://www.jollawalls.com/content/uploads/images/" + reduced;
saveTags(results[i].tags);
results[i].fullUri = fullUrl;
results[i].fileName = getFileName(results[i].slug, results[i].pic_url)
results[i].activated = false;
}
}
for (var j = results.length - 1; j > -1; j--)
{
ambiences.push(results[j]);
}
tagMgr.sortAndSaveTags(tags, tagCounts);
}
}
xhr.send();
}
function fillModel(model, filter)
{
model.clear();
filteredCnt = 0;
for (var i in ambiences)
{
if (hasTag(filter, ambiences[i].tags) || (filter === ""))
{
model.append(ambiences[i]);
filteredCnt++;
}
}
console.debug("set ambience count: " + filteredCnt);
}
function filteredCount()
{
return filteredCnt;
}
function getFileName(baseName, picUrl)
{
if (picUrl.indexOf(".jpg") > -1)
{
baseName += ".jpg";
}
else if (picUrl.indexOf(".jpeg") > -1)
{
baseName += ".jpeg";
}
else
{
baseName += ".png";
}
return baseName;
}
function saveTags(tagString)
{
var tagList = tagString.split(",");
for (var i in tagList)
{
if (tagList[i] === "")
{
break;
}
var index = tags.indexOf(tagList[i]);
if (index > -1)
{
tagCounts[index] += 1;
if (tagCounts[index] > maxTagsCount)
{
maxTagsCount = tagCounts[index];
}
}
else
{
tags.push(tagList[i]);
tagCounts.push(1);
}
}
}
function hasTag(tag, tagString)
{
var tagList = tagString.split(",");
for (var i in tagList)
{
if (tagList[i].toLowerCase() === tag)
{
return true;
}
}
return false;
}
function getTagMaxCount()
{
return maxTagsCount;
}