My favorites
|
Sign in
gdata-samples
Google Data API Samples
Project Home
Downloads
Wiki
Issues
Source
Checkout
|
Browse
|
Changes
|
‹r108
r196
Source path:
svn
/
trunk
/
gadgets
/
base
/
jobFinder
/
jobFinder.xml
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
<?xml version="1.0" encoding="UTF-8" ?>
<Module>
<ModulePrefs title="Job Finder"
author="Eric Bidelman" author_email="e.bidelman"
height="425" scrolling="true">
<Require feature="opensocial-0.8" />
<Require feature="setprefs"/>
</ModulePrefs>
<UserPref name="job_title" display_name="Job title" datatype="string" required="true"/>
<UserPref name="location" display_name="Zip code" datatype="string" required="true"/>
<UserPref name="withinLoc" display_name="within" datatype="string" default_value="10mi" required="false"/>
<UserPref name="salary_min" display_name="Min salary" default_value="75000" datatype="string" required="true"/>
<Content type="html">
<![CDATA[
<link href="http://gdata-samples.googlecode.com/svn/trunk/gadgets/base/jobFinder/jobFinder.css" type="text/css" rel="stylesheet"/>
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<div id="header">
<h1 style="float:left;">Jobs from Google Base</h1>
</div>
<div id="errors" style="display:none"></div>
<div id="loading" style="display:none">
<h3>Loading...</h3>
<p><img src="http://gdata-samples.googlecode.com/svn/trunk/gadgets/base/jobFinder/ajax-loader.gif"></p>
</div>
<div id="main">
<div id="data"></div>
</div>
<script type="text/javascript">
var prefs = new _IG_Prefs();
var gBase = null;
function initGadget() {
google.load('gdata', '1.x');
google.load('jquery', '1');
google.setOnLoadCallback(function () {
gBase = new google.gdata.gbase.GoogleBaseService('Goog-BaseJobFinderGadget-v1');
getSnippetsFeed(null);
});
}
function handleSnippetsFeed(result) {
var entries = result.feed.entry;
jQuery('#loading').hide();
if (!entries.length) {
jQuery('#errors').html('<p>No results matching your query</p>').show();
return;
}
var re = /alt=json-in-script&/;
var prevLink = result.feed.getLink('previous');
if (prevLink) {
prevLink = encodeURIComponent(prevLink.getHref().replace(re, ''));
jQuery('#data').append('<a href="javascript:getSnippetsFeed(\'' +
prevLink + '\')">< Previous</a> ');
}
var nextLink = result.feed.getLink('next');
if (nextLink) {
nextLink = encodeURIComponent(nextLink.getHref().replace(re, ''));
jQuery('#data').append('<a href="javascript:getSnippetsFeed(\'' +
nextLink + '\')">Next ></a>');
}
var html = [];
for (var i = 0, item; item = entries[i]; ++i) {
var title = item.getTitle().getText();
var description = item.getContent().getText();
var href = item.getLink('alternate').getHref();
var salary = item.getAttribute('salary').getValue();
html.push('<dt><a href="' + href + '" target="_blank">' + title +
'</a> <b>$' + salary + '</b></dt>');
html.push('<dd>' + description + '</dd>');
}
jQuery('#data').append('<dl>' + html.join('') + '</dl>');
}
function getSnippetsFeed(uri) {
jQuery('#loading').show();
jQuery('#data').html('');
var query = uri;
if (query === null) {
var feedUri = 'http://www.google.com/base/feeds/snippets';
query = new google.gdata.gbase.SnippetsQuery(feedUri);
query.setFullTextQuery(prefs.getString('job_title'));
var locStr = '[location:@"' + prefs.getString('location') + '"+' +
prefs.getString('withinLoc') + ']';
var salStr = '[salary>=' + prefs.getString('salary_min') + ']';
query.setBq('[item type:jobs]' + locStr + salStr);
}
var handleError = function(e) {
jQuery('#errors').html(e.cause ? e.cause.statusText : e.message).show();
};
gBase.getSnippetsFeed(query, handleSnippetsFeed, handleError);
}
_IG_RegisterOnloadHandler(initGadget);
</script>
]]>
</Content>
</Module>
Show details
Hide details
Change log
r180
by api.e...@google.com on Jun 08, 2009
Diff
Removing email addresses
Go to:
...ets/base/jobFinder/jobFinder.xml
...dgets/blogger/blogger_gadget.xml
...nk/gadgets/blogger/grey-grad.gif
/trunk/hybrid/common.inc.php
/trunk/hybrid/index.php
.../oauth_playground/common.inc.php
/trunk/oauth_playground/index.php
/trunk/oauth_playground/js/main.js
.../oauth_playground/playground.php
Sign in
to write a code review
Older revisions
r108
by api.e...@google.com on Dec 10, 2008
Diff
[No log message]
r107
by api.e...@google.com on Dec 10, 2008
Diff
[No log message]
r106
by api.e...@google.com on Dec 09, 2008
Diff
[No log message]
All revisions of this file
File info
Size: 4294 bytes, 112 lines
View raw file