My favorites | Sign in
Project Home Downloads Wiki Issues Source
Checkout   Browse   Changes    
 
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
<%--
Copyright 2009 David Mason Johnson.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--%>

<%@ page language="java" %>
<%@ page contentType="plain/text" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="org.json.*" %>
<%@ page import="net.oauth.*" %>
<%@ page import="net.oauth.server.*" %>
<%@ page import="org.apache.roller.weblogger.business.*" %>
<%@ page import="org.rollerweblogger.SocialRollerTask" %>

<%
// make sure we are o'authorized
String userName = null;
OAuthServiceProvider provider = null;
Exception errorException = null;
//String postDataString = null;

try {
OAuthManager omgr = WebloggerFactory.getWeblogger().getOAuthManager();
provider = omgr.getServiceProvider();
OAuthMessage requestMessage = OAuthServlet.getMessage(request, null);
OAuthAccessor accessor = omgr.getAccessor(requestMessage);
omgr.getValidator().validateMessage(requestMessage, accessor);
userName = (String)accessor.getProperty("userId");

} catch (Exception ex) {
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
response.addHeader("WWW-Authenticate", "OAuth realm=\"roller\"");
return;
}

SocialRollerTask.UserJob userJob = null;
try {
// get jobs collection and user's job if one exists
List<SocialRollerTask.UserJob> userJobs = SocialRollerTask.loadUserJobs();
for (SocialRollerTask.UserJob job : userJobs) {
if (job.userName.equals(userName)) {
userJob = job;
break;
}
}

// if POST, then called wants to enable or disable user job
if ("POST".equals(request.getMethod())) {

if (null != request.getParameter("enabled")) {
boolean enabled = "true".equals(request.getParameter("enabled"));
// if user wants enabled but no job is present then create job
if (enabled && userJob == null) {
userJob = new SocialRollerTask.UserJob();
userJob.userName = userName;
userJob.siteHandle = "socialsite";
userJob.lastUpdate = new Date().getTime();
userJobs.add(userJob);
SocialRollerTask.saveUserJobs(userJobs);

// if user wants to disable and a job exists, then remove it
} else if (!enabled && userJob != null) {
userJobs.remove(userJob);
SocialRollerTask.saveUserJobs(userJobs);
userJob = null;
}
}
}
} catch (Exception ex) {
errorException = ex;
}

if (errorException != null) { %>

{
"userName" : "<%= userName %>",
"exceptionName" : "<%= errorException.getClass().getName() %>",
"exceptionMessage" : "<%= errorException.getMessage() %>",
"enabled": "<%= userJob != null %>"
}

<% } else { %>

{
"userName" : "<%= userName %>",
"enabled": "<%= userJob != null %>"
}

<% } %>


Change log

r5 by snoopdave on Mar 17, 2009   Diff
adding ASL license headers, removing site
specific stuff
Go to: 
Project members, sign in to write a code review

Older revisions

r4 by snoopdave on Mar 17, 2009   Diff
removing old commened out code
r2 by snoopdave on Mar 17, 2009   Diff
initial commit
All revisions of this file

File info

Size: 3349 bytes, 103 lines
Powered by Google Project Hosting