Browse Source

Initial commit of YBDB code from July 24, 2014.

master
Jonathan Rosenbaum 10 years ago
commit
6d2028ae08
  1. BIN
      150_10.jpg
  2. 10
      Connections/YBDB.php
  3. 431
      Connections/database_functions.php
  4. 109
      MMHTTPDB.php
  5. 799
      MySQL_Structure.sql
  6. 47
      Templates/.metadata/.log
  7. 14
      Templates/.metadata/.plugins/com.aptana.core.io/connections.12
  8. BIN
      Templates/.metadata/.plugins/com.aptana.editor.php/76598679
  9. BIN
      Templates/.metadata/.plugins/com.aptana.editor.php/indexMappings
  10. BIN
      Templates/.metadata/.plugins/com.aptana.index.core/114577082.index
  11. BIN
      Templates/.metadata/.plugins/com.aptana.index.core/1821239576.index
  12. BIN
      Templates/.metadata/.plugins/com.aptana.index.core/2645618673.index
  13. BIN
      Templates/.metadata/.plugins/com.aptana.index.core/3575558297.index
  14. BIN
      Templates/.metadata/.plugins/com.aptana.index.core/4010369919.index
  15. 0
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/.installed_3.0.0.1337406272
  16. 10
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/Git Bash.vbs
  17. 89
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/README.portable
  18. 323
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/ReleaseNotes.rtf
  19. 8
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/awk
  20. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/basename.exe
  21. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bash.exe
  22. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bison.exe
  23. 8
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bunzip2
  24. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bzip2.exe
  25. 160
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/c_rehash
  26. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cat.exe
  27. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/chmod.exe
  28. 4
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/clear
  29. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cmp.exe
  30. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/connect.exe
  31. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cp.exe
  32. 3536
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/curl-ca-bundle.crt
  33. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/curl.exe
  34. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cut.exe
  35. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/date.exe
  36. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/diff.exe
  37. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/dirname.exe
  38. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/dos2unix.exe
  39. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/du.exe
  40. 8
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/echo
  41. 8
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/egrep
  42. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/env.exe
  43. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/expr.exe
  44. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/false.exe
  45. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/find.exe
  46. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/flex.exe
  47. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/gawk.exe
  48. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/getcp.exe
  49. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/git-receive-pack.exe
  50. BIN
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/git-upload-archive.exe
  51. 155
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/git-bash.bat
  52. 15
      Templates/.metadata/.plugins/com.aptana.portablegit.win32/git-cmd.bat
  53. 7
      Templates/.metadata/.plugins/com.aptana.syncing.core/defaultConnection.12
  54. 8
      Templates/.metadata/.plugins/com.aptana.syncing.core/sites.12
  55. 2
      Templates/.metadata/.plugins/com.aptana.webserver.core/webservers.10
  56. BIN
      Templates/.metadata/.plugins/org.eclipse.core.resources/.snap
  57. 25
      Templates/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
  58. 4
      Templates/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
  59. 1
      Templates/.metadata/version.ini
  60. 26
      Templates/YBDB Template.dwt.php
  61. BIN
      YBDB-July-24-2014.zip
  62. 10
      YBDB.php
  63. BIN
      __MACOSX/._150_10.jpg
  64. BIN
      __MACOSX/._MySQL_Structure.sql
  65. 175
      contact_add_edit.php
  66. 13
      contact_add_edit_confirmation.html
  67. 30
      contact_add_edit_confirmation_frameset.html
  68. 18
      contact_add_edit_confirmation_framesetphp.html
  69. 63
      contact_add_edit_confirmation_iframe.php
  70. 180
      contact_add_edit_newsletter.php
  71. 101
      contact_add_edit_select.php
  72. 81
      css_yb_standard.css
  73. 0
      favicon.gif
  74. 0
      favicon.ico
  75. 6
      include_footer.html
  76. 33
      include_header.html
  77. 26
      include_header_redirect.html
  78. 1
      include_test.html
  79. 17
      include_timeout.html
  80. 17
      index.php
  81. 247
      individual_history_log.php
  82. 269
      individual_hours_log.php
  83. 168
      location_add_edit.php
  84. 79
      location_add_edit_select.php
  85. 412
      mysql.php
  86. 0
      robots.txt
  87. 228
      shop_log.php
  88. 225
      shop_log.phpbak
  89. 227
      shop_log2.php
  90. 59
      shop_log_delete_shopvisitid.php
  91. 59
      shop_log_delete_shopvisitid.phpbak
  92. 227
      shop_log_wDeleteButton.php
  93. 41
      shop_welcome.php
  94. 38
      shop_welcome_long.php
  95. 197
      start_shop.php
  96. 25
      stats.php
  97. 110
      stats_MechanicOperationMetrics_byMonth.php
  98. 110
      stats_MechanicOperationMetrics_byWeek.php
  99. 109
      stats_VolVsMechMetrics_byMonth.php
  100. 109
      stats_VolVsMechMetrics_byWeek.php

BIN
150_10.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

10
Connections/YBDB.php

File diff suppressed because one or more lines are too long

431
Connections/database_functions.php

File diff suppressed because one or more lines are too long

109
MMHTTPDB.php

File diff suppressed because one or more lines are too long

799
MySQL_Structure.sql

