def main(): name = init_log() ryw_view.print_header_logo() print '<TITLE>Browsing Selection</TITLE>' offsetResult = get_offset() success,isAll,offsetNum = offsetResult if not success: DisplaySelection.exit_now(1) print_header(name) rfpath = os.path.join(RepositoryRoot, 'QUEUES', name) reqList = read_list(rfpath) if not reqList: ryw.give_news('no object selected.', logging.info) DisplaySelection.exit_now(0) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'ShowQueue.main:') if not success: DisplaySelection.exit_now(0) if go_through_list(reqList, offResult = offsetResult, searchFile = searchFile, reverseLists = reverseLists): print_buttons(name) ryw_view.print_footer() searchFile.done() reverseLists.done()
def show_one_server_object(meta): success, searchFile, reverseLists = ReverseLists.open_searchfile_reverselists( "WebUpload_ryw.show_one_server_object:" ) if not success: return None print Browse.script_str() # displayObject = ryw_view.DisplayObject(RepositoryRoot, # calledByVillageSide = False, # missingFileFunc = None) displayObject = ryw_view.DisplayObject( RepositoryRoot, calledByVillageSide=False, missingFileFunc=Browse.reqDownloadFunc, searchFile=searchFile, reverseLists=reverseLists, ) displayObject.begin_print() displayObject.show_an_object_compact(meta) displayObject.end_print() reverseLists.done() return searchFile
def main(): ryw.check_logging(os.path.join(RepositoryRoot, 'WWW', 'logs'), 'upload.log') logging.debug('CurrSelAddedToThisSel: entered...') ryw_view.print_header_logo() success,objID,version = ryw.get_obj_str() if not success: ryw.give_bad_news('CurrSelToThisSel: failed to get objstr.', logging.critical) DisplaySelection.exit_now(1) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists('CurrSelAddedToThisSel:') if not success: ryw.give_bad_news('CurrSelAddedToThisSel: ' + 'open_searchfile_reverselists failed.', logging.critical) DisplaySelection.exit_now(1) rfpath = DisplaySelection.get_file_path( objID, version, searchFile = searchFile) if not rfpath: ryw.give_bad_news( 'CurrSelAddedToThisSel: no selection file name found.', logging.error) DisplaySelection.exit_now(1) queueName = DeleteRepReq.get_queue_name() if not queueName: ryw.give_bad_news( 'CurrSelToThisSel: failed to get current selection file name.', logging.error) DisplaySelection.exit_now(1) queueSel = ProcessDownloadReq.get_reqs(queueName) savedSel = ProcessDownloadReq.get_reqs(rfpath) newContainees = list(queueSel) AddSearchAll.union_and_write(savedSel, queueSel, rfpath) ryw.give_news('You may want to reload the page containing '+ 'this selection.', logging.info) success = reverseLists.add(objID+'#'+str(version), newContainees) if not success: ryw.give_bad_news('CurrSelAddedToThisSel: reverseLists.add failed.', logging.critical) reverseLists.done() searchFile.done() DisplaySelection.exit_now(0)
def main(): ryw.check_logging(os.path.join(RepositoryRoot, 'WWW', 'logs'), 'upload.log') logging.debug('DeleteFromSel: entered...') ProcessDownloadReq.print_header() #ProcessDownloadReq.delete_request(queue) form = cgi.FieldStorage() if (not form.has_key('objstr')) or (not form.has_key('selobj')): ryw.give_bad_news('DeleteFromSel.py: lacking arguments.', logging.critical) DisplaySelection.exit_now(1) objstr = form.getfirst('objstr', '') selobj = form.getfirst('selobj', '') if (not objstr) or (not selobj): ryw.give_bad_news('DeleteFromSel.py: null arguments.', logging.critical) DisplaySelection.exit_now(1) #ryw.give_news('DeleteFromSel.py: ' + objstr, logging.info) #ryw.give_news('DeleteFromSel.py: ' + selobj, logging.info) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists('DeleteFromSel:') if not success: ryw.give_bad_news( 'DeleteFromSel: open_searchfile_reverselists failed.', logging.critical) DisplaySelection.exit_now(1) objID,version = selobj.split('#') version = int(version) rfpath = DisplaySelection.get_file_path(objID, version, searchFile=searchFile) if not rfpath: DisplaySelection.exit_now(1) success = ProcessDownloadReq.do_delete(rfpath, objstr) if success: sys.stdout.write("True") else: print "Failed to delete from selection." reverseLists.remove_obsolete_containers(objstr, [selobj]) reverseLists.done()
def main(): """modeled after ShowQueue.py.""" name = ShowQueue.init_log() ryw_view.print_header_logo() print "<TITLE>Prepare for Automated Hindi Translation</TITLE>" rfpath = os.path.join(RepositoryRoot, "QUEUES", name) reqList = ShowQueue.read_list(rfpath) if not reqList: ryw.give_news("SelectText.py: no object selected.", logging.info) DisplaySelection.exit_now(0) success, searchFile, reverseLists = ReverseLists.open_searchfile_reverselists("SelectTexts.main:") if not success: DisplaySelection.exit_now(0) extract_texts(reqList, searchFile) ryw.give_news("done.", logging.info) ryw_view.print_footer() searchFile.done() reverseLists.done()
def main(): init_log() ryw_view.print_header_logo() print '<TITLE>Rebuild ReverseLists</TITLE>' success,newReverseListsFile,objectStoreRoot = decide_path() if not success: sys.exit(1) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'RebuildReverseLists:', newReverseListsFileName = newReverseListsFile) if not success: sys.exit(1) else: ryw.give_news2('<BR>new ReverseLists generated at: ' + newReverseListsFile + '<BR>', logging.info) go_through_object_store(objectStoreRoot, reverseLists) if reverseLists: reverseLists.done() ryw_view.print_footer()
def main(): name = ShowQueue.init_log('DisplayVersions') ryw_view.print_header_logo() print '<TITLE>Display All Versions</TITLE>' form = cgi.FieldStorage() objID = form.getfirst('objid', '') if not objID: ryw.give_bad_news( 'DisplayVersions: no objID given.', logging.error) exit_now(1) else: ryw.db_print_info_browser('DisplayVersions: objID = ' + objID, 32) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'DisplaySelection.main:') if not success: exit_now(1) print_title() success,allVersions = searchFile.get_all_version_meta(objID) if not success: ryw.give_bad_news( 'DisplayVersion: searchFile.get_all_version_meta failed: ' + objID, logging.error) exit_now(1) numVers = len(allVersions) if numVers < 1: ryw.give_bad_news( 'DisplayVersions: no version found.', logging.error) exit_now(1) metaList = allVersions.values() ryw.db_print_info_browser('DisplayVersions: ' + repr(metaList), 32) metaList = ryw.sortmeta(metaList) displayObject = ryw_view.DisplayObject( RepositoryRoot, calledByVillageSide = False, missingFileFunc = Browse.reqDownloadFunc, searchFile = searchFile, reverseLists = reverseLists) print "<BR><B><FONT SIZE=2>Displaying " + str(numVers) + \ " version(s) of the object.</FONT></B>" displayObject.begin_print() for meta in metaList: displayObject.show_an_object_compact(meta) displayObject.end_print() ryw_view.print_footer() reverseLists.done() searchFile.done()
def generate(self): """Main Browse View function.""" ryw.print_header() self.print_initialHTML() form = cgi.FieldStorage() # setup_logging() viewroot = form.getfirst('viewroot', '') if not viewroot: ryw.give_bad_news('viewroot not found',logging.error) sys.exit(1) ryw.db_print2('Browse.generate: viewroot is: ' + viewroot, 61) if viewroot[-1] == os.sep: viewroot = viewroot[:-1] relpath = form.getfirst('relpath', os.sep) ryw.db_print2('Browse.generate: relpath1: ' + relpath, 61) relpath = ryw_bizarro.fix_browse_rel_path(relpath) ryw.db_print2('Browse.generate: relpath2: ' + relpath, 61) if relpath[0] != os.sep: relpath = os.sep + relpath if relpath[-1] != os.sep: relpath = relpath + os.sep ryw.db_print2('Browse.generate: relpath3: ' + relpath, 61) path = viewroot + relpath self.viewroot = viewroot self.relpath = relpath # path must be a directory if not os.path.exists(path): ryw.give_news('path no longer exists: ' + path, logging.warning) sys.exit(1) ll = os.listdir(path) #success,searchFile = ryw.open_search_file( # self.scriptName + ':', self.logDir, self.logFile, # self.searchFile, False) #if not success: # sys.exit(1) count=0 title = relpath[1:-1] title = title.replace("\\"," » ") #print "<H2>The Digital StudyHall</H2>" ryw_view.print_logo() if title != "": print "<H3> content repository: %s </H3>" % (title,) else: print "<H3> content repository: </H3>" print "<TABLE border=0 width=100%><TR>" for i in ll: if not os.path.isfile(path+i): print '<td width=20%%><A HREF="%s?viewroot=%s&relpath=%s%s"><img src="/icons/folder.gif" border=0><br>%s</A></td>' % (self.scriptName,viewroot,relpath,i,i) count += 1 if (count == 5): print "</TR><TR>" count = 0 while (count < 5): print "<td width=20%> </td>" count += 1 print "</TR></TABLE>" metalist = [] for i in ll: if os.path.isfile(path + i): # get its metadata from server and add option # for 'add to downloadqueue' f = open(path + i) line = f.readline() f.close() if line[-1] == '\n': line = line[:-1] objname, version = line.split('#') version = int(version) #success,d = searchFile.get_meta(objname, # version) success,d = ryw.get_meta(self.absObjStoreRoot, objname, version) if not success: logging.warning( self.scriptName + ': get_meta failed: ' + objname + ' ' + str(version)) continue metalist.append(d) metalist = ryw.sortmeta(metalist) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'Browse.generate:') if not success: sys.exit(1) displayObject = ryw_view.DisplayObject( self.Root, calledByVillageSide = self.calledByVillageSide, missingFileFunc = reqDownloadFunc, searchFile = searchFile, reverseLists = reverseLists) displayObject.begin_print() for i in metalist: #self.generate_row(d) displayObject.show_an_object_compact(i) displayObject.end_print() self.print_footer() searchFile.done() reverseLists.done()
def main(): name = ShowQueue.init_log() ryw_view.print_header_logo() print '<TITLE>Browsing Saved Selection</TITLE>' success,objID,version = ryw.get_obj_str() if not success: ryw.give_bad_news('DisplaySelection: failed to get objstr.', logging.critical) exit_now(1) offsetResult = ShowQueue.get_offset() success,isAll,offsetNum = offsetResult if not success: exit_now(1) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'DisplaySelection.main:') if not success: sys.exit(1) success = print_title(objID, version, name, searchFile) if not success: exit_now(1) nameTriple = get_file_paths2(objID, version, searchFile = searchFile) if not nameTriple: exit_now(1) rfpath,chapterListPath,chapterFullName = nameTriple if not rfpath: exit_now(1) reqList = ShowQueue.read_list(rfpath) if not reqList: ryw.give_news('This selection is empty.<BR>', logging.info) print '<BR>' print_links(objID, version, name) exit_now(0) # # do this before displaying so that the ReverseLists is # properly reflected before we hit the display code. # result = reverseLists.add(objID + '#' + str(version), reqList) # # process the chapter list. 10/24/08. # success,chapterList = ChapterList.create_and_initialize( objID + '#' + str(version), reqList, searchFile, reverseLists, chapterFullName) if not success: ryw.give_bad_news('ChapterList.create_and_initialize failed: ' + objID + '#' + str(version), logging.error) exit_now(1) scriptName = '/cgi-bin/DisplaySelection.py?objstr=' + \ objID + '%23' + str(version) success = \ ShowQueue.go_through_list(reqList, callBackFunc = delOneSelFunc, cBackArg = objID + '#' + str(version), offResult = offsetResult, cgiScript = scriptName, scriptConnectChar = '&', searchFile = searchFile, reverseLists = reverseLists, chapterList = chapterList) if success: print_links(objID, version, name) ryw_view.print_footer() reverseLists.done() searchFile.done()
def main(): """modeled after DisplaySelection.py. This is for displaying a form that allows editing the chapter list.""" name = ShowQueue.init_log() ryw_view.print_header_logo() print '<TITLE>Edit the Chapter List</TITLE>' success,objID,version = ryw.get_obj_str() if not success: ryw.give_bad_news('ChapterListForm: failed to get objstr.', logging.critical) DisplaySelection.exit_now(1) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'DisplaySelection.main:') if not success: DisplaySelection.exit_now(1) print '<BR><B>Edit chapter names for this selection:</B><BR><BR>' success = DisplaySelection.print_title(objID, version, name, searchFile) if not success: DisplaySelection.exit_now(1) ryw.db_print2('<BR>ChapterListForm.py entered.<BR>', 38) nameTriple = DisplaySelection.get_file_paths2( objID, version, searchFile = searchFile) if not nameTriple: DisplaySelection.exit_now(1) rfpath,chapterListPath,chapterFullName = nameTriple if not rfpath: DisplaySelection.exit_now(1) reqList = ShowQueue.read_list(rfpath) if not reqList: ryw.give_news('This selection is empty.<BR>', logging.info) print '<BR>' print_links(objID, version, name) DisplaySelection.exit_now(0) ryw.db_print2('ChapterListForm.py: gotten selection list.', 38) success,chapterList = ChapterList.create_and_initialize( objID + '#' + str(version), reqList, searchFile, reverseLists, chapterFullName) if not success: ryw.give_bad_news('ChapterList.create_and_initialize failed: ' + objID + '#' + str(version), logging.error) DisplaySelection.exit_now(1) page = chapterList.make_form_string() print page ryw_view.print_footer() reverseLists.done() searchFile.done()
def main(): """modeled after ChapterListForm.py. This is for displaying a form that allows editing the chapter list.""" name = ShowQueue.init_log() ryw_view.print_header_logo() print '<TITLE>Processing the Chapter List</TITLE>' ryw.db_print2('<BR>ChapterListFormHandle.py: entered... <BR>', 39) form = cgi.FieldStorage() success,objID,version = ryw.get_obj_str(form = form) if not success: ryw.give_bad_news('ChapterListFormHandle: failed to get objstr.', logging.critical) DisplaySelection.exit_now(1) ryw.db_print2('ChapterListFormHandle: objstr is: ' + objID + '#' + str(version), 40) chapterList = ChapterList.ChapterList(objID + '#' + str(version)) success,formEntries = chapterList.process_form(form) if not success: ryw.give_bad_news('ChapterListFormHandle: process_form() failed.', logging.error) DisplaySelection.exit_now(1) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists( 'DisplaySelection.main:') if not success: DisplaySelection.exit_now(1) success = DisplaySelection.print_title(objID, version, name, searchFile) if not success: DisplaySelection.exit_now(1) ryw.db_print2('<BR>ChapterListFormHandle.py entered.<BR>', 41) nameTriple = DisplaySelection.get_file_paths2( objID, version, searchFile = searchFile) if not nameTriple: DisplaySelection.exit_now(1) rfpath,chapterListPath,chapterListFullName = nameTriple if not rfpath: DisplaySelection.exit_now(1) ryw.db_print2('ChapterListFormHandle: chapter list file is: ' + chapterListFullName, 41) reqList = ShowQueue.read_list(rfpath) if not reqList: ryw.give_news('This selection is empty.<BR>', logging.info) print '<BR>' print_links(objID, version, name) DisplaySelection.exit_now(0) ryw.db_print2('ChapterListForm.py: gotten selection list.', 41) success = chapterList.initialize_with_meta_list( reqList, searchFile, reverseLists) if not success: ryw.give_bad_news('ChapterListFormHandle: ' + 'initialize_with_meta_list failed.', logging.error) DisplaySelection.exit_now(1) chapterList.compare_form_entries_against_meta() if not chapterList.write_file(chapterListFullName): ryw.give_bad_news('ChapterListFormHandle: write_file() failed.', logging.error) DisplaySelection.exit_now(1) ryw.give_news('chapter list saved.', logging.info) ryw_view.print_footer() reverseLists.done() searchFile.done()
def main(): ryw.check_logging(os.path.join(RepositoryRoot, 'WWW', 'logs'), 'upload.log') logging.debug('CurrSelToThisSel: entered...') ryw_view.print_header_logo() success,objID,version = ryw.get_obj_str() if not success: ryw.give_bad_news('CurrSelToThisSel: failed to get objstr.', logging.critical) DisplaySelection.exit_now(1) success,searchFile,reverseLists = \ ReverseLists.open_searchfile_reverselists('CurrSelToThisSel:') if not success: ryw.give_bad_news('CurrSelToThisSel: ' + 'open_searchfile_reverselists failed.', logging.critical) DisplaySelection.exit_now(1) rfpath = DisplaySelection.get_file_path( objID, version, searchFile = searchFile) if not rfpath: ryw.give_bad_news( 'CurrSelToThisSel: no selection file name found.', logging.error) DisplaySelection.exit_now(1) oldContainees = ShowQueue.read_list(rfpath) queueName = DeleteRepReq.get_queue_name() if not queueName: ryw.give_bad_news( 'CurrSelToThisSel: failed to get current selection file name.', logging.error) DisplaySelection.exit_now(1) newContainees = ShowQueue.read_list(queueName) try: shutil.copyfile(queueName, rfpath) except: ryw.give_bad_news('CurrSelToThisSel: failed to overwrite: ' + queueName + ' -> ' + rfpath, logging.critical) DisplaySelection.exit_now(1) ryw.give_news( 'The current selection successfully loaded as this selection.', logging.info) ryw.give_news('You may want to reload the page containing '+ 'this selection.', logging.info) success = reverseLists.redefine_container( objID+'#'+str(version), oldContainees, newContainees) if not success: ryw.give_bad_news('CurrSelToThisSel: ' + 'reverseLists.redefine_container failed.', logging.critical) reverseLists.done() searchFile.done() ryw_view.print_footer()