87 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import json
 | |
| import itertools
 | |
| 
 | |
| USER_PLANS = [
 | |
|   {
 | |
|     'title': 'Open Source',
 | |
|     'price': 0,
 | |
|     'privateRepos': 0,
 | |
|     'stripeId': 'free',
 | |
|     'audience': 'Share with the world',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Micro',
 | |
|     'price': 700,
 | |
|     'privateRepos': 5,
 | |
|     'stripeId': 'micro',
 | |
|     'audience': 'For smaller teams',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Basic',
 | |
|     'price': 1200,
 | |
|     'privateRepos': 10,
 | |
|     'stripeId': 'small',
 | |
|     'audience': 'For your basic team',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Medium',
 | |
|     'price': 2200,
 | |
|     'privateRepos': 20,
 | |
|     'stripeId': 'medium',
 | |
|     'audience': 'For medium teams',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Large',
 | |
|     'price': 5000,
 | |
|     'privateRepos': 50,
 | |
|     'stripeId': 'large',
 | |
|     'audience': 'For larger teams',
 | |
|   },
 | |
| ]
 | |
| 
 | |
| BUSINESS_PLANS = [
 | |
|   {
 | |
|     'title': 'Open Source',
 | |
|     'price': 0,
 | |
|     'privateRepos': 0,
 | |
|     'stripeId': 'bus-free',
 | |
|     'audience': 'Committment to FOSS',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Skiff',
 | |
|     'price': 2500,
 | |
|     'privateRepos': 10,
 | |
|     'stripeId': 'bus-micro',
 | |
|     'audience': 'For startups',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Yacht',
 | |
|     'price': 5000,
 | |
|     'privateRepos': 20,
 | |
|     'stripeId': 'bus-small',
 | |
|     'audience': 'For small businesses',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Freighter',
 | |
|     'price': 10000,
 | |
|     'privateRepos': 50,
 | |
|     'stripeId': 'bus-medium',
 | |
|     'audience': 'For normal businesses',
 | |
|   },
 | |
|   {
 | |
|     'title': 'Tanker',
 | |
|     'price': 20000,
 | |
|     'privateRepos': 125,
 | |
|     'stripeId': 'bus-large',
 | |
|     'audience': 'For large businesses',
 | |
|   },
 | |
| ]
 | |
| 
 | |
| 
 | |
| def get_plan(id):
 | |
|   """ Returns the plan with the given ID or None if none. """
 | |
|   for plan in itertools.chain(USER_PLANS, BUSINESS_PLANS):
 | |
|     if plan['stripeId'] == id:
 | |
|       return plan
 | |
| 
 | |
|   return None
 |