private void FolderRequestSuccess(FolderResponse response) { if (response.status == 0) { jQuery.Select("#folders-area").Children().Remove(); if (response.folders.Length == 0) { Template.Get("client", "noitem-well", true).AppendTo(jQuery.Select("#folders-area")); } new FoldersWidget(jQuery.Select("#folders-area"), response.folders, ""); FoldersWidget.ExpandToFolder(MangasModule.Instance.CurrentFolder); } else { Window.SetTimeout( delegate { Request.Send(new FolderRequest(), FolderRequestSuccess); }, 1000); } }
public override void HandleRequest(string jsonString, AjaxBase ajax) { FolderResponse response = new FolderResponse(); Collection[] collections = Collection.GetAccessible(ajax); List<FolderJson> folders = new List<FolderJson>(); bool ready = true; foreach (Collection collection in collections) { string folderJsonString = collection.FolderCache; if (folderJsonString != null) { folders.Add(Utility.ParseJson<FolderJson>(folderJsonString)); } else { ready = false; if (collection.CacheStatus == 1) { ThreadHelper.Run("CollectionProcessFolderCache", collection.Id); } } } if (!ready) { response.status = 1; } else { response.status = 0; response.folders = folders.ToArray(); } ajax.ReturnJson(response); }