@ -0,0 +1,799 @@
-- phpMyAdmin SQL Dump
-- version 3.3.10.4
-- http://www.phpmyadmin.net
--
-- Host: mysql.ybdb.austinyellowbike.org
-- Generation Time: Jul 24, 2014 at 06:43 AM
-- Server version: 5.1.56
-- PHP Version: 5.4.20
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `ybdb`
--
-- --------------------------------------------------------
--
-- Table structure for table `contacts`
--
CREATE TABLE IF NOT EXISTS `contacts` (
`contact_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`first_name` varchar(20) NOT NULL DEFAULT '',
`middle_initial` char(2) NOT NULL DEFAULT '',
`last_name` varchar(20) NOT NULL DEFAULT '',
`email` varchar(70) NOT NULL DEFAULT '',
`phone` varchar(45) NOT NULL DEFAULT '',
`address1` varchar(70) NOT NULL DEFAULT '',
`address2` varchar(70) NOT NULL DEFAULT '',
`city` varchar(25) NOT NULL DEFAULT '',
`state` char(2) NOT NULL DEFAULT '',
`country` varchar(25) NOT NULL DEFAULT '',
`receive_newsletter` tinyint(1) NOT NULL DEFAULT '1',
`date_created` datetime DEFAULT NULL,
`invited_newsletter` tinyint(1) NOT NULL DEFAULT '0',
`DOB` date NOT NULL DEFAULT '0000-00-00',
`pass` varbinary(30) NOT NULL DEFAULT '',
`zip` varchar(5) NOT NULL DEFAULT '',
`hidden` tinyint(1) NOT NULL DEFAULT '0',
`location_name` varchar(45) NOT NULL DEFAULT '',
`location_type` varchar(45) DEFAULT NULL,
PRIMARY KEY (`contact_id`),
KEY `location_type` (`location_type`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC COMMENT='InnoDB free: 5120 kB' AUTO_INCREMENT=17010 ;
-- --------------------------------------------------------
--
-- Table structure for table `projects`
--
CREATE TABLE IF NOT EXISTS `projects` (
`project_id` varchar(50) NOT NULL DEFAULT '',
`date_established` date NOT NULL DEFAULT '0000-00-00',
`active` tinyint(1) NOT NULL DEFAULT '1',
`public` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`project_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Table structure for table `sale_log`
--
CREATE TABLE IF NOT EXISTS `sale_log` (
`transaction_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`sale_type` varchar(45) NOT NULL DEFAULT '',
`description` varchar(200) NOT NULL DEFAULT '',
`amount` float NOT NULL DEFAULT '0',
`sold_by` varchar(45) NOT NULL DEFAULT '',
`sold_to` varchar(45) NOT NULL DEFAULT '',
PRIMARY KEY (`transaction_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
-- --------------------------------------------------------
--
-- Table structure for table `shops`
--
CREATE TABLE IF NOT EXISTS `shops` (
`shop_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`date` date DEFAULT NULL,
`shop_location` varchar(45) NOT NULL DEFAULT '',
`shop_type` varchar(45) NOT NULL DEFAULT '',
`ip_address` varchar(45) NOT NULL DEFAULT '0',
PRIMARY KEY (`shop_id`),
KEY `shop_type` (`shop_type`),
KEY `shop_location` (`shop_location`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2729 ;
-- --------------------------------------------------------
--
-- Table structure for table `shop_hours`
--
CREATE TABLE IF NOT EXISTS `shop_hours` (
`shop_visit_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`contact_id` int(10) unsigned NOT NULL DEFAULT '0',
`shop_id` int(10) unsigned NOT NULL DEFAULT '0',
`shop_user_role` varchar(45) NOT NULL DEFAULT '',
`project_id` varchar(45) DEFAULT NULL,
`time_in` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`time_out` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`comment` tinytext,
PRIMARY KEY (`shop_visit_id`),
KEY `contact_id` (`contact_id`),
KEY `shop_user_role` (`shop_user_role`),
KEY `project_id` (`project_id`),
KEY `shop_id` (`shop_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='InnoDB free: 4096 kB; (`contact_id`) REFER `nwilkes_ybdb/con' AUTO_INCREMENT=51328 ;
-- --------------------------------------------------------
--
-- Table structure for table `shop_locations`
--
CREATE TABLE IF NOT EXISTS `shop_locations` (
`shop_location_id` varchar(30) NOT NULL DEFAULT '',
`date_established` date NOT NULL DEFAULT '0000-00-00',
`active` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`shop_location_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Table structure for table `shop_types`
--
CREATE TABLE IF NOT EXISTS `shop_types` (
`shop_type_id` varchar(30) NOT NULL DEFAULT '',
`list_order` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`shop_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Table structure for table `shop_user_roles`
--
CREATE TABLE IF NOT EXISTS `shop_user_roles` (
`shop_user_role_id` varchar(45) NOT NULL DEFAULT '',
`hours_rank` int(10) unsigned NOT NULL DEFAULT '0',
`volunteer` tinyint(1) NOT NULL DEFAULT '0',
`sales` tinyint(1) unsigned NOT NULL DEFAULT '0',
`paid` tinyint(3) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`shop_user_role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Table structure for table `transaction_log`
--
CREATE TABLE IF NOT EXISTS `transaction_log` (
`transaction_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`date_startstorage` datetime DEFAULT NULL,
`date` datetime DEFAULT NULL,
`transaction_type` varchar(45) NOT NULL DEFAULT '',
`amount` float DEFAULT '0',
`description` varchar(200) DEFAULT NULL,
`sold_to` int(10) unsigned DEFAULT NULL,
`sold_by` int(10) unsigned DEFAULT NULL,
`quantity` int(10) unsigned NOT NULL DEFAULT '1',
`shop_id` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`transaction_id`),
KEY `transaction_type` (`transaction_type`),
KEY `sold_to` (`sold_to`),
KEY `sold_by` (`sold_by`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=13244 ;
-- --------------------------------------------------------
--
-- Table structure for table `transaction_types`
--
CREATE TABLE IF NOT EXISTS `transaction_types` (
`transaction_type_id` varchar(45) NOT NULL DEFAULT '',
`rank` varchar(45) NOT NULL DEFAULT '1',
`active` tinyint(1) NOT NULL DEFAULT '1',
`community_bike` tinyint(1) NOT NULL DEFAULT '0',
`show_transaction_id` tinyint(1) NOT NULL DEFAULT '0',
`show_type` tinyint(1) NOT NULL DEFAULT '0',
`show_startdate` tinyint(1) NOT NULL DEFAULT '0',
`show_amount` tinyint(1) NOT NULL DEFAULT '0',
`show_description` tinyint(1) NOT NULL DEFAULT '0',
`show_soldto` tinyint(1) NOT NULL DEFAULT '0',
`show_soldby` tinyint(1) NOT NULL DEFAULT '0',
`fieldname_date` varchar(25) NOT NULL DEFAULT '',
`fieldname_soldby` varchar(25) NOT NULL DEFAULT '',
`message_transaction_id` varchar(100) NOT NULL DEFAULT '',
`fieldname_soldto` varchar(45) NOT NULL DEFAULT '',
`show_soldto_location` tinyint(1) NOT NULL DEFAULT '0',
`fieldname_description` varchar(45) NOT NULL,
`accounting_group` varchar(45) NOT NULL,
PRIMARY KEY (`transaction_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeHours`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeHours` (
`Year` int(4)
,`Month` int(2)
,`YearWeek` int(5)
,`Week` int(2)
,`Date` date
,`ContactID` int(10) unsigned
,`Name` varchar(45)
,`Hours` decimal(5,2)
,`Pay` decimal(8,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeHours_byMonth`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeHours_byMonth` (
`Year` int(4)
,`Month` int(2)
,`ContactID` int(10) unsigned
,`Name` varchar(45)
,`Hours` decimal(27,2)
,`Pay` decimal(30,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeHours_byMonth_WholeOper`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeHours_byMonth_WholeOper` (
`Year` int(4)
,`Month` int(2)
,`Hours` decimal(49,2)
,`Pay` decimal(52,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeHours_byWeek`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeHours_byWeek` (
`Year` int(5)
,`Week` int(2)
,`ContactID` int(10) unsigned
,`Name` varchar(45)
,`Hours` decimal(27,2)
,`Pay` decimal(30,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeHours_byWeek_WholeOper`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeHours_byWeek_WholeOper` (
`Year` int(5)
,`Week` int(2)
,`Hours` decimal(49,2)
,`Pay` decimal(52,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeMetrics_BikesbyMonth`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeMetrics_BikesbyMonth` (
`Year` int(4)
,`Month` int(2)
,`contact_id` int(10) unsigned
,`TotalValue` double
,`AverageValue` double(17,0)
,`Count` bigint(21)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeMetrics_BikesbyWeek`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeMetrics_BikesbyWeek` (
`Year` int(4)
,`Week` int(2)
,`contact_id` int(10) unsigned
,`TotalValue` double
,`AverageValue` double(17,0)
,`Count` bigint(21)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeMetrics_TotalsByMonth`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeMetrics_TotalsByMonth` (
`Year` int(4)
,`Month` int(2)
,`Name` varchar(45)
,`ContactID` int(10) unsigned
,`OutputValueVsPayRatio` double(18,1)
,`HoursPerBike` decimal(27,1)
,`NumBikes` bigint(21)
,`AverageBikePrice` double(17,0)
,`TotalValueBikes` double
,`NumWheels` bigint(21)
,`AverageWheelPrice` double(17,0)
,`TotalValueWheels` double
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeMetrics_TotalsByWeek`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeMetrics_TotalsByWeek` (
`Year` int(5)
,`Week` int(2)
,`Name` varchar(45)
,`ContactID` int(10) unsigned
,`OutputValueVsPayRatio` double(18,1)
,`HoursPerBike` decimal(27,1)
,`NumBikes` bigint(21)
,`AverageBikePrice` double(17,0)
,`TotalValueBikes` double
,`NumWheels` bigint(21)
,`AverageWheelPrice` double(17,0)
,`TotalValueWheels` double
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeMetrics_WheelsbyMonth`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeMetrics_WheelsbyMonth` (
`Year` int(4)
,`Month` int(2)
,`contact_id` int(10) unsigned
,`TotalValue` double
,`AverageValue` double(17,0)
,`Count` bigint(21)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_EmployeeMetrics_WheelsbyWeek`
--
CREATE TABLE IF NOT EXISTS `view_EmployeeMetrics_WheelsbyWeek` (
`Year` int(4)
,`Week` int(2)
,`contact_id` int(10) unsigned
,`TotalValue` double
,`AverageValue` double(17,0)
,`Count` bigint(21)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_MechanicOperationMetrics_byMonth`
--
CREATE TABLE IF NOT EXISTS `view_MechanicOperationMetrics_byMonth` (
`Year` int(4)
,`Month` int(2)
,`Hours` decimal(49,2)
,`Pay` decimal(52,2)
,`NetSalesNewParts` double(19,2)
,`SalesUsedParts` double(19,2)
,`ValueBikesFixed` double(19,2)
,`ValueWheelsFixed` double(19,2)
,`ValueNewPartsOnBikes` double(19,2)
,`EstimatedNetIncome` double(19,2)
,`TotalBikesFixed` bigint(20)
,`TotalWheelsFixed` bigint(20)
,`HoursPerBike` decimal(49,1)
,`AverageBikeValue` double(18,1)
,`SalesBikes` double(19,2)
,`TotalBikesSold` bigint(20)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_MechanicOperationMetrics_byWeek`
--
CREATE TABLE IF NOT EXISTS `view_MechanicOperationMetrics_byWeek` (
`Year` int(5)
,`Week` int(2)
,`Hours` decimal(49,2)
,`Pay` decimal(52,2)
,`NetSalesNewParts` double(19,2)
,`SalesUsedParts` double(19,2)
,`ValueBikesFixed` double(19,2)
,`ValueWheelsFixed` double(19,2)
,`ValueNewPartsOnBikes` double(19,2)
,`EstimatedNetIncome` double(19,2)
,`TotalBikesFixed` bigint(20)
,`TotalWheelsFixed` bigint(20)
,`HoursPerBike` decimal(49,1)
,`AverageBikeValue` double(18,1)
,`SalesBikes` double(19,2)
,`TotalBikesSold` bigint(20)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_sales_by_week`
--
CREATE TABLE IF NOT EXISTS `view_sales_by_week` (
`Year` int(5)
,`Week` int(2)
,`TransactionType` varchar(45)
,`Total` double(19,2)
,`CountOfTrans` bigint(21)
,`AccountingGroup` varchar(45)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions`
--
CREATE TABLE IF NOT EXISTS `view_Transactions` (
`Year` int(4)
,`Month` int(2)
,`YearWeek` int(5)
,`Week` int(2)
,`TransactionType` varchar(45)
,`Total` double(19,2)
,`AccountingGroup` varchar(45)
,`ShopType` varchar(23)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_MechOper_byMonth`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_MechOper_byMonth` (
`Year` int(4)
,`Month` int(2)
,`TransactionType` varchar(45)
,`Total` double(19,2)
,`Count` bigint(21)
,`AccountingGroup` varchar(45)
,`ShopType` varchar(23)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_MechOper_byMonth_pvTbl`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_MechOper_byMonth_pvTbl` (
`Year` int(4)
,`Month` int(2)
,`NetSalesNewParts` double(19,2)
,`SalesUsedParts` double(19,2)
,`SalesBikes` double(19,2)
,`ValueBikesFixed` double(19,2)
,`ValueWheelsFixed` double(19,2)
,`TotalBikesSold` bigint(20)
,`TotalBikesFixed` bigint(20)
,`TotalWheelsFixed` bigint(20)
,`ValueNewPartsOnBikes` double(19,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_MechOper_byWeek`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_MechOper_byWeek` (
`Year` int(5)
,`Week` int(2)
,`TransactionType` varchar(45)
,`Total` double(19,2)
,`Count` bigint(21)
,`AccountingGroup` varchar(45)
,`ShopType` varchar(23)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_MechOper_byWeek_pvTbl`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_MechOper_byWeek_pvTbl` (
`Year` int(5)
,`Week` int(2)
,`NetSalesNewParts` double(19,2)
,`SalesUsedParts` double(19,2)
,`SalesBikes` double(19,2)
,`ValueBikesFixed` double(19,2)
,`ValueWheelsFixed` double(19,2)
,`TotalBikesSold` bigint(20)
,`TotalBikesFixed` bigint(20)
,`TotalWheelsFixed` bigint(20)
,`ValueNewPartsOnBikes` double(19,2)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_VolRunShop_byMonth`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_VolRunShop_byMonth` (
`Year` int(4)
,`Month` int(2)
,`TransactionType` varchar(45)
,`Total` double(19,2)
,`Count` bigint(21)
,`AccountingGroup` varchar(45)
,`ShopType` varchar(23)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_VolRunShop_byMonth_pvTbl`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_VolRunShop_byMonth_pvTbl` (
`Year` int(4)
,`Month` int(2)
,`NetSalesNewParts` double(19,2)
,`SalesUsedParts` double(19,2)
,`SalesBikes` double(19,2)
,`TotalBikesSold` bigint(20)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_VolRunShop_byWeek`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_VolRunShop_byWeek` (
`Year` int(5)
,`Week` int(2)
,`TransactionType` varchar(45)
,`Total` double(19,2)
,`Count` bigint(21)
,`AccountingGroup` varchar(45)
,`ShopType` varchar(23)
);
-- --------------------------------------------------------
--
-- Stand-in structure for view `view_Transactions_VolRunShop_byWeek_pvTbl`
--
CREATE TABLE IF NOT EXISTS `view_Transactions_VolRunShop_byWeek_pvTbl` (
`Year` int(5)
,`Week` int(2)
,`NetSalesNewParts` double(19,2)
,`SalesUsedParts` double(19,2)
,`SalesBikes` double(19,2)
,`TotalBikesSold` bigint(20)
);
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeHours`
--
DROP TABLE IF EXISTS `view_EmployeeHours`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeHours` AS select year(`shop_hours`.`time_in`) AS `Year`,month(`shop_hours`.`time_in`) AS `Month`,if((week(`shop_hours`.`time_in`,0) <> 0),year(`shop_hours`.`time_in`),(year(`shop_hours`.`time_in`) - 1)) AS `YearWeek`,if((week(`shop_hours`.`time_in`,0) <> 0),week(`shop_hours`.`time_in`,0),53) AS `Week`,cast(`shop_hours`.`time_in` as date) AS `Date`,`contacts`.`contact_id` AS `ContactID`,concat(`contacts`.`last_name`,', ',`contacts`.`first_name`,' ',`contacts`.`middle_initial`) AS `Name`,round((hour(subtime(cast(`shop_hours`.`time_out` as time),cast(`shop_hours`.`time_in` as time))) + (minute(subtime(cast(`shop_hours`.`time_out` as time),cast(`shop_hours`.`time_in` as time))) / 60)),2) AS `Hours`,round((((hour(subtime(cast(`shop_hours`.`time_out` as time),cast(`shop_hours`.`time_in` as time))) + (minute(subtime(cast(`shop_hours`.`time_out` as time),cast(`shop_hours`.`time_in` as time))) / 60)) * 12) * 1.1),2) AS `Pay` from ((`shop_hours` left join `contacts` on((`shop_hours`.`contact_id` = `contacts`.`contact_id`))) left join `shop_user_roles` on((`shop_hours`.`shop_user_role` = `shop_user_roles`.`shop_user_role_id`))) where (`shop_user_roles`.`paid` = 1) order by `shop_hours`.`time_in` desc;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeHours_byMonth`
--
DROP TABLE IF EXISTS `view_EmployeeHours_byMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeHours_byMonth` AS select `v`.`Year` AS `Year`,`v`.`Month` AS `Month`,`v`.`ContactID` AS `ContactID`,`v`.`Name` AS `Name`,sum(`v`.`Hours`) AS `Hours`,sum(`v`.`Pay`) AS `Pay` from `view_EmployeeHours` `v` group by `v`.`Year`,`v`.`Month`,`v`.`ContactID` order by `v`.`Year` desc,`v`.`Month` desc,`v`.`Name`;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeHours_byMonth_WholeOper`
--
DROP TABLE IF EXISTS `view_EmployeeHours_byMonth_WholeOper`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeHours_byMonth_WholeOper` AS select `v`.`Year` AS `Year`,`v`.`Month` AS `Month`,sum(`v`.`Hours`) AS `Hours`,sum(`v`.`Pay`) AS `Pay` from `view_EmployeeHours_byMonth` `v` group by `v`.`Year`,`v`.`Month` order by `v`.`Year` desc,`v`.`Month` desc;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeHours_byWeek`
--
DROP TABLE IF EXISTS `view_EmployeeHours_byWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeHours_byWeek` AS select `v`.`YearWeek` AS `Year`,`v`.`Week` AS `Week`,`v`.`ContactID` AS `ContactID`,`v`.`Name` AS `Name`,sum(`v`.`Hours`) AS `Hours`,sum(`v`.`Pay`) AS `Pay` from `view_EmployeeHours` `v` group by `v`.`YearWeek`,`v`.`Week`,`v`.`ContactID` order by `v`.`YearWeek` desc,`v`.`Week` desc,`v`.`Name`;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeHours_byWeek_WholeOper`
--
DROP TABLE IF EXISTS `view_EmployeeHours_byWeek_WholeOper`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeHours_byWeek_WholeOper` AS select `v`.`Year` AS `Year`,`v`.`Week` AS `Week`,sum(`v`.`Hours`) AS `Hours`,sum(`v`.`Pay`) AS `Pay` from `view_EmployeeHours_byWeek` `v` group by `v`.`Year`,`v`.`Week` order by `v`.`Year` desc,`v`.`Week` desc;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeMetrics_BikesbyMonth`
--
DROP TABLE IF EXISTS `view_EmployeeMetrics_BikesbyMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeMetrics_BikesbyMonth` AS select year(`t`.`date`) AS `Year`,month(`t`.`date`) AS `Month`,`t`.`sold_by` AS `contact_id`,sum(`t`.`amount`) AS `TotalValue`,round(avg(`t`.`amount`),0) AS `AverageValue`,count(`t`.`transaction_id`) AS `Count` from `transaction_log` `t` where (`t`.`transaction_type` = 'Metrics - Completed Mechanic Operation Bike') group by year(`t`.`date`),month(`t`.`date`),`t`.`sold_by` order by year(`t`.`date`) desc,month(`t`.`date`) desc,`t`.`sold_by`;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeMetrics_BikesbyWeek`
--
DROP TABLE IF EXISTS `view_EmployeeMetrics_BikesbyWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeMetrics_BikesbyWeek` AS select year(`t`.`date`) AS `Year`,week(`t`.`date`,0) AS `Week`,`t`.`sold_by` AS `contact_id`,sum(`t`.`amount`) AS `TotalValue`,round(avg(`t`.`amount`),0) AS `AverageValue`,count(`t`.`transaction_id`) AS `Count` from `transaction_log` `t` where (`t`.`transaction_type` = 'Metrics - Completed Mechanic Operation Bike') group by year(`t`.`date`),week(`t`.`date`,0),`t`.`sold_by` order by year(`t`.`date`) desc,week(`t`.`date`,0) desc,`t`.`sold_by`;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeMetrics_TotalsByMonth`
--
DROP TABLE IF EXISTS `view_EmployeeMetrics_TotalsByMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeMetrics_TotalsByMonth` AS select `eh`.`Year` AS `Year`,`eh`.`Month` AS `Month`,`eh`.`Name` AS `Name`,`eh`.`ContactID` AS `ContactID`,round(((`eb`.`TotalValue` + if(isnull(`ew`.`TotalValue`),0,`ew`.`TotalValue`)) / `eh`.`Pay`),1) AS `OutputValueVsPayRatio`,round((`eh`.`Hours` / `eb`.`Count`),1) AS `HoursPerBike`,`eb`.`Count` AS `NumBikes`,`eb`.`AverageValue` AS `AverageBikePrice`,`eb`.`TotalValue` AS `TotalValueBikes`,`ew`.`Count` AS `NumWheels`,`ew`.`AverageValue` AS `AverageWheelPrice`,`ew`.`TotalValue` AS `TotalValueWheels` from ((`view_EmployeeHours_byMonth` `eh` left join `view_EmployeeMetrics_BikesbyMonth` `eb` on(((`eh`.`ContactID` = `eb`.`contact_id`) and (`eh`.`Year` = `eb`.`Year`) and (`eh`.`Month` = `eb`.`Month`)))) left join `view_EmployeeMetrics_WheelsbyMonth` `ew` on(((`eh`.`ContactID` = `ew`.`contact_id`) and (`eh`.`Year` = `ew`.`Year`) and (`eh`.`Month` = `ew`.`Month`))));
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeMetrics_TotalsByWeek`
--
DROP TABLE IF EXISTS `view_EmployeeMetrics_TotalsByWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeMetrics_TotalsByWeek` AS select `eh`.`Year` AS `Year`,`eh`.`Week` AS `Week`,`eh`.`Name` AS `Name`,`eh`.`ContactID` AS `ContactID`,round(((`eb`.`TotalValue` + if(isnull(`ew`.`TotalValue`),0,`ew`.`TotalValue`)) / `eh`.`Pay`),1) AS `OutputValueVsPayRatio`,round((`eh`.`Hours` / `eb`.`Count`),1) AS `HoursPerBike`,`eb`.`Count` AS `NumBikes`,`eb`.`AverageValue` AS `AverageBikePrice`,`eb`.`TotalValue` AS `TotalValueBikes`,`ew`.`Count` AS `NumWheels`,`ew`.`AverageValue` AS `AverageWheelPrice`,`ew`.`TotalValue` AS `TotalValueWheels` from ((`view_EmployeeHours_byWeek` `eh` left join `view_EmployeeMetrics_BikesbyWeek` `eb` on(((`eh`.`ContactID` = `eb`.`contact_id`) and (`eh`.`Year` = `eb`.`Year`) and (`eh`.`Week` = `eb`.`Week`)))) left join `view_EmployeeMetrics_WheelsbyWeek` `ew` on(((`eh`.`ContactID` = `ew`.`contact_id`) and (`eh`.`Year` = `ew`.`Year`) and (`eh`.`Week` = `ew`.`Week`))));
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeMetrics_WheelsbyMonth`
--
DROP TABLE IF EXISTS `view_EmployeeMetrics_WheelsbyMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeMetrics_WheelsbyMonth` AS select year(`t`.`date`) AS `Year`,month(`t`.`date`) AS `Month`,`t`.`sold_by` AS `contact_id`,sum(`t`.`amount`) AS `TotalValue`,round(avg(`t`.`amount`),0) AS `AverageValue`,count(`t`.`transaction_id`) AS `Count` from `transaction_log` `t` where (`t`.`transaction_type` = 'Metrics - Completed Mechanic Operation Wheel') group by year(`t`.`date`),month(`t`.`date`),`t`.`sold_by` order by year(`t`.`date`) desc,month(`t`.`date`) desc,`t`.`sold_by`;
-- --------------------------------------------------------
--
-- Structure for view `view_EmployeeMetrics_WheelsbyWeek`
--
DROP TABLE IF EXISTS `view_EmployeeMetrics_WheelsbyWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_EmployeeMetrics_WheelsbyWeek` AS select year(`t`.`date`) AS `Year`,week(`t`.`date`,0) AS `Week`,`t`.`sold_by` AS `contact_id`,sum(`t`.`amount`) AS `TotalValue`,round(avg(`t`.`amount`),0) AS `AverageValue`,count(`t`.`transaction_id`) AS `Count` from `transaction_log` `t` where (`t`.`transaction_type` = 'Metrics - Completed Mechanic Operation Wheel') group by year(`t`.`date`),week(`t`.`date`,0),`t`.`sold_by` order by year(`t`.`date`) desc,week(`t`.`date`,0) desc,`t`.`sold_by`;
-- --------------------------------------------------------
--
-- Structure for view `view_MechanicOperationMetrics_byMonth`
--
DROP TABLE IF EXISTS `view_MechanicOperationMetrics_byMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_MechanicOperationMetrics_byMonth` AS select `Hours`.`Year` AS `Year`,`Hours`.`Month` AS `Month`,`Hours`.`Hours` AS `Hours`,`Hours`.`Pay` AS `Pay`,`Trans`.`NetSalesNewParts` AS `NetSalesNewParts`,`Trans`.`SalesUsedParts` AS `SalesUsedParts`,`Trans`.`ValueBikesFixed` AS `ValueBikesFixed`,`Trans`.`ValueWheelsFixed` AS `ValueWheelsFixed`,`Trans`.`ValueNewPartsOnBikes` AS `ValueNewPartsOnBikes`,((((`Trans`.`NetSalesNewParts` + `Trans`.`SalesUsedParts`) + `Trans`.`ValueBikesFixed`) + `Trans`.`ValueWheelsFixed`) - (`Hours`.`Pay` + `Trans`.`ValueNewPartsOnBikes`)) AS `EstimatedNetIncome`,`Trans`.`TotalBikesFixed` AS `TotalBikesFixed`,`Trans`.`TotalWheelsFixed` AS `TotalWheelsFixed`,round((`Hours`.`Hours` / `Trans`.`TotalBikesFixed`),1) AS `HoursPerBike`,round((`Trans`.`ValueBikesFixed` / `Trans`.`TotalBikesFixed`),1) AS `AverageBikeValue`,`Trans`.`SalesBikes` AS `SalesBikes`,`Trans`.`TotalBikesSold` AS `TotalBikesSold` from (`view_EmployeeHours_byMonth_WholeOper` `Hours` left join `view_Transactions_MechOper_byMonth_pvTbl` `Trans` on(((`Hours`.`Year` = `Trans`.`Year`) and (`Hours`.`Month` = `Trans`.`Month`)))) order by `Hours`.`Year` desc,`Hours`.`Month` desc;
-- --------------------------------------------------------
--
-- Structure for view `view_MechanicOperationMetrics_byWeek`
--
DROP TABLE IF EXISTS `view_MechanicOperationMetrics_byWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_MechanicOperationMetrics_byWeek` AS select `Hours`.`Year` AS `Year`,`Hours`.`Week` AS `Week`,`Hours`.`Hours` AS `Hours`,`Hours`.`Pay` AS `Pay`,`Trans`.`NetSalesNewParts` AS `NetSalesNewParts`,`Trans`.`SalesUsedParts` AS `SalesUsedParts`,`Trans`.`ValueBikesFixed` AS `ValueBikesFixed`,`Trans`.`ValueWheelsFixed` AS `ValueWheelsFixed`,`Trans`.`ValueNewPartsOnBikes` AS `ValueNewPartsOnBikes`,((((`Trans`.`NetSalesNewParts` + `Trans`.`SalesUsedParts`) + `Trans`.`ValueBikesFixed`) + `Trans`.`ValueWheelsFixed`) - (`Hours`.`Pay` + `Trans`.`ValueNewPartsOnBikes`)) AS `EstimatedNetIncome`,`Trans`.`TotalBikesFixed` AS `TotalBikesFixed`,`Trans`.`TotalWheelsFixed` AS `TotalWheelsFixed`,round((`Hours`.`Hours` / `Trans`.`TotalBikesFixed`),1) AS `HoursPerBike`,round((`Trans`.`ValueBikesFixed` / `Trans`.`TotalBikesFixed`),1) AS `AverageBikeValue`,`Trans`.`SalesBikes` AS `SalesBikes`,`Trans`.`TotalBikesSold` AS `TotalBikesSold` from (`view_EmployeeHours_byWeek_WholeOper` `Hours` left join `view_Transactions_MechOper_byWeek_pvTbl` `Trans` on(((`Hours`.`Year` = `Trans`.`Year`) and (`Hours`.`Week` = `Trans`.`Week`)))) order by `Hours`.`Year` desc,`Hours`.`Week` desc;
-- --------------------------------------------------------
--
-- Structure for view `view_sales_by_week`
--
DROP TABLE IF EXISTS `view_sales_by_week`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_sales_by_week` AS select if((week(`t`.`date`,0) <> 0),year(`t`.`date`),(year(`t`.`date`) - 1)) AS `Year`,if((week(`t`.`date`,0) <> 0),week(`t`.`date`,0),53) AS `Week`,`t`.`transaction_type` AS `TransactionType`,round(sum(`t`.`amount`),2) AS `Total`,count(`t`.`transaction_id`) AS `CountOfTrans`,`transaction_types`.`accounting_group` AS `AccountingGroup` from ((`transaction_log` `t` left join `transaction_types` on((`t`.`transaction_type` = `transaction_types`.`transaction_type_id`))) left join `shops` on((`t`.`shop_id` = `shops`.`shop_id`))) where (`shops`.`shop_type` = 'Mechanic Operation Shop') group by `transaction_types`.`accounting_group`,`t`.`transaction_type`,year(`t`.`date`),quarter(`t`.`date`),month(`t`.`date`) order by if((week(`t`.`date`,0) <> 0),year(`t`.`date`),(year(`t`.`date`) - 1)) desc,if((week(`t`.`date`,0) <> 0),week(`t`.`date`,0),53) desc,`transaction_types`.`accounting_group`,`t`.`transaction_id`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions`
--
DROP TABLE IF EXISTS `view_Transactions`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions` AS select year(`t`.`date`) AS `Year`,month(`t`.`date`) AS `Month`,if((week(`t`.`date`,0) <> 0),year(`t`.`date`),(year(`t`.`date`) - 1)) AS `YearWeek`,if((week(`t`.`date`,0) <> 0),week(`t`.`date`,0),53) AS `Week`,`t`.`transaction_type` AS `TransactionType`,round(`t`.`amount`,2) AS `Total`,`transaction_types`.`accounting_group` AS `AccountingGroup`,if((`shops`.`shop_type` = 'Mechanic Operation Shop'),'Mechanic Operation Shop','Volunteer Run Shop') AS `ShopType` from ((`transaction_log` `t` left join `transaction_types` on((`t`.`transaction_type` = `transaction_types`.`transaction_type_id`))) left join `shops` on((`t`.`shop_id` = `shops`.`shop_id`)));
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_MechOper_byMonth`
--
DROP TABLE IF EXISTS `view_Transactions_MechOper_byMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_MechOper_byMonth` AS select `v`.`Year` AS `Year`,`v`.`Month` AS `Month`,`v`.`TransactionType` AS `TransactionType`,sum(`v`.`Total`) AS `Total`,count(`v`.`Total`) AS `Count`,`v`.`AccountingGroup` AS `AccountingGroup`,`v`.`ShopType` AS `ShopType` from `view_Transactions` `v` where (`v`.`ShopType` = 'Mechanic Operation Shop') group by `v`.`Year`,`v`.`Month`,`v`.`TransactionType` order by `v`.`Year` desc,`v`.`Month` desc,`v`.`TransactionType`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_MechOper_byMonth_pvTbl`
--
DROP TABLE IF EXISTS `view_Transactions_MechOper_byMonth_pvTbl`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_MechOper_byMonth_pvTbl` AS select `v`.`Year` AS `Year`,`v`.`Month` AS `Month`,round(max(if((`v2`.`TransactionType` = 'Sale - New Parts'),(`v2`.`Total` / 2),0)),2) AS `NetSalesNewParts`,max(if((`v2`.`TransactionType` = 'Sale - Used Parts'),`v2`.`Total`,0)) AS `SalesUsedParts`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Total`,0)) AS `SalesBikes`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Bike'),`v2`.`Total`,0)) AS `ValueBikesFixed`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Wheel'),`v2`.`Total`,0)) AS `ValueWheelsFixed`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Count`,0)) AS `TotalBikesSold`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Bike'),`v2`.`Count`,0)) AS `TotalBikesFixed`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Wheel'),`v2`.`Count`,0)) AS `TotalWheelsFixed`,max(if((`v2`.`TransactionType` = 'Metrics - New Parts on a Completed Bike'),`v2`.`Total`,0)) AS `ValueNewPartsOnBikes` from (`view_Transactions_MechOper_byMonth` `v` left join `view_Transactions_MechOper_byMonth` `v2` on(((`v`.`Year` = `v2`.`Year`) and (`v`.`Month` = `v2`.`Month`)))) group by `v`.`Year`,`v`.`Month`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_MechOper_byWeek`
--
DROP TABLE IF EXISTS `view_Transactions_MechOper_byWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_MechOper_byWeek` AS select `v`.`YearWeek` AS `Year`,`v`.`Week` AS `Week`,`v`.`TransactionType` AS `TransactionType`,sum(`v`.`Total`) AS `Total`,count(`v`.`Total`) AS `Count`,`v`.`AccountingGroup` AS `AccountingGroup`,`v`.`ShopType` AS `ShopType` from `view_Transactions` `v` where (`v`.`ShopType` = 'Mechanic Operation Shop') group by `v`.`YearWeek`,`v`.`Week`,`v`.`TransactionType` order by `v`.`YearWeek`,`v`.`Week`,`v`.`TransactionType`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_MechOper_byWeek_pvTbl`
--
DROP TABLE IF EXISTS `view_Transactions_MechOper_byWeek_pvTbl`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_MechOper_byWeek_pvTbl` AS select `v`.`Year` AS `Year`,`v`.`Week` AS `Week`,round(max(if((`v2`.`TransactionType` = 'Sale - New Parts'),(`v2`.`Total` / 2),0)),2) AS `NetSalesNewParts`,max(if((`v2`.`TransactionType` = 'Sale - Used Parts'),`v2`.`Total`,0)) AS `SalesUsedParts`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Total`,0)) AS `SalesBikes`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Bike'),`v2`.`Total`,0)) AS `ValueBikesFixed`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Wheel'),`v2`.`Total`,0)) AS `ValueWheelsFixed`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Count`,0)) AS `TotalBikesSold`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Bike'),`v2`.`Count`,0)) AS `TotalBikesFixed`,max(if((`v2`.`TransactionType` = 'Metrics - Completed Mechanic Operation Wheel'),`v2`.`Count`,0)) AS `TotalWheelsFixed`,max(if((`v2`.`TransactionType` = 'Metrics - New Parts on a Completed Bike'),`v2`.`Total`,0)) AS `ValueNewPartsOnBikes` from (`view_Transactions_MechOper_byWeek` `v` left join `view_Transactions_MechOper_byWeek` `v2` on(((`v`.`Year` = `v2`.`Year`) and (`v`.`Week` = `v2`.`Week`)))) group by `v`.`Year`,`v`.`Week`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_VolRunShop_byMonth`
--
DROP TABLE IF EXISTS `view_Transactions_VolRunShop_byMonth`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_VolRunShop_byMonth` AS select `v`.`Year` AS `Year`,`v`.`Month` AS `Month`,`v`.`TransactionType` AS `TransactionType`,sum(`v`.`Total`) AS `Total`,count(`v`.`Total`) AS `Count`,`v`.`AccountingGroup` AS `AccountingGroup`,`v`.`ShopType` AS `ShopType` from `view_Transactions` `v` where (`v`.`ShopType` = 'Volunteer Run Shop') group by `v`.`Year`,`v`.`Month`,`v`.`TransactionType` order by `v`.`Year`,`v`.`Month`,`v`.`TransactionType`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_VolRunShop_byMonth_pvTbl`
--
DROP TABLE IF EXISTS `view_Transactions_VolRunShop_byMonth_pvTbl`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_VolRunShop_byMonth_pvTbl` AS select `v`.`Year` AS `Year`,`v`.`Month` AS `Month`,round(max(if((`v2`.`TransactionType` = 'Sale - New Parts'),(`v2`.`Total` / 2),0)),2) AS `NetSalesNewParts`,max(if((`v2`.`TransactionType` = 'Sale - Used Parts'),`v2`.`Total`,0)) AS `SalesUsedParts`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Total`,0)) AS `SalesBikes`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Count`,0)) AS `TotalBikesSold` from (`view_Transactions_VolRunShop_byMonth` `v` left join `view_Transactions_VolRunShop_byMonth` `v2` on(((`v`.`Year` = `v2`.`Year`) and (`v`.`Month` = `v2`.`Month`)))) group by `v`.`Year`,`v`.`Month`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_VolRunShop_byWeek`
--
DROP TABLE IF EXISTS `view_Transactions_VolRunShop_byWeek`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_VolRunShop_byWeek` AS select `v`.`YearWeek` AS `Year`,`v`.`Week` AS `Week`,`v`.`TransactionType` AS `TransactionType`,sum(`v`.`Total`) AS `Total`,count(`v`.`Total`) AS `Count`,`v`.`AccountingGroup` AS `AccountingGroup`,`v`.`ShopType` AS `ShopType` from `view_Transactions` `v` where (`v`.`ShopType` = 'Volunteer Run Shop') group by `v`.`YearWeek`,`v`.`Week`,`v`.`TransactionType` order by `v`.`YearWeek`,`v`.`Week`,`v`.`TransactionType`;
-- --------------------------------------------------------
--
-- Structure for view `view_Transactions_VolRunShop_byWeek_pvTbl`
--
DROP TABLE IF EXISTS `view_Transactions_VolRunShop_byWeek_pvTbl`;
CREATE ALGORITHM=UNDEFINED DEFINER=`admin`@`%.dyn.grandenetworks.net` SQL SECURITY DEFINER VIEW `view_Transactions_VolRunShop_byWeek_pvTbl` AS select `v`.`Year` AS `Year`,`v`.`Week` AS `Week`,round(max(if((`v2`.`TransactionType` = 'Sale - New Parts'),(`v2`.`Total` / 2),0)),2) AS `NetSalesNewParts`,max(if((`v2`.`TransactionType` = 'Sale - Used Parts'),`v2`.`Total`,0)) AS `SalesUsedParts`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Total`,0)) AS `SalesBikes`,max(if((`v2`.`TransactionType` = 'Sale - Complete Bike'),`v2`.`Count`,0)) AS `TotalBikesSold` from (`view_Transactions_VolRunShop_byWeek` `v` left join `view_Transactions_VolRunShop_byWeek` `v2` on(((`v`.`Year` = `v2`.`Year`) and (`v`.`Week` = `v2`.`Week`)))) group by `v`.`Year`,`v`.`Week`;
--
-- Constraints for dumped tables
--
--
-- Constraints for table `contacts`
--
ALTER TABLE `contacts`
ADD CONSTRAINT `location_type` FOREIGN KEY (`location_type`) REFERENCES `transaction_types` (`transaction_type_id`) ON UPDATE CASCADE;
--
-- Constraints for table `shops`
--
ALTER TABLE `shops`
ADD CONSTRAINT `shop_location` FOREIGN KEY (`shop_location`) REFERENCES `shop_locations` (`shop_location_id`) ON UPDATE CASCADE,
ADD CONSTRAINT `shop_type` FOREIGN KEY (`shop_type`) REFERENCES `shop_types` (`shop_type_id`) ON UPDATE CASCADE;
--
-- Constraints for table `shop_hours`
--
ALTER TABLE `shop_hours`
ADD CONSTRAINT `contact_id` FOREIGN KEY (`contact_id`) REFERENCES `contacts` (`contact_id`) ON UPDATE CASCADE,
ADD CONSTRAINT `project_id` FOREIGN KEY (`project_id`) REFERENCES `projects` (`project_id`) ON UPDATE CASCADE,
ADD CONSTRAINT `shop_id` FOREIGN KEY (`shop_id`) REFERENCES `shops` (`shop_id`) ON UPDATE CASCADE,
ADD CONSTRAINT `shop_user_role` FOREIGN KEY (`shop_user_role`) REFERENCES `shop_user_roles` (`shop_user_role_id`) ON UPDATE CASCADE;
--
-- Constraints for table `transaction_log`
--
ALTER TABLE `transaction_log`
ADD CONSTRAINT `sold_by` FOREIGN KEY (`sold_by`) REFERENCES `contacts` (`contact_id`) ON UPDATE CASCADE,
ADD CONSTRAINT `sold_to` FOREIGN KEY (`sold_to`) REFERENCES `contacts` (`contact_id`) ON UPDATE CASCADE,
ADD CONSTRAINT `transaction_type` FOREIGN KEY (`transaction_type`) REFERENCES `transaction_types` (`transaction_type_id`) ON UPDATE CASCADE;

47
Templates/.metadata/.log

File diff suppressed because one or more lines are too long

14
Templates/.metadata/.plugins/com.aptana.core.io/connections.12

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<connections>
<connection id="83422b28-2181-4f36-b3b7-c239d76e66a2" type="sftp">
<name>YBDB_Remote</name>
<host>www.austinyellowbike.org</host>
<path>/home/austinyellowbike/ybdb.austinyellowbike.org/test1</path>
<login>austinyellowbike</login>
<compression>AUTO</compression>
</connection>
<connection id="c7c85d43-0d53-4a53-9445-3353c25f5474" type="workspace">
<name>YBDB</name>
<path>/YBDB</path>
</connection>
</connections>

BIN
Templates/.metadata/.plugins/com.aptana.editor.php/76598679

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.editor.php/indexMappings

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.index.core/114577082.index

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.index.core/1821239576.index

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.index.core/2645618673.index

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.index.core/3575558297.index

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.index.core/4010369919.index

Binary file not shown.

0
Templates/.metadata/.plugins/com.aptana.portablegit.win32/.installed_3.0.0.1337406272

10
Templates/.metadata/.plugins/com.aptana.portablegit.win32/Git Bash.vbs

@ -0,0 +1,10 @@
' If there is an argument, use it as the directory to change to.
If WScript.Arguments.Length=1 Then
Set WshObj = CreateObject("WScript.Shell")
WshObj.CurrentDirectory = WScript.Arguments(0)
End If
' Launch the shortcut in the current directory which has the same
' base name as this script.
Set AppObj = CreateObject("Shell.Application")
AppObj.ShellExecute(Replace(WScript.ScriptFullName, ".vbs", ".lnk"))

89
Templates/.metadata/.plugins/com.aptana.portablegit.win32/README.portable

@ -0,0 +1,89 @@
README.portable (Draft)
=======================
This "portable" version of Git for Windows (MSysGit) does not need to
be installed. It will run from any directory you place it in, even
onto a USB thumbdrive. It will not write permanent entries into the
Windows registry. It does not need administrator privileges to "install".
Installation
------------
This package is contained in a 7-zip archive with a file name like
'PortableGit-<versionstring>.7z'. It is a self-extracting archive:
add the file extension '.exe', and you can (double-)click it; you'll be
asked for the desired target directory (which defaults to C:\Program
Files\Git). You may change that as needed or desired. Your user account
needs write access to the selected directory. (You can move that
directory with all its contents to a different place or computer at any
time should you later desire so).
Functional differences to "normal" MSysGit installation package
---------------------------------------------------------------
This version does not offer you the convenient right-click context menu
entries "Git GUI Here" and "Git Bash Here", because these would require
to add entries into the Windows registry.
Warning
-------
Since this portable package does not modify any Windows %path%
variables, it is not possible to run the git.exe and gitk.exe files
directly. Start the Git Bash or Git Cmd instead, or add the cmd/ folder
to your %path%.
How to start using PortableGit
------------------------------
If you are comfortable with a Unix-like shell, just launch 'git-bash.bat'.
If not, just launch 'git-cmd.bat'.
Alternatively, you can execute these commands to modify the %path%
variable temporarily:
set gitdir=c:\portablegit
set path=%gitdir%\cmd;%path%
Adjust the 'gitdir' according to your setup. As long as you do not
close the command window, you can now simply type "git" or "gitk" to
really call "c:\portablegit\cmd\git.cmd" or "c:\portablegit\cmd\gitk.cmd".
Quick start
-----------
Start configuring git with your personal settings:
git config --global user.name "Joe Sixpack"
git config --global user.email joe.sixpack@g_mail.com
Start using git:
git --help
How to change %path% permanently
--------------------------------
You may also want to make the modification to the %path% variable a
permanent one. The %path% variable may be changed:
* either on a System level (for all users in the lower pane), if you are
an Administrator
* or for your own user account only (in the upper pane).
To change the %path% variable permanently:
* right-click "My Computer",
* select "Properties",
* open "Advanced",
* click "Environment Variables",
* highlight the "Path" variable,
* click "Edit" (either in upper or in lower pane),
* add your specific path to front of "Variable value" field, separated
by a semicolon from the existing entry.

323
Templates/.metadata/.plugins/com.aptana.portablegit.win32/ReleaseNotes.rtf

@ -0,0 +1,323 @@
{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fnil\fcharset0 Arial;}{\f2\fnil\fcharset2 Symbol;}}
{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;}
{\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\pard\cf1\lang1033\b\f0\fs32 Git Release Notes (Git-1.7.3.1-preview20101002)\b0\fs20\par
Last update: 2 October 2010\par
\par
\b\fs24 Introduction\b0\fs20\par
\par
These release notes describe issues specific to the Git for Windows release.\par
\par
General release notes covering the history of the core git commands are included in the subdirectory doc/git/html of the installation directory. Look for files starting with RelNotes.\par
\par
\b\fs24 Known issues\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\fs20 Some commands are not yet supported on Windows and excluded from the installation; namely: git archimport, git cvsexportcommit, git cvsimport, git cvsserver, git instaweb, git shell.\par
{\pntext\f2\'B7\tab}The Logitec QuickCam software can cause spurious crashes. See "Why does make often crash creating a sh.exe.stackdump file when I try to compile my source code?" on the MinGW Wiki (\cf0{\field{\*\fldinst{HYPERLINK "http://www.mingw.org/wiki/Environment_issues"}}{\fldrslt{\ul\cf2 http://www.mingw.org/wiki/Environment_issues}}}\cf1\f0\fs20 )\par
{\pntext\f2\'B7\tab}The Quick Launch icon will only be installed for the user running setup (typically the Administrator). This is a technical restriction and will not change.\par
{\pntext\f2\'B7\tab}curl uses $HOME/_netrc instead of $HOME/.netrc.\par
{\pntext\f2\'B7\tab}If you want to specify a different location for --upload-pack, you have to start the absolute path with two slashes. Otherwise MSys will mangle the path.\par
{\pntext\f2\'B7\tab}git and bash have serious problems with non-ASCII file names (Issue 80, 159).\par
{\pntext\f2\'B7\tab}If configured to use plink, you will have to connect with putty first and accept the host key.\par
{\pntext\f2\'B7\tab}As merge tools are executed using the MSys bash, options starting with "/" need to be handled specially: MSys would interpret that as a POSIX path, so you need to double the slash (Issue 226). Example: instead of "/base", say "//base". Also, extra care has to be paid to pass Windows programs Windows paths, as they have no clue about MSys style POSIX paths -- You can use something like $(cmd //c echo "$POSIXPATH").\par
\pard\b\fs24\par
Changes since Git-1.7.2.3-preview20100911\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with Git 1.7.3.1 plus patches.\par
{\pntext\f2\'B7\tab}Updated to Vim 7.3, file-5.04 and InnoSetup 5.3.11\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Issue 528 (remove uninstaller from Start Menu) was fixed\par
{\pntext\f2\'B7\tab}Issue 527 (failing to find the certificate authority bundle) was fixed\par
{\pntext\f2\'B7\tab}Issue 524 (remove broken and unused sdl-config file) was fixed\par
{\pntext\f2\'B7\tab}Issue 523 (crash pushing to WebDAV remote) was fixed\par
\pard\b\fs24\par
Changes since Git-1.7.1-preview20100612\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with Git 1.7.2.3 plus patches.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Issue 519 (build problem with compat/regex/regexec.c) was fixed\par
{\pntext\f2\'B7\tab}Issue 430 (size of panes not preserved in git-gui) was fixed\par
{\pntext\f2\'B7\tab}Issue 411 (git init failing to work with CIFS paths) was fixed\par
{\pntext\f2\'B7\tab}Issue 501 (failing to clone repo from root dir using relative path) was fixed\par
\pard\b\fs24\par
Changes since Git-1.7.0.2-preview20100309\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with Git 1.7.1 plus patches.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Issue 27 (git-send-mail not working properly) was fixed again\par
{\pntext\f2\'B7\tab}Issue 433 (error while running git svn fetch) was fixed\par
{\pntext\f2\'B7\tab}Issue 427 (Gitk reports error: "couldn't compile regular expression pattern: invalid repetition count(s)") was fixed\par
{\pntext\f2\'B7\tab}Issue 192 (output truncated) was fixed again\par
{\pntext\f2\'B7\tab}Issue 365 (Out of memory? mmap failed) was fixed\par
{\pntext\f2\'B7\tab}Issue 387 (gitk reports "error: couldn't execute "git:" file name too long") was fixed\par
{\pntext\f2\'B7\tab}Issue 409 (checkout of large files to network drive fails on XP) was fixed\par
{\pntext\f2\'B7\tab}Issue 428 (The return value of git.cmd is not the same as git.exe) was fixed\par
{\pntext\f2\'B7\tab}Issue 444 (Git Bash Here returns a "File not found error" in Windows 7 Professional - 64 bits) was fixed\par
{\pntext\f2\'B7\tab}Issue 445 (git help does nothing) was fixed\par
{\pntext\f2\'B7\tab}Issue 450 ("git --bare init" shouldn't set the directory to hidden.) was fixed\par
{\pntext\f2\'B7\tab}Issue 456 (git script fails with error code 1) was fixed\par
{\pntext\f2\'B7\tab}Issue 469 (error launch wordpad in last netinstall) was fixed\par
{\pntext\f2\'B7\tab}Issue 474 (git update-index --index-info silently does nothing) was fixed\par
{\pntext\f2\'B7\tab}Issue 482 (Add documentation to avoid "fatal: $HOME not set" error) was fixed\par
{\pntext\f2\'B7\tab}Issue 489 (git.cmd issues warning if %COMSPEC% has spaces in it) was fixed\par
{\pntext\f2\'B7\tab}Issue 436 ("mkdir : No such file or directory" error while using git-svn to fetch or rebase) was fixed\par
{\pntext\f2\'B7\tab}Issue 440 (Uninstall does not remove cheetah.) was fixed\par
{\pntext\f2\'B7\tab}Issue 441 (Git-1.7.0.2-preview20100309.exe installer fails with unwritable msys-1.0.dll when ssh-agent is running) was fixed\par
\pard\b\fs24\par
Changes since Git-1.6.5.1-preview20091022\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official Git 1.7.0.2.\par
{\pntext\f2\'B7\tab}Comes with Git-Cheetah (on 32-bit Windows only, for now).\par
{\pntext\f2\'B7\tab}Comes with connect.exe, a SOCKS proxy.\par
{\pntext\f2\'B7\tab}Tons of improvements in the installer, thanks to Sebastian Schuberth.\par
{\pntext\f2\'B7\tab}On Vista, if possible, symlinks are used for the built-ins.\par
{\pntext\f2\'B7\tab}Features Hany's dos2unix tool, thanks to Sebastian Schuberth.\par
{\pntext\f2\'B7\tab}Updated Tcl/Tk to version 8.5.8 (thanks Pat Thoyts!).\par
{\pntext\f2\'B7\tab}By default, only .git/ is hidden, to work around a bug in Eclipse (thanks to Erik Faye-Lund).\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Fixed threaded grep (thanks to Heiko Voigt).\par
{\pntext\f2\'B7\tab}git gui was fixed for all kinds of worktree-related failures (thanks Pat Thoyts).\par
{\pntext\f2\'B7\tab}git gui now fully supports themed widgets (thanks Pat Thoyts and Heiko Voigt).\par
{\pntext\f2\'B7\tab}Git no longer complains about an unset RUNTIME_PREFIX (thanks Johannes Sixt).\par
{\pntext\f2\'B7\tab}git gui can Explore Working Copy on Windows again (thanks Markus Heidelberg).\par
{\pntext\f2\'B7\tab}git gui can create shortcuts again (fixes issue 425, thanks Heiko Voigt).\par
{\pntext\f2\'B7\tab}When "git checkout" cannot overwrite files because they are in use, it will offer to try again, giving the user a chance to release the file (thanks Heiko Voigt).\par
{\pntext\f2\'B7\tab}Ctrl+W will close gitk (thanks Jens Lehmann).\par
{\pntext\f2\'B7\tab}git gui no longer binds Ctrl+C, which caused problems when trying to use said shortcut for the clipboard operation "Copy" (fixes issue 423, thanks Pat Thoyts).\par
{\pntext\f2\'B7\tab}gitk does not give up when the command line length limit is reached (issue 387).\par
{\pntext\f2\'B7\tab}The exit code is fixed when Git.cmd is called from cmd.exe (thanks Alexey Borzenkov).\par
{\pntext\f2\'B7\tab}When launched via the (non-Cheetah) shell extension, the window icon is now correct (thanks Sebastian Schuberth).\par
{\pntext\f2\'B7\tab}Uses a TrueType font for the console, to be able to render UTF-8 correctly.\par
{\pntext\f2\'B7\tab}Clarified the installer's line ending options (issue 370).\par
{\pntext\f2\'B7\tab}Substantially speeded up startup time from cmd unless NO_FSTAB_THREAD is set (thanks Johannes Sixt).\par
{\pntext\f2\'B7\tab}Update msys-1.0.dll yet again, to handle quoted parameters better (thanks Heiko Voigt).\par
{\pntext\f2\'B7\tab}Updated cURL to a version that supports SSPI.\par
{\pntext\f2\'B7\tab}Updated tar to handle the pax headers generated by \i git archive\i0 .\par
{\pntext\f2\'B7\tab}Updated sed to a version that can handle the filter-branch examples.\par
{\pntext\f2\'B7\tab}.git* files can be associated with the default text editor (issue 397).\par
\pard\b\fs24\par
Changes since Git-1.6.4-preview20090729\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.5.1.\par
{\pntext\f2\'B7\tab}Thanks to Johan 't Hart, files and directories starting with a single dot (such as '.git') will now be marked hidden (you can disable this setting with core.hideDotFiles=false in your config) (Issue 288).\par
{\pntext\f2\'B7\tab}Thanks to Thorvald Natvig, Git on Windows can simulate symbolic links by using reparse points when available. For technical reasons, this only works for symbolic links pointing to files, not directories.\par
{\pntext\f2\'B7\tab}A lot of work has been put into making it possible to compile Git's source code (the part written in C, of course, not the scripts) with Microsoft Visual Studio. This work is ongoing.\par
{\pntext\f2\'B7\tab}Thanks to Sebastian Schuberth, we only offer the (Tortoise)Plink option in the installer if the presence of Plink was detected \ul and\ulnone at least one Putty session was found..\par
{\pntext\f2\'B7\tab}Thanks to Sebastian Schuberth, the installer has a nicer icon now.\par
{\pntext\f2\'B7\tab}Some more work by Sebastian Schuberth was done on better integration of Plink (Issues 305 & 319).\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Thanks to Sebastian Schuberth, \i git svn\i0 picks up the SSH setting specified with the installer (Issue 305).\par
\pard\b\fs24\par
Changes since Git-1.6.3.2-preview20090608\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.4.\par
{\pntext\f2\'B7\tab}Supports \cf0{\field{\*\fldinst{HYPERLINK "https://"}}{\fldrslt{\ul\cf2 https://}}}\cf1\f0\fs20 URLs, thanks to Erik Faye-Lund.\par
{\pntext\f2\'B7\tab}Supports send-email, thanks to Erik Faye-Lund (Issue 27).\par
{\pntext\f2\'B7\tab}Updated Tcl/Tk to version 8.5.7, thanks to Pat Thoyts.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 The home directory is now discovered properly (Issues 108 & 259).\par
{\pntext\f2\'B7\tab}IPv6 is supported now, thanks to Martin Martin Storsj\cf0\f1\'f6 (Issue 182).\cf1\f0\par
\pard\b\fs24\par
Changes since Git-1.6.3-preview20090507\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.3.2.\par
{\pntext\f2\'B7\tab}Uses TortoisePlink instead of Plink if available.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Plink errors out rather than hanging when the user needs to accept a host key first (Issue 96).\par
{\pntext\f2\'B7\tab}The user home directory is inferred from $HOMEDRIVE\\$HOMEPATH instead of $HOME (Issue 108).\par
{\pntext\f2\'B7\tab}The environment setting $CYGWIN=tty is ignored (Issues 138, 248 and 251).\par
{\pntext\f2\'B7\tab}The "ls" command shows non-ASCII filenames correctly now (Issue 188).\par
{\pntext\f2\'B7\tab}Adds more syntax files for vi (Issue 250).\par
{\pntext\f2\'B7\tab}$HOME/.bashrc is included last from /etc/profile, allowing .bashrc to override all settings in /etc/profile (Issue 255).\par
{\pntext\f2\'B7\tab}Completion is case-insensitive again (Issue 256).\par
{\pntext\f2\'B7\tab}The "start" command can handle arguments with spaces now (Issue 258).\par
{\pntext\f2\'B7\tab}For some Git commands (such as "git commit"), vi no longer "restores" the cursor position.\par
\pard\b\fs24\par
Changes since Git-1.6.2.2-preview20090408\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.3.\par
{\pntext\f2\'B7\tab}Thanks to Marius Storm-Olsen, Git has a substantially faster readdir() implementation now.\par
{\pntext\f2\'B7\tab}Marius Storm-Olsen also contributed a patch to include nedmalloc, again speeding up Git noticably.\par
{\pntext\f2\'B7\tab}Compiled with GCC 4.4.0\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Portable Git contains a README.portable.\par
{\pntext\f2\'B7\tab}Portable Git now actually includes the builtins.\par
{\pntext\f2\'B7\tab}Portable Git includes git-cmd.bat and git-bash.bat.\par
{\pntext\f2\'B7\tab}Portable Git is now shipped as a .7z; it still is a self-extracting archive if you rename it to .exe.\par
{\pntext\f2\'B7\tab}Git includes the Perl Encode module now.\par
{\pntext\f2\'B7\tab}Git now includes the filter-branch tool.\par
{\pntext\f2\'B7\tab}There is a workaround for a Windows 7 regression triggering a crash in the progress reporting (e.g. during a clone). This fixes issues 236 and 247.\par
{\pntext\f2\'B7\tab}gitk tries not to crash when it is closed while reading references (Issue 125, thanks Pat Thoyts).\par
{\pntext\f2\'B7\tab}In some setups, hard-linking is not as reliable as it should be, so we have a workaround which avoids hard links in some situations (Issues 222 and 229).\par
{\pntext\f2\'B7\tab}git-svn sets core.autocrlf to false now, hopefully shutting up most of the git-svn reports.\par
\pard\b\fs24\par
Changes since Git-1.6.2.1-preview20090322\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.2.2.\par
{\pntext\f2\'B7\tab}Upgraded Tcl/Tk to 8.5.5.\par
{\pntext\f2\'B7\tab}TortoiseMerge is supported by mergetool now.\par
{\pntext\f2\'B7\tab}Uses pthreads (faster garbage collection on multi-core machines).\par
{\pntext\f2\'B7\tab}The test suite passes!\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Renaming was made more robust (due to Explorer or some virus scanners, files could not be renamed at the first try, so we have to try multiple times).\par
{\pntext\f2\'B7\tab}Johannes Sixt made \ul lots\ulnone of changes to the test-suite to identify properly which tests should pass, and which ones cannot pass due to limitations of the platform.\par
{\pntext\f2\'B7\tab}Support PAGERs with spaces in their filename.\par
{\pntext\f2\'B7\tab}Quite a few changes were undone which we needed in the olden days of msysGit.\par
{\pntext\f2\'B7\tab}Fall back to / when HOME cannot be set to the real home directory due to locale issues (works around Issue 108 for the moment).\par
\pard\b\fs24\par
Changes since Git-1.6.2-preview20090308\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.2.1.\par
{\pntext\f2\'B7\tab}A portable application is shipped in addition to the installer (Issue 195).\par
{\pntext\f2\'B7\tab}Comes with a Windows-specific mmap() implementation (Issue 198).\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 ANSI control characters are no longer shown verbatim (Issue 124).\par
{\pntext\f2\'B7\tab}Temporary files are created respecting core.autocrlf (Issue 177).\par
{\pntext\f2\'B7\tab}The Git Bash prompt is colorful again (Issue 199).\par
{\pntext\f2\'B7\tab}Fixed crash when hardlinking during a clone failed (Issue 204).\par
{\pntext\f2\'B7\tab}An infinite loop was fixed in git-gui (Issue 205).\par
{\pntext\f2\'B7\tab}The ssh protocol is always used with plink.exe (Issue 209).\par
{\pntext\f2\'B7\tab}More vim files are shipped now, so that syntax highlighting works.\par
\pard\b\fs24\par
Changes since Git-1.6.1-preview20081225\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.2.\par
{\pntext\f2\'B7\tab}Comes with upgraded vim 7.2.\par
{\pntext\f2\'B7\tab}Compiled with GCC 4.3.3.\par
{\pntext\f2\'B7\tab}The user can choose the preferred CR/LF behavior in the installer now.\par
{\pntext\f2\'B7\tab}Peter Kodl contributed support for hardlinks on Windows.\par
{\pntext\f2\'B7\tab}The bash prompt shows information about the current repository.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 If supported by the file system, pack files can grow larger than 2gb.\par
{\pntext\f2\'B7\tab}Comes with updated msys-1.0.dll (should fix some Vista issues).\par
{\pntext\f2\'B7\tab}Assorted fixes to support the new libexec/git-core/ layout better.\par
{\pntext\f2\'B7\tab}Read-only files can be properly replaced now.\par
{\pntext\f2\'B7\tab}git-svn is included again (original caveats still apply).\par
{\pntext\f2\'B7\tab}Obsolete programs from previous installations are cleaned up.\par
\pard\li144\par
\pard\b\fs24 Changes since Git-1.6.0.2-preview20080923\par
\i\fs20\par
New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.1.\par
{\pntext\f2\'B7\tab}Avoid useless console windows.\par
{\pntext\f2\'B7\tab}Installer remembers how to handle PATH. \par
\pard\b\fs24\par
Changes since Git-1.6.0.2-preview20080921\par
\i\fs20\par
Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 ssh works again.\par
{\pntext\f2\'B7\tab}'git add -p' works again.\par
{\pntext\f2\'B7\tab}Various programs that aborted with 'Assertion failed: argv0_path' are fixed.\par
\pard\b\fs24\par
Changes since Git-1.5.6.1-preview20080701\par
\i\fs20\par
Removed Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 git svn is excluded from the end-user installer (see Known Issues).\par
\pard\b\fs24\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.6.0.2.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 No Windows-specific bugfixes.\par
\pard\b\fs24\par
Changes since Git-1.5.6-preview20080622\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.5.6.1.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Includes fixed msys-1.0.dll that supports Vista and Windows Server 2008 (Issue 122).\par
{\pntext\f2\'B7\tab}cmd wrappers do no longer switch off echo.\par
\pard\b\fs24\par
Changes since Git-1.5.5-preview20080413\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.5.6.\par
{\pntext\f2\'B7\tab}Installer supports configuring a user provided plink (PuTTY).\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Comes with tweaked msys-1.0.dll to solve some command line mangling issues.\par
{\pntext\f2\'B7\tab}cmd wrapper does no longer close the command window.\par
{\pntext\f2\'B7\tab}Programs in the system PATH, for example editors, can be launched from Git without specifying their full path.\par
{\pntext\f2\'B7\tab}"git stash apply stash@\{1\}" works.\par
{\pntext\f2\'B7\tab}Comes with basic ANSI control code emulation for the Windows console to avoid wrapping of pull/merge's diffstats.\par
{\pntext\f2\'B7\tab}Git correctly passes port numbers to PuTTY's plink \par
\pard\b\fs24\par
Changes since Git-1.5.4-preview20080202\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.5.5.\par
{\pntext\f2\'B7\tab}core.autocrlf is enabled (true) by default. This means git converts to Windows line endings (CRLF) during checkout and converts to Unix line endings (LF) during commit. This is the right choice for cross-platform projects. If the conversion is not reversible, git warns the user. The installer warns about the new default before the installation starts.\par
{\pntext\f2\'B7\tab}The user does no longer have to "accept" the GPL but only needs to press "continue".\par
{\pntext\f2\'B7\tab}Installer deletes shell scripts that have been replaced by builtins. Upgrading should be safer.\par
{\pntext\f2\'B7\tab}Supports "git svn". Note that the performance might be below your expectation.\par
\pard\li144\par
\pard\b\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Newer ssh fixes connection failures (issue 74).\par
{\pntext\f2\'B7\tab}Comes with MSys-1.0.11-20071204. This should solve some "fork: resource unavailable" issues.\par
{\pntext\f2\'B7\tab}All DLLs are rebased to avoid problems with "fork" on Vista.\par
\pard\b\fs24\par
Changes since Git-1.5.3.6-preview20071126\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Comes with official git 1.5.4.\par
{\pntext\f2\'B7\tab}Some commands that are not yet suppoted on Windows are no longer included (see Known Issues above).\par
{\pntext\f2\'B7\tab}Release notes are displayed in separate window.\b\fs24\par
\b0\fs20{\pntext\f2\'B7\tab}Includes qsort replacement to improve performance on Windows 2000.\par
\pard\b\fs24\par
\i\fs20 Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Fixes invalid error message that setup.ini cannot be deleted on uninstall.\par
{\pntext\f2\'B7\tab}Setup tries harder to finish the installation and reports more detailed errors.\par
{\pntext\f2\'B7\tab}Vim's syntax highlighting is suitable for dark background.\par
\pard\b\fs24\par
Changes since Git-1.5.3.5-preview20071114\par
\par
\i\fs20 New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Git is included in version 1.5.3.6.\b\i\par
\b0\i0{\pntext\f2\'B7\tab}Setup displays release notes.\par
\pard\b\fs24\par
\i\fs20 Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 pull/fetch/push in git-gui works. Note, there is no way for ssh to ask for a passphrase or for confirmation if you connect to an unknown host. So, you must have ssh set up to work without passphrase. Either you have a key without passphrase, or you started ssh-agent. You may also consider using PuTTY by pointing GIT_SSH to plink.exe and handle your ssh keys with Pageant. In this case you should include your login name in urls. You must also connect to an unknown host once from the command line and confirm the host key, before you can use it from git-gui.\par
\pard\b\fs24\par
Changes since Git-1.5.3-preview20071027\fs20\par
\i\par
New Features\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0\i0 Git is included in version 1.5.3.5.\par
{\pntext\f2\'B7\tab}Setup can be installed as normal user.\par
{\pntext\f2\'B7\tab}When installing as Administrator, all icons except the Quick Launch icon will be created for all users.\par
{\pntext\f2\'B7\tab}"git help user-manual" displays the user manual.\par
\pard\b\par
\i Bugfixes\b0\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432 Git Bash works on Windows XP 64.\par
\pard\par
\b\fs24 Changes since Git-1.5.3-preview20071019\par
\fs20\par
\i Bugfixes\i0\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-288\li432\b0 The templates for a new repository are found.\par
{\pntext\f2\'B7\tab}The global configuration /etc/gitconfig is found.\par
{\pntext\f2\'B7\tab}Git Gui localization works. It falls back to English if a translation has errors.\par
\pard\par
\b\fs24 Changes since WinGit-0.2-alpha\par
\b0\fs20 The history of the release notes stops here. Various new features and bugfixes are available since WinGit-0.2-alpha. Please check the git history of the msysgit project for details.\par
}

8
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/awk

@ -0,0 +1,8 @@
#!/bin/sh
# Copyright (C) 2002, Earnie Boyd
# mailto:earnie@users.sf.net
# This file is part of MSYS
# http://www.mingw.org/msys.shtml
# File: awk
gawk "$@"

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/basename.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bash.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bison.exe

Binary file not shown.

8
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bunzip2

@ -0,0 +1,8 @@
#! /bin/sh
# Copyright (C) 2002, Earnie Boyd
# mailto:earnie@users.sf.net
# This file is a part of Minimal SYStem
# http://www.mingw.org/msys.html
# File: bunzip2
bzip2 -d $@

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/bzip2.exe

Binary file not shown.

160
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/c_rehash

@ -0,0 +1,160 @@
#!/bin/perl.exe
# Perl c_rehash script, scan all files in a directory
# and add symbolic links to their hash values.
my $openssl;
my $dir = "/usr/ssl";
if(defined $ENV{OPENSSL}) {
$openssl = $ENV{OPENSSL};
} else {
$openssl = "openssl";
$ENV{OPENSSL} = $openssl;
}
$ENV{PATH} .= ":$dir/bin";
if(! -x $openssl) {
my $found = 0;
foreach (split /:/, $ENV{PATH}) {
if(-x "$_/$openssl") {
$found = 1;
last;
}
}
if($found == 0) {
print STDERR "c_rehash: rehashing skipped ('openssl' program not available)\n";
exit 0;
}
}
if(@ARGV) {
@dirlist = @ARGV;
} elsif($ENV{SSL_CERT_DIR}) {
@dirlist = split /:/, $ENV{SSL_CERT_DIR};
} else {
$dirlist[0] = "$dir/certs";
}
foreach (@dirlist) {
if(-d $_ and -w $_) {
hash_dir($_);
}
}
sub hash_dir {
my %hashlist;
print "Doing $_[0]\n";
chdir $_[0];
opendir(DIR, ".");
my @flist = readdir(DIR);
# Delete any existing symbolic links
foreach (grep {/^[\da-f]+\.r{0,1}\d+$/} @flist) {
if(-l $_) {
unlink $_;
}
}
closedir DIR;
FILE: foreach $fname (grep {/\.pem$/} @flist) {
# Check to see if certificates and/or CRLs present.
my ($cert, $crl) = check_file($fname);
if(!$cert && !$crl) {
print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n";
next;
}
link_hash_cert($fname) if($cert);
link_hash_crl($fname) if($crl);
}
}
sub check_file {
my ($is_cert, $is_crl) = (0,0);
my $fname = $_[0];
open IN, $fname;
while(<IN>) {
if(/^-----BEGIN (.*)-----/) {
my $hdr = $1;
if($hdr =~ /^(X509 |TRUSTED |)CERTIFICATE$/) {
$is_cert = 1;
last if($is_crl);
} elsif($hdr eq "X509 CRL") {
$is_crl = 1;
last if($is_cert);
}
}
}
close IN;
return ($is_cert, $is_crl);
}
# Link a certificate to its subject name hash value, each hash is of
# the form <hash>.<n> where n is an integer. If the hash value already exists
# then we need to up the value of n, unless its a duplicate in which
# case we skip the link. We check for duplicates by comparing the
# certificate fingerprints
sub link_hash_cert {
my $fname = $_[0];
$fname =~ s/'/'\\''/g;
my ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname'`;
chomp $hash;
chomp $fprint;
$fprint =~ s/^.*=//;
$fprint =~ tr/://d;
my $suffix = 0;
# Search for an unused hash filename
while(exists $hashlist{"$hash.$suffix"}) {
# Hash matches: if fingerprint matches its a duplicate cert
if($hashlist{"$hash.$suffix"} eq $fprint) {
print STDERR "WARNING: Skipping duplicate certificate $fname\n";
return;
}
$suffix++;
}
$hash .= ".$suffix";
print "$fname => $hash\n";
$symlink_exists=eval {symlink("",""); 1};
if ($symlink_exists) {
symlink $fname, $hash;
} else {
system ("cp", $fname, $hash);
}
$hashlist{$hash} = $fprint;
}
# Same as above except for a CRL. CRL links are of the form <hash>.r<n>
sub link_hash_crl {
my $fname = $_[0];
$fname =~ s/'/'\\''/g;
my ($hash, $fprint) = `"$openssl" crl -hash -fingerprint -noout -in '$fname'`;
chomp $hash;
chomp $fprint;
$fprint =~ s/^.*=//;
$fprint =~ tr/://d;
my $suffix = 0;
# Search for an unused hash filename
while(exists $hashlist{"$hash.r$suffix"}) {
# Hash matches: if fingerprint matches its a duplicate cert
if($hashlist{"$hash.r$suffix"} eq $fprint) {
print STDERR "WARNING: Skipping duplicate CRL $fname\n";
return;
}
$suffix++;
}
$hash .= ".r$suffix";
print "$fname => $hash\n";
$symlink_exists=eval {symlink("",""); 1};
if ($symlink_exists) {
symlink $fname, $hash;
} else {
system ("cp", $fname, $hash);
}
$hashlist{$hash} = $fprint;
}

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cat.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/chmod.exe

Binary file not shown.

4
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/clear

@ -0,0 +1,4 @@
#!/bin/sh
# Make the 'clear' command work, by invoking command.com/cmd.exe 'cls'
$COMSPEC //C cls

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cmp.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/connect.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cp.exe

Binary file not shown.

3536
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/curl-ca-bundle.crt

File diff suppressed because it is too large

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/curl.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/cut.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/date.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/diff.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/dirname.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/dos2unix.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/du.exe

Binary file not shown.

8
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/echo

@ -0,0 +1,8 @@
#!/bin/sh
# Copyright (C) 2002, Earnie Boyd
# mailto:earnie@users.sf.net
# This file is part of MSYS
# http://www.mingw.org/msys.shtml
# File: echo
echo "$@"

8
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/egrep

@ -0,0 +1,8 @@
#!/bin/sh
# Copyright (C) 2002, Earnie Boyd
# mailto:earnie@users.sf.net
# This file is part of MSYS
# http://www.mingw.org/msys.shtml
# File: egrep
grep -E "$@"

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/env.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/expr.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/false.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/find.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/flex.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/gawk.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/getcp.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/git-receive-pack.exe

Binary file not shown.

BIN
Templates/.metadata/.plugins/com.aptana.portablegit.win32/bin/git-upload-archive.exe

Binary file not shown.

155
Templates/.metadata/.plugins/com.aptana.portablegit.win32/git-bash.bat

@ -0,0 +1,155 @@
@echo off
rem Copyright (C): 2001, 2002 Earnie Boyd
rem mailto:earnie@users.sf.net
rem This file is part of Minimal SYStem
rem http://www.mingw.org/msys.shtml
rem
rem File: msys.bat
rem Revision: 2.0
rem Revision Date: April 17th, 2002
rem ember to set the "Start in:" field of the shortcut.
rem A value similar to C:\msys\1.0\bin is what the "Start in:" field needs
rem to represent.
rem this should let run MSYS shell on x64
if "%PROCESSOR_ARCHITECTURE%" == "AMD64" (
SET COMSPEC=%WINDIR%\SysWOW64\cmd.exe
)
rem ember value of GOTO: is used to know recursion has happened.
if "%1" == "GOTO:" goto %2
rem ember command.com only uses the first eight characters of the label.
set OS_VERSION="NT"
goto _WindowsNT
rem ember that we only execute here if we are in command.com.
:_Windows
set OS_VERSION="9x"
if "x%COMSPEC%" == "x" set COMSPEC=command.com
start %COMSPEC% /e:4096 /c %0 GOTO: _Resume %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto EOF
rem ember that we execute here if we recursed.
:_Resume
for %%F in (1 2 3) do shift
rem ember that we get here even in command.com.
:_WindowsNT
if "x%MSYSTEM%" == "x" set MSYSTEM=MINGW32
if "%1" == "MSYS" set MSYSTEM=MSYS
if NOT "x%DISPLAY%" == "x" set DISPLAY=
rem We here assume old behavior, to make sure that older platforms can still use
rem this batch file to start their MSys environment.
set BIN=""
if EXIST bin\nul set BIN=bin\
if EXIST %BIN%bash.exe goto startbash
if EXIST %BIN%rxvt.exe goto startrxvt
rem If we're not on win9x type OSs, lets try a little better at finding bash/rxvt
if "win%OS_VERSION%"=="win9x" goto failed
set BIN="%~dp0bin\"
if EXIST %BIN%bash.exe goto startbash
if EXIST %BIN%rxvt.exe goto startrxvt
:failed
echo Cannot find the rxvt.exe or bash.exe binary -- aborting.
pause
rem exit 1
rem we skip using exit 1 here, since it will close the console you were working on
rem which probably isn't what you wanted. If the bat file was run from a shortcut
rem the window will still close, like you would expect it to. Sorry, you cant test
rem for exit values anymore, but hey, you can just un-rem the line above then! :-)
goto EOF
rem If you don't want to use rxvt then rename the file rxvt.exe to something
rem else. Then bash.exe will be used instead.
:startrxvt
rem Setup the default colors for rxvt.
if "x%MSYSBGCOLOR%" == "x" set MSYSBGCOLOR=White
if "x%MSYSFGCOLOR%" == "x" set MSYSFGCOLOR=Black
if "x%MINGW32BGCOLOR%" == "x" set MINGW32BGCOLOR=LightYellow
if "x%MINGW32FGCOLOR%" == "x" set MINGW32FGCOLOR=Navy
if "%MSYSTEM%" == "MSYS" set BGCOLOR=%MSYSBGCOLOR%
if "%MSYSTEM%" == "MSYS" set FGCOLOR=%MSYSFGCOLOR%
if "%MSYSTEM%" == "MINGW32" set BGCOLOR=%MINGW32BGCOLOR%
if "%MSYSTEM%" == "MINGW32" set FGCOLOR=%MINGW32FGCOLOR%
start %COMSPEC% /c %BIN%rxvt -backspacekey  -sl 2500 -fg %FGCOLOR% -bg %BGCOLOR% -sr -fn Courier-12 -tn msys -geometry 80x25 -e /bin/bash --login -i
exit
:startbash
call %COMSPEC% /c %BIN%bash --login -i
:EOF
rem ChangeLog:
rem 2002.03.07 Earnie Boyd mailto:earnie@users.sf.net
rem * Move the @echo off to the top.
rem * Change the binmode setting to nobinmode.
rem * Remove the angle brackets around email address to workaround MS
rem buggy command processor.
rem
rem 2002.03.12 Earnie Boyd mailto:earnie@users.sf.net
rem * Add filter logic to find rxvt.exe
rem
rem 2002.03.13 Earnie Boyd mailto:earnie@users.sf.net
rem * Revert the nobinmode change.
rem
rem 2002.03.20 Earnie Boyd mailto:earnie@users.sf.net
rem * Add logic for stating bash.
rem
rem 2002.04.11 Earnie Boyd mailto;earnie@users.sf.net
rem * Add logic for setting MSYSTEM value based on parameter.
rem
rem 2002.04.15 Olivier Gautherot mailto:olivier_gautherot@mentorg.com
rem * Reduce number test conditions for finding an executable.
rem
rem 2002.04.15 Earnie Boyd mailto:earnie@users.sf.net
rem * Unset DISPLAY if set before starting shell.
rem
rem 2002.04.16 Earnie Boyd mailto:earnie@users.sf.net
rem * Remove use of DEFINED in conditional statments for variables for
rem command.com support.
rem * Add check for nonexistance of USERNAME variable for Win9x support.
rem
rem 2002.04.17 Earnie Boyd mailto:earnie@users.sf.net
rem * Add foreground and background color defaults based on MSYSTEM value.
rem
rem 2002.04.22 Earnie Boyd mailto:earnie@users.sf.net
rem * More Win 9x changes.
rem
rem 2002.05.04 Earnie Boyd mailto:earnie@users.sf.net
rem * Remove the SET of USERNAME and HOME.
rem
rem 2002.11.18 Earnie Boyd mailto:earnie@users.sf.net
rem * Add command.com detection and restart with a larger environment to
rem avoid errors on w9x.
rem Many thanks to Randy W. Sims mailto:RandyS@ThePierianSpring.org.
rem See Randy's response to "RE: [Mingw-msys] Installation on WindowsME"
rem from 11/06/2002 in the archives of mingw-msys@lists.sf.net.
rem
rem 2002.11.19 Paul Garceau mailto:pgarceau@attbi.com
rem * Fix a typo: Change COMPSPEC to COMSPEC.
rem
rem 2002.11.25 Earnie Boyd mailto:earnie@users.sf.net
rem * Remove the SET CYGWIN since it doesn't matter any longer.
rem
rem 2003.02.03 Earnie Boyd mailto:earnie@users.sf.net
rem * Win9x doesn't like ``EXISTS dir'' so change it to ``EXISTS dir\nul''.
rem Thanks to Nicolas Weber mailto:nicolasweber@gmx.de.
rem
rem 2003.03.06 Earnie Boyd mailto:earnie@users.sf.net
rem * Add -backspacekey switch to rxvt startup.
rem * Move RXVT color setup to startrxvt label
rem
rem 2004.01.30 Earnie Boyd mailto:earnie@users.sf.net
rem * Add -geometry parameter to work around an off by one issue with
rem the default values.
rem Thanks to Dave Schuyler mailto:parameter@users.sf.net

15
Templates/.metadata/.plugins/com.aptana.portablegit.win32/git-cmd.bat

@ -0,0 +1,15 @@
@rem Do not use "echo off" to not affect any child calls.
@setlocal
@rem Get the abolute path to the current directory, which is assumed to be the
@rem Git installation root.
@for /F "delims=" %%I in ("%~dp0") do @set git_install_root=%%~fI
@set PATH=%git_install_root%\bin;%git_install_root%\mingw\bin;%git_install_root%\cmd;%PATH%
@if not exist "%HOME%" @set HOME=%HOMEDRIVE%%HOMEPATH%
@if not exist "%HOME%" @set HOME=%USERPROFILE%
@set PLINK_PROTOCOL=ssh
@cd %HOME%
@start %COMSPEC%

7
Templates/.metadata/.plugins/com.aptana.syncing.core/defaultConnection.12

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<connection>
<connection>
<name>Default</name>
<source>file:/C:/Users/Naitlin</source>
</connection>
</connection>

8
Templates/.metadata/.plugins/com.aptana.syncing.core/sites.12

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<sites>
<site>
<name>YBDB &lt;-&gt; YBDB_Remote</name>
<source>workspace:/YBDB</source>
<destination>aptanavfs://83422b28-2181-4f36-b3b7-c239d76e66a2/</destination>
</site>
</sites>

2
Templates/.metadata/.plugins/com.aptana.webserver.core/webservers.10

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<servers/>

BIN
Templates/.metadata/.plugins/org.eclipse.core.resources/.snap

Binary file not shown.

25
Templates/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchHistory>
<launchGroup id="org.eclipse.ui.externaltools.launchGroup">
<mruHistory/>
<favorites/>
</launchGroup>
<launchGroup id="org.eclipse.debug.ui.launchGroup.profile">
<mruHistory/>
<favorites/>
</launchGroup>
<launchGroup id="org.eclipse.debug.ui.launchGroup.debug">
<mruHistory>
<launch memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;launchConfiguration local=&quot;true&quot; path=&quot;Firefox - Internal Server&quot;/&gt;&#13;&#10;"/>
<launch memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;launchConfiguration local=&quot;true&quot; path=&quot;Internet Explorer - Internal Server&quot;/&gt;&#13;&#10;"/>
</mruHistory>
<favorites/>
</launchGroup>
<launchGroup id="org.eclipse.debug.ui.launchGroup.run">
<mruHistory>
<launch memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;launchConfiguration local=&quot;true&quot; path=&quot;Firefox - Internal Server&quot;/&gt;&#13;&#10;"/>
<launch memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;launchConfiguration local=&quot;true&quot; path=&quot;Internet Explorer - Internal Server&quot;/&gt;&#13;&#10;"/>
</mruHistory>
<favorites/>
</launchGroup>
</launchHistory>

4
Templates/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<workingSetManager>
<workingSet aggregate="true" factoryID="org.eclipse.ui.internal.WorkingSetFactory" id="1377655030398_0" label="Window Working Set" name="Aggregate for window 1377655030395"/>
</workingSetManager>

1
Templates/.metadata/version.ini

@ -0,0 +1 @@
org.eclipse.core.runtime=1

26
Templates/YBDB Template.dwt.php

@ -0,0 +1,26 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>YBDB</title>
<!-- TemplateBeginEditable name="head" -->
<!-- Insert code here -->
<!-- TemplateEndEditable -->
<link href="../css_yb_standard.css" rel="stylesheet" type="text/css" />
</head>
<body class="yb_standard">
<table align="center">
<tr valign="top">
<td height="40" align="right"><a href="../shop_log.php">Current Shop</a> | <a href="../start_shop.php"> All Shops</a> | <a href="../contact_add_edit_select.php">Edit Contact Info</a> | <a href="../stats.php">Statistics</a> | <a href="../transaction_log.php">Transaction Log</a> | <a href="http://www.austinyellowbike.org/" target="_blank">YBP Home</a></td>
</tr>
<tr>
<td><!-- TemplateBeginEditable name="Body" -->Body<!-- TemplateEndEditable --></td>
</tr>
</table>
</body>
</html>

BIN
YBDB-July-24-2014.zip

Binary file not shown.

10
YBDB.php

File diff suppressed because one or more lines are too long

BIN
__MACOSX/._150_10.jpg

Binary file not shown.

BIN
__MACOSX/._MySQL_Structure.sql

Binary file not shown.

175
contact_add_edit.php

File diff suppressed because one or more lines are too long

13
contact_add_edit_confirmation.html

@ -0,0 +1,13 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<p>An confirmation message has been sent to your email address to join our newsletter list.</p>
<p>You will be redirected to the sign-in sheet in a moment. </p>
</body>
</html>

30
contact_add_edit_confirmation_frameset.html

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<script>
function getArgs() {
var args = new Object();
var query = location.search.substring(1);
var pairs = query.split("&");
for(var i = 0; i < pairs.length; i++) {
var pos = pairs[i].indexOf("=");
if (pos == -1) continue;
var argname = pairs[i].substring(0,pos);
var value = pairs[i].substring(pos+1);
args[argname] = unescape(value);
}
return args;
}
var args = getArgs();
var google_link = "http://groups.google.com/group/yellowbike-newsletter/boxsubscribe?email=" + args.email;
var frameset_def = '<frameset rows="200,600" cols="*" framespacing="0" frameborder="no" border="0">/n<frame src="contact_add_edit_confirmation.html" name="mainFrame" id="mainFrame" title="mainFrame" />/n<frame src="' + google_link + '" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" title="bottomFrame" />/n</frameset>';
document.write(frameset_def);
</script>
<noframes><body>
</body>
</noframes></html>

18
contact_add_edit_confirmation_framesetphp.html

@ -0,0 +1,18 @@
<?php
$email = $_GET['email'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<frameset rows="100,600" cols="*" framespacing="0" frameborder="no" border="0">
<frame src="contact_add_edit_confirmation.html" name="mainFrame" id="mainFrame" title="mainFrame" />
<frame src="http://groups.google.com/group/yellowbike-newsletter/boxsubscribe?email=<?php echo $email; ?>" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" title="bottomFrame" />
</frameset>
<noframes><body>
</body>
</noframes></html>

63
contact_add_edit_confirmation_iframe.php

File diff suppressed because one or more lines are too long

180
contact_add_edit_newsletter.php

File diff suppressed because one or more lines are too long

101
contact_add_edit_select.php

File diff suppressed because one or more lines are too long

81
css_yb_standard.css

@ -0,0 +1,81 @@
.yb_standard {
font-family: Arial, Helvetica, sans-serif;
color: #000000;
background-color: #FFFFFF;
}
.yb_standarditalics {
color: #000000;
background-color: #FFFFFF;
font-style: italic;
}
.yb_standardCENTER {
color: #000000;
text-align: center;
}
.yb_standardLEFT {
color: #000000;
text-align: left;
}
.yb_pagetitle {
color: #000000;
background-color: #FFFFFF;
font-weight: bold;
text-decoration: underline;
}
.yb_heading1 {
color: #000000;
background-color: #FFFFFF;
font-size: 24px;
font-weight: bold;
font-style: italic;
}
.yb_heading2 {
color: #000000;
background-color: #FFFFFF;
font-size: 16px;
font-weight: bold;
font-style: italic;
}
.yb_heading3 {
color: #000000;
font-weight: bold;
}
.yb_heading3red {
color: #FF0000;
background-color: #FFFFFF;
font-weight: bold;
}
.yb_standardCENTERbold {
text-align: center;
font-weight: bold;
}
.yb_standardCENTERred {
color: #FF0000;
background-color: #FFFFFF;
text-align: center;
}
.yb_standard_singlereturn {
color: #000000;
background-color: #FFFFFF;
display: none;
}
.yb_standard_small {
color: #000000;
background-color: #FFFFFF;
font-size: 10px;
}
.yb_standardRIGHT {
text-align: right;
}
.yb_standardRIGHTred {
color: #FF0000;
background-color: #FFFFFF;
text-align: right;
}
.yb_standardBold {
font-weight: bold;
}
.yb_standardred {
color: #FF0000;
background-color: #FFFFFF;
}

0
favicon.gif

0
favicon.ico

6
include_footer.html

@ -0,0 +1,6 @@
</td>
</tr>
</table>
</body>
</html>

33
include_header.html

@ -0,0 +1,33 @@
<script type="text/javascript">
var t;
window.onload=resetTimer;
document.onmousedown=resetTimer;
document.onkeypress=resetTimer;
function logout()
{
location.href='shop_welcome.php'
}
function resetTimer()
{
clearTimeout(t);
t=setTimeout(logout,1000*240) //Shop welcome after 240 seconds of inactivity
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>YBDB</title>
<link href="css_yb_standard.css" rel="stylesheet" type="text/css" />
</head>
<body class="yb_standard">
<table align="center" width="1000" border="0" cellpadding="1" cellspacing="0">
<tr valign="top">
<td height="40" align="right"><a href="shop_log.php">Current Shop</a> | <a href="start_shop.php"> All Shops</a> | <a href="contact_add_edit_select.php">Edit Contact Info</a> | <a href="stats.php">Statistics</a> | <a href="transaction_log.php">Transaction Log</a> | <a href="http://www.austinyellowbike.org/" target="_blank">YBP Home</a></td>
</tr>
<tr>
<td>

26
include_header_redirect.html

@ -0,0 +1,26 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>YBDB</title>
<?php
//Welcome page redirects
if ($shop_type == 'Open Shop')
redirect(180); //Always redirect in 2 min seconds on this page
if (($_GET['welcome'] == 'yes') AND ($shop_type == 'Open Shop'))
redirect(180); //Redirect in 2 min if there is an action
?>
<link href="css_yb_standard.css" rel="stylesheet" type="text/css" />
</head>
<body class="yb_standard">
<table align="center">
<tr valign="top">
<td height="40" align="right"><a href="shop_log.php">Current Shop</a> | <a href="start_shop.php"> All Shops</a> | <a href="contact_add_edit_select.php">Edit Contact Info</a> | <a href="stats.php">Statistics</a> | <a href="transaction_log.php">Transaction Log</a> | <a href="http://www.austinyellowbike.org/" target="_blank">YBP Home</a></td>
</tr>
<tr>
<td>

1
include_test.html

@ -0,0 +1 @@
<h1>Hello</h1>

17
include_timeout.html

@ -0,0 +1,17 @@
<!--//This function redirects the Log to the Welcome Page ================================================ -->
<script type="text/javascript">
var t;
window.onload=resetTimer;
document.onmousedown=resetTimer;
document.onkeypress=resetTimer;
function logout()
{
location.href='shop_welcome.php'
}
function resetTimer()
{
clearTimeout(t);
t=setTimeout(logout,1000*5) //logs out in 30 minutes
}
</script>

17
index.php

File diff suppressed because one or more lines are too long

247
individual_history_log.php

File diff suppressed because one or more lines are too long

269
individual_hours_log.php

File diff suppressed because one or more lines are too long

168
location_add_edit.php

File diff suppressed because one or more lines are too long

79
location_add_edit_select.php

File diff suppressed because one or more lines are too long

412
mysql.php

File diff suppressed because one or more lines are too long

0
robots.txt

228
shop_log.php

File diff suppressed because one or more lines are too long

225
shop_log.phpbak

@ -0,0 +1,225 @@
<?php
require_once('Connections/YBDB.php');
require_once('Connections/database_functions.php');
$page_edit_contact = PAGE_EDIT_CONTACT;
$page_individual_history_log = INDIVIDUAL_HISTORY_LOG;
mysql_select_db($database_YBDB, $YBDB);
//?shop_id=2
if($_GET['shop_id']>0){
$shop_id = $_GET['shop_id'];
} else {
$shop_id = current_shop_by_ip();
if (isset($shop_id)) {
//$shop_id stays the same
} else {
$gotopage = PAGE_START_SHOP . "?error=no_shop";
header(sprintf("Location: %s",$gotopage ));
}
}
if($_GET['visit_id']>0){
$visit_id = $_GET['visit_id'];
} else {
$visit_id =-1;}
if($_GET['new_user_id']>0){
$new_user_id = $_GET['new_user_id'];
} else {
$new_user_id = -1;
}
$query_Recordset1 = "SELECT shop_hours.shop_visit_id, shop_hours.contact_id, shop_hours.shop_user_role, shop_hours.project_id, shop_hours.time_in, shop_hours.time_out, TIME_FORMAT(TIMEDIFF(time_out, time_in),'%k:%i') as et, shop_hours.comment, CONCAT(contacts.last_name, ', ', contacts.first_name, ' ',contacts.middle_initial) AS full_name, contacts.first_name FROM shop_hours
LEFT JOIN shop_user_roles ON shop_hours.shop_user_role=shop_user_roles.shop_user_role_id
LEFT JOIN contacts ON shop_hours.contact_id=contacts.contact_id
WHERE shop_hours.shop_id = $shop_id ORDER BY hours_rank, time_in DESC;";
$Recordset1 = mysql_query($query_Recordset1, $YBDB) or die(mysql_error());
//$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
mysql_select_db($database_YBDB, $YBDB);
$query_Recordset2 = "SELECT * FROM shops WHERE shop_id = $shop_id;";
$Recordset2 = mysql_query($query_Recordset2, $YBDB) or die(mysql_error());
$row_Recordset2 = mysql_fetch_assoc($Recordset2);
$totalRows_Recordset2 = mysql_num_rows($Recordset2);
$shop_date = $row_Recordset2['date'];
$shop_location = $row_Recordset2['shop_location'];
$shop_type = $row_Recordset2['shop_type'];
mysql_select_db($database_YBDB, $YBDB);
$query_Recordset3 = "SELECT MIN(time_in) as shop_start FROM shop_hours WHERE shop_id = $shop_id;";
$Recordset3 = mysql_query($query_Recordset3, $YBDB) or die(mysql_error());
$row_Recordset3 = mysql_fetch_assoc($Recordset3);
$totalRows_Recordset3 = mysql_num_rows($Recordset3);
$shop_start_time = $row_Recordset3['shop_start'];
//Action on form update
//shop_log2.php?shop_id=2&amp;visit_id=4
$editFormAction = $_SERVER['PHP_SELF'] . "?shop_id=$shop_id&visit_id=$visit_id&welcome=yes";
$editFormAction_novisit = $_SERVER['PHP_SELF'] . "?shop_id=$shop_id&welcome=yes";
//if (isset($_SERVER['QUERY_STRING'])) {
// $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
//}
//Form Submit New Shop User
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form_new") && ($_POST["contact_id"] == "no_selection")){
//if no contact is selected
$error_message = '<span class="yb_heading3red">Please Select a User</span><br />';
} elseif ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form_new")) {
$insertSQL = sprintf("INSERT INTO shop_hours (contact_id, shop_id, shop_user_role, time_in) VALUES (%s, %s, %s, %s)",
GetSQLValueString($_POST['contact_id'], "int"),
GetSQLValueString($shop_id, "int"),
GetSQLValueString($_POST['user_role'], "text"),
GetSQLValueString($_POST['time_in'], "date"));
mysql_select_db($database_YBDB, $YBDB);
$Result1 = mysql_query($insertSQL, $YBDB) or die(mysql_error());
$insertGoTo = "shop_log2.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $editFormAction_novisit));
}
//$_POST["MM_insert"] is in the form: FormUpdate_$VisitID OR FormUpdate_142. This line seperates the visit id from the
//list($is_UpdateForm, $visit_id) = split('[_]', $_POST["MM_insert"]);
//Update Record isset($_POST["MM_update"])
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "FormUpdate")) {
$updateSQL = sprintf("UPDATE shop_hours SET time_out=%s WHERE shop_visit_id=%s",
GetSQLValueString($_POST['time_out'], "date"),
GetSQLValueString($_POST['shop_visit_id'], "int"));
//"2006-10-12 18:15:00"
mysql_select_db($database_YBDB, $YBDB);
$Result1 = mysql_query($updateSQL, $YBDB) or die(mysql_error());
$gotopage = "index.html";
header(sprintf("Location: %s",$editFormAction )); //$editFormAction
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "FormEdit")) {
$updateSQL = sprintf("UPDATE shop_hours SET contact_id=%s, shop_user_role=%s, project_id=%s, time_in=%s, time_out=%s, comment=%s WHERE shop_visit_id=%s",
GetSQLValueString($_POST['contact_id'], "int"),
GetSQLValueString($_POST['user_role'], "text"),
GetSQLValueString($_POST['project'], "text"),
GetSQLValueString($_POST['time_in'], "date"),
GetSQLValueString($_POST['time_out'], "date"),
GetSQLValueString($_POST['comment'], "text"),
GetSQLValueString($_POST['shop_visit_id'], "int"));
//"2006-10-12 18:15:00"
mysql_select_db($database_YBDB, $YBDB);
$Result1 = mysql_query($updateSQL, $YBDB) or die(mysql_error());
header(sprintf("Location: %s",$editFormAction_novisit )); //$editFormAction
}
?>
<?php include("include_header.html"); ?>
<table border="0" cellpadding="1" cellspacing="0">
<tr>
<td align="left" valign="bottom"><?php echo $error_message;?>
Shop ID: <span class="yb_standarditalics"><?php echo $shop_id;?></span>; &nbsp;Location: <span class="yb_standarditalics"><?php echo $shop_location;?></span>; &nbsp;Date: <span class="yb_standarditalics"><?php echo $shop_date;?></span>; &nbsp;Shop Type: <span class="yb_standarditalics"><?php echo $shop_type;?></span> </td>
</tr>
<tr>
<td>
<table border="1" cellpadding="1" cellspacing="0" bordercolor="#CCCCCC">
<tr bordercolor="#CCCCCC" bgcolor="#99CC33">
<td height="35"><strong>Shop User </strong></td>
<td height="35" bgcolor="#99CC33"><strong>Status</strong></td>
<td width="70" height="35"><strong>Time In </strong></td>
<td width="70" height="35"><strong>Time Out </strong></td>
<td height="35"><strong>Update Hours </strong></td>
<td height="35"><strong>Edit Data </strong></td>
</tr>
<form method="post" name="form_new" action="<?php echo $editFormAction; ?>">
<tr bordercolor="#CCCCCC">
<td height="40" valign="bottom"><strong>New User:</strong><br>
<span class="yb_standard_small">&nbsp;&nbsp;Not in the list: Create <a href="<?php echo $page_edit_contact; ?>?contact_id=new_contact&shop_id=<?php echo $shop_id?>">New User</a></span>
<?php list_contacts_select_user('contact_id', $new_user_id); ?></td>
<td valign="bottom"><strong>
<?php list_shop_user_roles('user_role','Personal'); ?>
</strong></td>
<td valign="bottom"><strong>
<?php if($totalRows_Recordset1 <> 0){
list_time($shop_start_time,'0000-00-00 00:00:00','time_in',-60,0,'none',16);
} else {
list_time("{$shop_date} 08:00:00",'0000-00-00 00:00:00','time_in',-15, 0, 'none',16);
}
?>
</strong></td>
<td valign="bottom"><img src="150_10.jpg" width="150" height="10" /></td>
<td valign="bottom"><input name="Submit" type="submit" value="Sign In" /></td>
<td valign="bottom">&nbsp;</td>
</tr>
<input type="hidden" name="MM_insert" value="form_new">
</form>
<tr valign="bottom" bordercolor="#CCCCCC" bgcolor="#99CC33">
<td height="25" colspan="6" bgcolor="#99CC33">&nbsp;&nbsp;&nbsp;&nbsp;Existing Shop Users:</td>
</tr>
<?php while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)) { //do {
if($visit_id == $row_Recordset1['shop_visit_id']) {?>
<form method="post" name="FormUpdate_<?php echo $row_Recordset1['shop_visit_id']; ?>" action="<?php echo $editFormAction; ?>">
<tr valign="bottom" bordercolor="#CCCCCC" bgcolor="#CCCC33">
<td>Edit Record: <br>
<?php list_contacts('contact_id', $row_Recordset1['contact_id']); ?></td>
<td><?php list_shop_user_roles('user_role', $row_Recordset1['shop_user_role']); ?></td>
<td><?php list_time($shop_start_time,'0000-00-00 00:00:00','time_in',-60,0,$row_Recordset1['time_in'],16); ?></td>
<td><?php
if ($row_Recordset1['time_out'] <> '0000-00-00 00:00:00'){
list_time($row_Recordset1['time_in'],$row_Recordset1['time_out'],'time_out',0,1,$row_Recordset1['time_out']);
} ?></td>
<td><input type="submit" name="Submit" value="Update Changes" /></td>
<td></td>
</tr>
<tr bordercolor="#CCCCCC" bgcolor="#CCCC33">
<td colspan="6"><table border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="125"><div align="right">Project:</div></td>
<td><?php list_projects('project', $row_Recordset1['project_id']); ?></td>
</tr>
<tr>
<td><div align="right">Comment:</div></td>
<td><input name="comment" type="text" value="<?php echo $row_Recordset1['comment']; ?>" size="90" /></td>
</tr>
<tr>
<td><div align="right">Delete:</div></td>
<td>Click to Delete this Shop User's Visit: <a href="<?php echo PAGE_SHOP_LOG_DELETE_VISIT . "?visit_id={$visit_id}&shop_id={$shop_id}";?>">Delete</a> </td>
</tr>
</table> </td>
</tr>
<input type="hidden" name="MM_insert" value="FormEdit">
<input type="hidden" name="shop_visit_id" value="<?php echo $row_Recordset1['shop_visit_id']; ?>">
</form>
<?php } else { //This section executes if it is not the visit_id selected NOT FOR EDIT ?>
<form method="post" name="FormUpdate_<?php echo $row_Recordset1['shop_visit_id']; ?>" action="<?php echo $editFormAction; ?>">
<tr bordercolor="#CCCCCC">
<td><a href="<?php echo "{$page_individual_history_log}?contact_id=" . $row_Recordset1['contact_id']; ?>"><?php echo $row_Recordset1['full_name']; ?></a></td>
<td><?php echo $row_Recordset1['shop_user_role']; ?></td>
<td><?php echo date_to_time($row_Recordset1['time_in']); ?></td>
<td><?php echo list_time($row_Recordset1['time_in'],$row_Recordset1['time_out'],'time_out',0,1,'none', 8,$row_Recordset1['et']); ?></td>
<td><?php sign_out($row_Recordset1['time_out'], $row_Recordset1['first_name']); ?></td>
<td><?php echo "<a href=\"{$_SERVER['PHP_SELF']}?shop_id={$shop_id}&visit_id={$row_Recordset1['shop_visit_id']}\">edit</a>"; ?></td>
</tr>
<input type="hidden" name="MM_insert" value="FormUpdate">
<input type="hidden" name="shop_visit_id" value="<?php echo $row_Recordset1['shop_visit_id']; ?>">
</form>
<?php } // if
} //while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); // while Recordset1 ?>
</table> </tr>
<tr>
<td height="40" valign="bottom"></td>
</tr>
</table>
<p>&nbsp;</p>
<?php include("include_footer.html"); ?>
<?php
mysql_free_result($Recordset1);
?>

227
shop_log2.php

File diff suppressed because one or more lines are too long

59
shop_log_delete_shopvisitid.php

File diff suppressed because one or more lines are too long

59
shop_log_delete_shopvisitid.phpbak

@ -0,0 +1,59 @@
<?php
require_once('Connections/YBDB.php');
require_once('Connections/database_functions.php');
if($_GET['visit_id']>0){
$visit_id = $_GET['visit_id'];
} else {
$visit_id =-1;
}
if($_GET['shop_id']>0){
$shop_id = $_GET['shop_id'];
} else {
$shop_id =-1;
}
if(isset($_GET['confirm_delete'])){
$confirm_delete = $_GET['confirm_delete'];
} else {
$confirm_delete ='no';
}
$page_delete_yes = $_SERVER['PHP_SELF'] . "?" . htmlentities($_SERVER['QUERY_STRING']) . "&confirm=yes";
if ($shop_id <> 90){
//returns to the shop_log?shop_id page
$page_delete_no = PAGE_SHOP_LOG . "?" . htmlentities($_SERVER['QUERY_STRING']);
} else {
//returns to the individual hours page
$page_delete_no = INDIVIDUAL_HOURS_LOG . "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((visit_id <> -1) && (shop_id <> -1) && ($_GET['confirm'] == 'yes')){
$insertSQL = "DELETE FROM shop_hours WHERE shop_visit_id = {$visit_id}";
mysql_select_db($database_YBDB, $YBDB);
$Result1 = mysql_query($insertSQL, $YBDB) or die(mysql_error());
$pagegoto = $page_delete_no;
header(sprintf("Location: %s", $pagegoto)); //browse back to shop
} // end if to delete
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Yellow Bike - Shop Login</title>
<link href="css_yb_standard.css" rel="stylesheet" type="text/css" />
</head>
<body class="yb_standard">
<p>Do you really want to delete this visit:</p>
<p>
<a href="<?php echo $page_delete_yes ?>">Yes</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<a href="<?php echo $page_delete_no ?>">No</a></p>
</body>
</html>

227
shop_log_wDeleteButton.php

File diff suppressed because one or more lines are too long

41
shop_welcome.php

File diff suppressed because one or more lines are too long

38
shop_welcome_long.php

@ -0,0 +1,38 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Welcome to YBP</title>
<link href="css_yb_standard.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.style8 {font-style: italic; font-size: 18px;}
-->
</style>
</head>
<body class="yb_standard">
<table border="0" align="center" cellpadding="1" cellspacing="0">
<tr>
<td><p><span class="yb_heading2">Welcome to the Austin Yellow Bike Project</span> - The Austin Yellow Bike Project (YBP) is a community supported ALL-VOLUNTEER 501(c)(3) non-profit organization dedicated to providing human-powered transportation for the people of Austin, running a community bike shop, and educating kids and adults. </p>
<p><span class="yb_heading3red">This is Your Community Bike Shop; it is free of charge and open to the public</span>, providing a space for people to work on bikes, and learn bike mechanics skills.</p>
<p>YBP is an All-Volunteer Organization that is supported through volunteer time, parts donations, and monetary donations. Those who use the shop should understand their responsibility to give back by volunteering time and/or cash to keep YBP a thriving community project. <span class="yb_heading3red">We recommend a $5 donation for personal use of the shop</span>, or volunteer time equivalent to the time used for personal projects. Cash donations are used to supply the shop with replacement tools, grease, oil, and other basic necessities, as well as going towards acquiring a permanent shop space for the project. </p>
<p><span class="yb_heading3red">We encourage shop users to volunteer their time</span><span class="yb_standard"> toward current projects or consider getting more involved by becoming a coordinator. As a coordinator you can help expand the hours that the shop is open each week. Every thing done at Yellow Bike from sorting parts to running the shop, answering emails, organizing events, creating media releases, and planning for the future of Yellow Bike is done entirely by volunteers. Everyone is welcome to get as involved as they like in the positive work and vision of The Yellow Bike Project. Coordinators can answer any questions about volunteering at Yellow Bike and share their personal experiences.</span></p>
<p>As this is a Community Space and others will use it after you, <span class="yb_heading3red">please make sure that your workspace is clean</span> and all tools used are back in their proper place before leaving. </p>
<p>So, find a Coordinator and ask them any questions, have a look around, and enjoy the shop.</p>
<table width="400" height="40" border="1" align="center" cellpadding="1" cellspacing="0">
<tr align="center">
<td><span class="style8"><a href="shop_log.php">Sign In</a> to Get Started<br />
</span><span class="yb_standardCENTERred">talk to a coordinator</span></td>
<td><span class="style8"><a href="shop_log.php">Sign Out</a> Before Leaving<br />
</span><span class="yb_standardCENTERred">workspace cleaned up?</span></td>
</tr>
</table>
<p><span class="yb_pagetitle">Learn More</span> <br />
<span class="yb_heading3red">Giving Back:</span> <a href="http://www.austinyellowbike.org/yb_participate.htm" target="_blank">Volunteering at YBP</a> | <a href="http://www.austinyellowbike.org/yb_services.htm" target="_blank">Volunteer Shops</a> | <a href="http://www.austinyellowbike.org/yb_projects.htm" target="_blank">Projects</a> | <a href="http://www.austinyellowbike.org/yb_bikes.htm" target="_blank">Earn-A-Bike</a> | <a href="http://www.austinyellowbike.org/yb_donate.htm" target="_blank">Donating Online</a><br />
<span class="yb_heading3red">YBP Info:</span> <a href="http://www.austinyellowbike.org/yb_about_ybp.htm" target="_blank">Yellow Bike Home Page</a> | <a href="http://www.austinyellowbike.org/yb_about_ybp.htm" target="_blank">About YBP</a> | <a href="http://www.austinyellowbike.org/yb_calendar.html" target="_blank">Calendar</a> | <a href="http://www.austinyellowbike.org/yb_newsletters.htm" target="_blank">Monthly Newsletter</a> | <a href="http://www.austinyellowbike.org/yb_services.htm" target="_blank">Community Bike Shop Services</a> </p>
</td>
</tr>
</table>
</body>
</html>

197
start_shop.php

File diff suppressed because one or more lines are too long

25
stats.php

File diff suppressed because one or more lines are too long

110
stats_MechanicOperationMetrics_byMonth.php

File diff suppressed because one or more lines are too long

110
stats_MechanicOperationMetrics_byWeek.php

File diff suppressed because one or more lines are too long

109
stats_VolVsMechMetrics_byMonth.php

File diff suppressed because one or more lines are too long

109
stats_VolVsMechMetrics_byWeek.php

File diff suppressed because one or more lines are too long

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save