Skip to content

Commit

Permalink
v2.0
Browse files Browse the repository at this point in the history
- Completely redesigned UI with animated stacked bar graphs
- Support for multiple accounts
- New Payments view
- New world map view
- Report details can now be filtered both by app and by country
- Reviews can be filtered by rating and app
- Import and export now use iTunes File Sharing instead of Bonjour
- Support for viewing the original CSV files within the app
- Support for renaming and hiding apps
- Improved support for multiple apps with the same name (Mac/iOS)
- Improved support for in-app purchases
  • Loading branch information
Ole Zorn committed Aug 3, 2011
1 parent d1ed0fe commit 64a0977
Show file tree
Hide file tree
Showing 864 changed files with 59,930 additions and 30,431 deletions.
2,976 changes: 2,976 additions & 0 deletions AppSales.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

3,345 changes: 0 additions & 3,345 deletions AppSalesMobile.xcodeproj/project.pbxproj

This file was deleted.

This file was deleted.

This file was deleted.

8 changes: 0 additions & 8 deletions AppSalesMobile_Prefix.pch

This file was deleted.

Binary file not shown.
Binary file removed Artwork/AppSalesIcon.lineform/data
Binary file not shown.
Binary file removed Artwork/AppSalesIcon512.png
Binary file not shown.
Binary file removed CalculatorClick.caf
Binary file not shown.
19 changes: 19 additions & 0 deletions Classes/AboutViewController.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
//
// AboutViewController.h
// AppSales
//
// Created by Ole Zorn on 02.08.11.
// Copyright 2011 omz:software. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface AboutViewController : UIViewController <UIWebViewDelegate> {

UIWebView *webView;
}

@property (nonatomic, retain) UIWebView *webView;


@end
66 changes: 66 additions & 0 deletions Classes/AboutViewController.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
//
// AboutViewController.m
// AppSales
//
// Created by Ole Zorn on 02.08.11.
// Copyright 2011 omz:software. All rights reserved.
//

#import "AboutViewController.h"

@implementation AboutViewController

@synthesize webView;

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.title = NSLocalizedString(@"About", nil);
}
return self;
}

- (void)loadView
{
self.webView = [[[UIWebView alloc] initWithFrame:CGRectZero] autorelease];
webView.scalesPageToFit = YES;
webView.dataDetectorTypes = UIDataDetectorTypeNone;
webView.delegate = self;
self.view = webView;
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(done:)] autorelease];
}

- (void)viewWillAppear:(BOOL)animated
{
[self.webView loadRequest:[NSURLRequest requestWithURL:[[NSBundle mainBundle] URLForResource:@"About" withExtension:@"html"]]];
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
[[UIApplication sharedApplication] openURL:[request URL]];
return NO;
}
return YES;
}

- (void)done:(id)sender
{
[self dismissModalViewControllerAnimated:YES];
}

- (void)dealloc
{
webView.delegate = nil;
[webView release];
[super dealloc];
}


@end
26 changes: 0 additions & 26 deletions Classes/AbstractDayOrWeekController.h

This file was deleted.

87 changes: 0 additions & 87 deletions Classes/AbstractDayOrWeekController.m

This file was deleted.

40 changes: 40 additions & 0 deletions Classes/Account.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
//
// Account.h
// AppSales
//
// Created by Ole Zorn on 30.06.11.
// Copyright (c) 2011 omz:software. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>


@interface Account : NSManagedObject {

BOOL isDownloadingReports;
NSString *downloadStatus;
float downloadProgress;
}

@property (nonatomic, assign) BOOL isDownloadingReports;
@property (nonatomic, retain) NSString *password; // this property encapsulates the keychain access,
// it is not actually stored in the Core Data model
@property (nonatomic, retain) NSString *downloadStatus;
@property (nonatomic, assign) float downloadProgress;

// Core Data properties:
@property (nonatomic, retain) NSString *username;
@property (nonatomic, retain) NSString *title;
@property (nonatomic, retain) NSNumber *sortIndex;
@property (nonatomic, retain) NSSet *dailyReports;
@property (nonatomic, retain) NSSet *weeklyReports;
@property (nonatomic, retain) NSSet *products;
@property (nonatomic, retain) NSSet *payments;
@property (nonatomic, retain) NSNumber *reportsBadge;
@property (nonatomic, retain) NSNumber *paymentsBadge;

- (void)deletePassword;
- (NSString *)displayName;

@end
42 changes: 42 additions & 0 deletions Classes/Account.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
//
// Account.m
// AppSales
//
// Created by Ole Zorn on 30.06.11.
// Copyright (c) 2011 omz:software. All rights reserved.
//

#import "Account.h"
#import "SSKeychain.h"

#define kAccountKeychainServiceIdentifier @"iTunesConnect"

@implementation Account

@dynamic username, title, sortIndex, dailyReports, weeklyReports, products, payments, reportsBadge, paymentsBadge;
@synthesize isDownloadingReports, downloadStatus, downloadProgress;

- (NSString *)password
{
return [SSKeychain passwordForService:kAccountKeychainServiceIdentifier account:self.username];
}

- (void)setPassword:(NSString *)newPassword
{
[SSKeychain setPassword:newPassword forService:kAccountKeychainServiceIdentifier account:self.username];
}

- (void)deletePassword
{
[SSKeychain deletePasswordForService:kAccountKeychainServiceIdentifier account:self.username];
}

- (NSString *)displayName
{
if (self.title && ![self.title isEqualToString:@""]) {
return self.title;
}
return self.username;
}

@end
Loading

0 comments on commit 64a0977

Please sign in to comment.