public
Description: Mobile FriendFeed Client
Homepage: http://www.fftogo.com/
Clone URL: git://github.com/bgolub/fftogo.git
entry delete/undelete
bgolub (author)
Mon Jul 07 09:53:32 -0700 2008
commit  e52bee0e568b614c89f938e22a04cbed8fe61c82
tree    4673f895ffd411158c54758a738d903b57b712f6
parent  c97ab89a78236db7a6d557b2c66a57c33e1e2aef
...
140
141
142
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
143
144
145
...
521
522
523
524
 
525
526
 
527
528
529
...
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
...
573
574
575
 
576
577
 
578
579
580
581
0
@@ -140,6 +140,58 @@ def entry_comment(request, entry):
0
     }
0
     return render_to_response('comment.html', extra_context, context_instance=RequestContext(request))
0
 
0
+def entry_delete(request, entry):
0
+ '''Delete an entry.
0
+
0
+ Authentcation is required.
0
+
0
+ entry is the entry id.
0
+ '''
0
+ if not request.session.get('nickname', None):
0
+ return HttpResponseRedirect(reverse('login'))
0
+ f = friendfeed.FriendFeed(request.session['nickname'],
0
+ request.session['key'])
0
+ try:
0
+ f.delete_entry(entry)
0
+ except Exception, e:
0
+ if e[0] == 401:
0
+ del request.session['nickname']
0
+ del request.session['key']
0
+ return HttpResponseRedirect(reverse(str(e)))
0
+ next = request.GET.get('next', '/')
0
+ if '?' in next:
0
+ next = next + '&message=deleted&entry=%s' % entry
0
+ else:
0
+ next = next + '?message=deleted&entry=%s' % entry
0
+ next = next + '#%s' % entry
0
+ return HttpResponseRedirect(next)
0
+
0
+def entry_undelete(request, entry):
0
+ '''Un-delete an entry.
0
+
0
+ Authentcation is required.
0
+
0
+ entry is the entry id.
0
+ '''
0
+ if not request.session.get('nickname', None):
0
+ return HttpResponseRedirect(reverse('login'))
0
+ f = friendfeed.FriendFeed(request.session['nickname'],
0
+ request.session['key'])
0
+ try:
0
+ f.undelete_entry(entry)
0
+ except Exception, e:
0
+ if e[0] == 401:
0
+ del request.session['nickname']
0
+ del request.session['key']
0
+ return HttpResponseRedirect(reverse(str(e)))
0
+ next = request.GET.get('next', '/')
0
+ if '?' in next:
0
+ next = next + '&message=shared&entry=%s' % entry
0
+ else:
0
+ next = next + '?message=shared&entry=%s' % entry
0
+ next = next + '#%s' % entry
0
+ return HttpResponseRedirect(next)
0
+
0
 def entry_hide(request, entry):
0
     '''Hide an entry.
0
 
0
@@ -521,9 +573,9 @@ def share(request):
0
                 return HttpResponseRedirect(reverse(str(e)))
0
     next = request.POST.get('next', '/')
0
     if '?' in next:
0
- next = next + '&message=created'
0
+ next = next + '&message=shared&entry=%s' % entry['id']
0
     else:
0
- next = next + '?message=created'
0
+ next = next + '?message=shared&entry=%s' % entry['id']
0
     next += '#%s' % entry['id']
0
     return HttpResponseRedirect(next)
0
 
...
15
16
17
18
 
19
 
 
20
21
22
23
24
 
 
 
 
 
 
 
 
 
25
26
27
...
123
124
125
 
 
 
 
126
127
128
...
15
16
17
 
18
19
20
21
22
23
 
 
 
24
25
26
27
28
29
30
31
32
33
34
35
...
131
132
133
134
135
136
137
138
139
140
0
@@ -15,13 +15,21 @@
0
             {% ifequal request.message 'settings' %}
0
                 Did you know that you can <a href="{% url settings %}">change your font size and other settings</a>?
0
             {% endifequal %}
0
- {% ifequal request.message 'created' %}
0
+ {% ifequal request.message 'shared' %}
0
                 Entry created
0
+ -
0
+ <a href="{% url entry_delete request.entry %}"?next={{ request.path }}">Undo</a>
0
             {% endifequal %}
0
             {% ifequal request.message 'deleted' %}
0
- Comment deleted
0
- -
0
- <a href="{% url comment_undelete request.entry,request.comment %}?next={{ request.path }}">Undo</a>
0
+ {% if request.comment %}
0
+ Comment deleted
0
+ -
0
+ <a href="{% url comment_undelete request.entry,request.comment %}?next={{ request.path }}">Undo</a>
0
+ {% else %}
0
+ Entry deleted
0
+ -
0
+ <a href="{% url entry_undelete request.entry %}"?next={{ request.path }}">Undo</a>
0
+ {% endif %}
0
             {% endifequal %}
0
             {% ifequal request.message 'commented' %}
0
                 Comment created
0
@@ -123,6 +131,10 @@
0
                                 <a href="{% url entry_hide entry.id %}?next={{ request.path }}">Hide</a>
0
                             {% endifnotequal %}
0
                         {% endif %}
0
+ {% ifequal entry.user.nickname request.session.nickname %}
0
+ -
0
+ <a href="{% url entry_delete entry.id %}?next={{ request.path }}">Delete</a>
0
+ {% endifequal %}
0
                     {% endif %}
0
                     {% if entry.likes %}
0
                         -
...
20
21
22
 
 
23
24
25
...
20
21
22
23
24
25
26
27
0
@@ -20,6 +20,8 @@ urlpatterns = patterns('',
0
     url(r'^(?P<nickname>\w+)/$', 'fftogo.views.user', name='user'),
0
     url(r'^(?P<nickname>\w+)/(?P<type>\w+)/$', 'fftogo.views.user', name='user_type'),
0
     url(r'^e/(?P<entry>[\w-]+)/comment/$', 'fftogo.views.entry_comment', name='entry_comment'),
0
+ url(r'^e/(?P<entry>[\w-]+)/delete/$', 'fftogo.views.entry_delete', name='entry_delete'),
0
+ url(r'^e/(?P<entry>[\w-]+)/undelete/$', 'fftogo.views.entry_undelete', name='entry_undelete'),
0
     url(r'^e/(?P<entry>[\w-]+)/c/(?P<comment>[\w-]+)/delete/$', 'fftogo.views.comment_delete', name='comment_delete'),
0
     url(r'^e/(?P<entry>[\w-]+)/c/(?P<comment>[\w-]+)/undelete/$', 'fftogo.views.comment_undelete', name='comment_undelete'),
0
     url(r'^e/(?P<entry>[\w-]+)/like/$', 'fftogo.views.entry_like', name='entry_like'),

Comments

    No one has commented yet.