forked from endorphant/ttbp
		
	added www feels directory
whenever someone completes writing or editing a new entry, post to the global feels directory at ttbp/index.html
This commit is contained in:
		
							parent
							
								
									4aa185a9cf
								
							
						
					
					
						commit
						7c1e28e919
					
				
							
								
								
									
										38
									
								
								bin/_ttbp.py
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								bin/_ttbp.py
									
									
									
									
									
								
							| @ -271,6 +271,7 @@ def main_menu(): | ||||
|         redraw() | ||||
|         today = time.strftime("%Y%m%d") | ||||
|         write_entry(os.path.join(DATA, today+".txt")) | ||||
|         www_neighbors(find_ttbps()) | ||||
|     elif choice == '1': | ||||
|         redraw("here are your recorded feels, listed by date:\n\n") | ||||
|         view_own() | ||||
| @ -341,7 +342,6 @@ def view_neighbors(users): | ||||
|         files = os.listdir(os.path.join("/home", user, ".ttbp", "entries")) | ||||
|         files.sort() | ||||
|         for filename in files: | ||||
|             #if os.path.splitext(filename)[1] == ".txt" and len(os.path.splitext(filename)[0]) == 8: | ||||
|             if core.valid(filename): | ||||
|                 count += 1 | ||||
|                 lastfile = os.path.join("/home", user, ".ttbp", "entries", filename) | ||||
| @ -532,6 +532,42 @@ def find_ttbps(): | ||||
| 
 | ||||
|     return users | ||||
| 
 | ||||
| def www_neighbors(users): | ||||
|     # takes a raw list of valid users and formats for www view | ||||
| 
 | ||||
|     userList = [] | ||||
| 
 | ||||
|     for user in users: | ||||
|         userRC = json.load(open(os.path.join("/home", user, ".ttbp", "config", "ttbprc"))) | ||||
|         url = LIVE+user+"/"+userRC["publish dir"] | ||||
|         count = 0 | ||||
|         lastfile = "" | ||||
|         files = os.listdir(os.path.join("/home", user, ".ttbp", "entries")) | ||||
|         files.sort() | ||||
|         for filename in files: | ||||
|             if core.valid(filename): | ||||
|                 count += 1 | ||||
|                 lastfile = os.path.join("/home", user, ".ttbp", "entries", filename) | ||||
| 
 | ||||
|         ago = "never" | ||||
|         if lastfile: | ||||
|             last = os.path.getctime(lastfile) | ||||
|             since = time.time()-last | ||||
|             ago = util.pretty_time(int(since)) + " ago" | ||||
|         else: | ||||
|             last = 0 | ||||
| 
 | ||||
|         userList.append(["<a href=\""+url+"\">~"+user+"</a> ("+ago+")", last]) | ||||
| 
 | ||||
|     # sort user by most recent entry | ||||
|     userList.sort(key = lambda userdata:userdata[1]) | ||||
|     userList.reverse() | ||||
|     sortedUsers = [] | ||||
|     for user in userList: | ||||
|         sortedUsers.append(user[0]) | ||||
| 
 | ||||
|     core.write_global_feed(sortedUsers) | ||||
| 
 | ||||
| def list_select(options, prompt): | ||||
|     # runs the prompt for the list until a valid index is imputted | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										47
									
								
								bin/core.py
									
									
									
									
									
								
							
							
						
						
									
										47
									
								
								bin/core.py
									
									
									
									
									
								
							| @ -16,6 +16,7 @@ LIVE = "http://tilde.town/~" | ||||
| WWW = os.path.join(PATH, "www") | ||||
| CONFIG = os.path.join(PATH, "config") | ||||
| DATA = os.path.join(PATH, "entries") | ||||
| FEED = os.path.join(SOURCE, "www", "index.html") | ||||
| 
 | ||||
| HEADER = "" | ||||
| FOOTER = "" | ||||
| @ -175,6 +176,52 @@ def valid(filename): | ||||
| 
 | ||||
|     return True | ||||
| 
 | ||||
| def write_global_feed(blogList): | ||||
|     # takes an array of the current global blog status and prints it to | ||||
|     # set www | ||||
| 
 | ||||
|     outfile = open(FEED, "w") | ||||
| 
 | ||||
|     ## header | ||||
|     outfile.write("""\ | ||||
| <!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 3.2//EN\"> | ||||
| <html> | ||||
|     <head> | ||||
|         <title>tilde.town global feels engine</title> | ||||
|         <link rel=\"stylesheet\" href=\"style.css\" /> | ||||
|     </head> | ||||
|     <body> | ||||
|         <h1>tilde.town feels engine</h1> | ||||
| 
 | ||||
|         <h2><a href="https://github.com/modgethanc/ttbp">github | ||||
|         repo</a> | <a | ||||
|         href="http://tilde.town/~endorphant/blog/20160510.html">state | ||||
|         of the ttbp</a></h2> <div class="box"> | ||||
|         <p>curious? run <b>~endorphant/bin/ttbp</b> while logged in to tilde.town.</p> | ||||
|         <p>it's still a little volatile. let me know if anything breaks.</p> | ||||
|         <p> </p> | ||||
| 
 | ||||
|         <h3>live feels-sharing:</h3> | ||||
|         <div class=\"feed\"> | ||||
|             <ul> | ||||
| """) | ||||
| 
 | ||||
|     ## feed | ||||
|     for blog in blogList: | ||||
|         outfile.write(""" | ||||
|                 <li>"""+blog+"""</li>\ | ||||
|                     """) | ||||
| 
 | ||||
|     ## footer | ||||
|     outfile.write(""" | ||||
|             </ul> | ||||
|         </div> | ||||
|   </body> | ||||
| </html> | ||||
| """) | ||||
| 
 | ||||
|     outfile.close() | ||||
| 
 | ||||
| 
 | ||||
| ############# | ||||
| ############# | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user